ARP(3pm) | User Contributed Perl Documentation | ARP(3pm) |
ARP - Perl extension for creating ARP packets
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("enp3s0f1");
print "$mac\n";
$mac = Net::ARP::arp_lookup($dev,"192.168.1.1");
print "192.168.1.1 has got mac $mac\n";
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.
This module can be used to create and send ARP packets and to get the mac address of an ethernet interface or ip address.
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.
$mac = Net::ARP::get_mac("enp3s0f1"); This gets the MAC address of the enp3s0f1 interface and stores it in the variable $mac. The return value is "unknown" if the mac cannot be looked up.
$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.
man -a arp
Bastian Ballmann [ balle@codekid.net ] http://www.codekid.net
Copyright (C) 2004-2022 by Bastian Ballmann
License: GPLv2
2024-03-31 | perl v5.38.2 |