sourCEntral - mobile manpages

pdf

ARP

NAME

ARP − Perl extension for creating ARP packets

SYNOPSIS

  use Net::ARP;
  Net::ARP::send_packet('lo',                 # Device
                        '127.0.0.1',          # Source IP
                        '127.0.0.1',          # Destination IP
                        'aa:bb:cc:aa:bb:cc',  # Source MAC
                        'aa:bb:cc:aa:bb:cc',  # Destinaton MAC
                        'reply');             # ARP operation

$mac = Net::ARP::get_mac("eth0");

print "$mac\n";

$mac = Net::ARP::arp_lookup($dev,"192.168.1.1");

print "192.168.1.1 has got mac $mac\n";

IMPORTANT
Version 1.0 will break with the API of PRE−1 .0 versions, because the return value of arp_lookup() and get_mac() will no longer be passed as parameter, but returned! I hope this decision is ok as long as we get a cleaner and more perlish API .

DESCRIPTION
This module can be used to create and send ARP packets and to get the mac address of an ethernet interface or ip address.
send_packet()

  Net::ARP::send_packet('lo',                 # Device
                        '127.0.0.1',          # Source IP
                        '127.0.0.1',          # Destination IP
                        'aa:bb:cc:aa:bb:cc',  # Source MAC
                        'aa:bb:cc:aa:bb:cc',  # Destinaton MAC
                        'reply');             # ARP operation
  I think this is self documentating.
  ARP operation can be one of the following values:
  request, reply, revrequest, revreply, invrequest, invreply.
  The default ARP operation is reply.

get_mac()

  $mac = Net::ARP::get_mac("eth0");
  This gets the MAC address of the eth0 interface and stores
  it in the variable $mac. The return value is "unknown" if
  the mac cannot be looked up.

arp_lookup()

  $mac = Net::ARP::arp_lookup($dev,"192.168.1.1");
  This looks up the MAC address for the ip address 192.168.1.1
  and stores it in the variable $mac. The return value is
  "unknown" if the mac cannot be looked up.

SEE ALSO

 man −a arp

AUTHOR

 Bastian Ballmann [ Balle AT chaostal DOT de ]
 http://www.datenterrorist.de

COPYRIGHT AND LICENSE

Copyright (C) 2004−2007 by Bastian Ballmann

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.8.1 or, at your option, any later version of Perl 5 you may have available.

pdf