NET :: LIBDNET

Binding voor DUG-lied van liedjes lied
Download nu

NET :: LIBDNET Rangschikking & Samenvatting

Advertentie

  • Rating:
  • Vergunning:
  • Perl Artistic License
  • Prijs:
  • FREE
  • Naam uitgever:
  • Patrice Auffret
  • Uitgever website:
  • http://search.cpan.org/~gomor/

NET :: LIBDNET Tags


NET :: LIBDNET Beschrijving

Bindend voor libdnet van Dug Song Net :: Libdnet is een Perl module die een vereenvoudigd, draagbare interface om een aantal low-level networking routines, inclusief netwerkadres manipulatie, kernel ARP-cache en route tafel lookup en manipulatie, network firewalling, netwerkinterface lookup en manipulatie, het netwerkverkeer onderscheppen via tunnelinterfaces en ruwe IP-pakket en Ethernetframe transmissie. Het is bedoeld om de functionaliteit van libpcap.All het origineel en verouderde functies geven undef te vullen en af te drukken een waarschuwing aan de standaard fout wanneer een probleem optreedt. De verouderde functies zijn: addr_cmp, addr_bcast, addr_net, arp_add, arp_delete, arp_get, intf_get, intf_get_src, intf_get_dst, route_add, route_delete, route_get.These osbsolete functies zal blijven werken, achterwaartse compatibiliteit te behouden, maar mag niet meer gebruikt worden. De nieuwe API's zou de voorkeur. Er zijn twee nieuwe API, een is de low-level on, matching libdnet functies, en de andere is een API hoog niveau, matching een Perl object georiënteerd programmeren. Dit laatste een zeer prefered.Net::Libdnet module implementeert de low-level API. De hoog-niveau API is toegankelijk via de volgende modules: Net :: Libdnet :: INTF, Libdnet Net :: :: Route, Net :: Libdnet :: Fw, Net :: Libdnet :: Arp, Net :: Libdnet: : Eth, net :: Libdnet :: Ip en net :: Libdnet :: Tun.SYNOPSIS # # Dit zal gewoon importeren alle functies en constanten # gebruiken net :: Libdnet; # # Netwerk-interface manipulatie # # !!! ADVIES: u moet gebruiken Net :: Libdnet :: IntF plaats # gebruik Net :: Libdnet qw (: INTF); mijn $ INTF = dnet_intf_open (); mijn $ eth = dnet_intf_get ($ INTF, {intf_name => 'eth0'}); afdrukken "IP:" $ eth -> {intf_addr} "\ n";.. afdrukken "MAC:" $ eth -> {intf_link_addr} "\ n";.. mijn $ dst = dnet_intf_get_dst ($ INTF, '192.168.0.10'); afdrukken "Naam:" $ dst -> {intf_name} "\ n";.. afdrukken "IP:" $ dst -> {intf_addr} "\ n";.. afdrukken "MAC:" $ dst -> {intf_link_addr} "\ n";.. mijn $ src = dnet_intf_get_src ($ INTF, '192.168.0.1'); afdrukken "Naam:" $ src -> {intf_name} "\ n";.. afdrukken "IP:" $ src -> {intf_addr} "\ n";.. afdrukken "MAC:" $ src -> {intf_link_addr} "\ n";.. dnet_intf_close ($ INTF); # # Arp cache manipulatie # # !!! ADVIES: u moet gebruiken Net :: Libdnet :: Arp in plaats # gebruik Net :: Libdnet qw (: ARP); mijn $ arp = dnet_arp_open (); mijn $ entry = dnet_arp_get ($ arp, {arp_pa => '10 .0.0.1' }); afdrukken "MAC:" $ ingang -> {arp_ha} "\ n";.. dnet_arp_add ($ ARP {arp_ha => '00: 11: 22: 33: 44: 55' , arp_pa => '10 .0.0.10' }); dnet_arp_delete ($ ARP {arp_ha => '00: 11: 22: 33: 44: 55' , arp_pa => '10 .0.0.10' }); dnet_arp_close ($ ARP); # # Route tafel manipulatie # # !!! ADVIES: u moet gebruiken Net :: Libdnet :: Route plaats # gebruik Net :: Libdnet qw (: route); mijn $ route = dnet_route_open (); dnet_route_add ($ route, {route_gw => '10 .0.0.1' , route_dst => '192.168.0.1'}); dnet_route_delete ($ route, {route_gw => '10 .0.0.1' , route_dst => '192.168.0.1'}); mijn $ get = dnet_route_get ($ route, {route_dst => '192.168.0.10'}); afdrukken "GW:" $ krijgen -> {route_gw} "\ n";.. dnet_route_close ($ route); # # Firewallregels manipulatie # # !!! ADVIES: u moet gebruiken Net :: Libdnet :: Fw plaats # gebruik Net :: Libdnet qw (: fw: consts); mijn $ fw = dnet_fw_open (); # Dit is vrij complex. Deze regel blokkeert TCP als input voor 10.0.0.1 # Je moet echt gebruik maken van Net :: Libdnet :: Fw plaats. dnet_fw_add ($ fw, {fw_op => FW_DIR_IN, fw_proto => 6, fw_dst => '10 .0.0.1' }); dnet_fw_delete ($ fw, {fw_op => FW_DIR_IN, fw_proto => 6, fw_dst => '10 .0.0.1' }); dnet_fw_close ($ fw); # # Send op IP niveau # # !!! ADVIES: u moet gebruiken Net :: Libdnet :: Ip plaats # gebruik Net :: Libdnet qw (: ip); mijn $ ip = dnet_ip_open (); mijn $ ruwe = "\ x47 \ x47 \ x47 \ x47"; dnet_ip_send ($ ip, $ rauw, lengte ($ raw)); dnet_ip_close ($ ip); # # Sturen ten Ethernet-niveau # # !!! ADVIES: u moet gebruiken Net :: Libdnet :: Eth plaats # gebruik Net :: Libdnet qw (: eth); mijn $ eth = dnet_eth_open ( 'eth0'); dnet_eth_send ($ eth, $ rauw, lengte ($ raw)); dnet_eth_close ($ eth); # # Traffic onderschepping # # !!! ADVIES: u moet gebruiken Net :: Libdnet :: Tun plaats # gebruik Net :: Libdnet qw (: tun); mijn $ tun = dnet_tun_open ('10 .0.0.10' , '192.168.0.10', 1500); mijn $ buf = dnet_tun_recv ($ tun, 1500); # Do dingen met $ buf dnet_tun_send ($ tun, $ buf, lengte ($ buf)); dnet_tun_close ($ tun); # # Hash refs in dnet formaat # mijn $ INTF = {intf_alias_num => 1, intf_mtu => 1500 intf_len => 112, intf_type => 6, intf_name => 'eth0', intf_dst_addr => undef, intf_link_addr => '00 : 11: 22: 33: 44: 55' , intf_flags => 49, intf_addr => '10 .100.0.10 / 24' , intf_alias_addrs => }; mijn $ arp = {arp_pa => '10 .100.0.1' , arp_ha => '11: 22: 33: 44: 55: 66' }; mijn $ route = {route_gw => '10 .100.0.1' , route_dst => '0.0.0.0/0'}; mijn $ fw = {fw_dir => 2, fw_sport => , fw_dport => , fw_src => '0.0.0.0/0', fw_dst => '0.0.0.0/0', fw_proto => 6, fw_device => 'eth0', fw_op => 2}; Vereisten: · Perl


NET :: LIBDNET Gerelateerde software