NAME
Net::Packet::ARP - ARP layer 3 object
SYNOPSIS
use Net::Packet::ARP;
# Build layer to inject to network
my $arpRequest = Net::Packet::ARP->new(
dstIp => "192.168.0.1",
);
# Decode from network to create the object
# Usually, you do not use this, it is used by Net::Packet::Frame
my $arp = Net::Packet::ARP->new(raw => $rawFromNetwork);
print $arpRequest->print, "\n";
DESCRIPTION
This modules implements the encoding and decoding of the ARP layer.
RFC: ftp://ftp.rfc-editor.org/in-notes/rfc826.txt
See also Net::Packet::Layer and Net::Packet::Layer3 for other attributes and methods.
ATTRIBUTES
- hType
- pType
-
Hardware and protocol address types.
- hSize
- pSize
-
Hardware and protocol address sizes in bytes.
- opCode
-
The operation code number to perform.
- src
- dst
-
Source and destination hardware addresses.
- srcIp
- dstIp
-
Source and destination IP addresses.
METHODS
- new
-
Object constructor. You can pass attributes that will overwrite default ones. Default values:
hType: NP_ARP_HTYPE_ETH
pType: NP_ARP_PTYPE_IPv4
hSize: NP_ARP_HSIZE_ETH
pSize: NP_ARP_PSIZE_IPv4
opCode: NP_ARP_OPCODE_REQUEST
src: $Env->mac
dst: NP_ARP_ADDR_BROADCAST
srcIp: $Env->ip
dstIp: 127.0.0.1
- pack
-
Packs all attributes into a raw format, in order to inject to network. Returns 1 on success, undef otherwise.
- unpack
-
Unpacks raw data from network and stores attributes into the object. Returns 1 on success, undef otherwise.
- recv
-
Will search for a matching replies in framesSorted or frames from a Net::Packet::Dump object.
- isRequest
- isReply
-
Returns 1 if the opCode attribute is of specified type.
CONSTANTS
Load them: use Net::Packet::Consts qw(:arp);
- NP_ARP_HTYPE_ETH
- NP_ARP_PTYPE_IPv4
-
Hardware and protocol address types.
- NP_ARP_HSIZE_ETH
- NP_ARP_PSIZE_IPv4
-
Hardware and protocol address sizes.
- NP_ARP_OPCODE_REQUEST
- NP_ARP_OPCODE_REPLY
-
Operation code numbers.
- NP_ARP_ADDR_BROADCAST
-
Broadcast address for src or dst attributes.
AUTHOR
Patrice <GomoR> Auffret
COPYRIGHT AND LICENSE
Copyright (c) 2004-2005, Patrice <GomoR> Auffret
You may distribute this module under the terms of the Artistic license. See Copying file in the source distribution archive.
RELATED MODULES
NetPacket, Net::RawIP, Net::RawSock
1 POD Error
The following errors were encountered while parsing the POD:
- Around line 161:
Non-ASCII character seen before =encoding in '# Build'. Assuming CP1252