Net::Packet::ETH - Ethernet/802.3 layer 2 object
use Net::Packet::ETH; use Net::Packet::Consts qw(:eth); # Build layer to inject to network my $eth1 = Net::Packet::ETH->new( type => NP_ETH_TYPE_IPv6, dst => "00:11:22:33:44:55", ); # Decode from network to create the object # Usually, you do not use this, it is used by Net::Packet::Frame my $eth2 = Net::Packet::ETH->new(raw => $rawFromNetwork); print $eth1->print, "\n";
This modules implements the encoding and decoding of the Ethernet/802.3 layer.
RFC: ftp://ftp.rfc-editor.org/in-notes/rfc894.txt
See also Net::Packet::Layer and Net::Packet::Layer2 for other attributes and methods.
Source and destination MAC addresses, in classical format (00:11:22:33:44:55).
The encapsulated layer type (IPv4, IPv6 ...) for Ethernet. Values for Ethernet types are greater than 1500. If it is less than 1500, you should use the length attribute (which is an alias of this one), because the layer is considered a 802.3 one. See http://www.iana.org/assignments/ethernet-numbers .
The length of the payload when this layer is a 802.3 one. This is the same attribute as type, but you cannot use it when calling new (you can only use it as an accessor after that).
Object constructor. You can pass attributes that will overwrite default ones. Default values:
src: $Net::Packet::Env->mac (see Net::Packet::Env)
dst: NP_ETH_ADDR_BROADCAST
type/length: NP_ETH_TYPE_IPv4
Packs all attributes into a raw format, in order to inject to network. Returns 1 on success, undef otherwise.
Unpacks raw data from network and stores attributes into the object. Returns 1 on success, undef otherwise.
Helper methods. Return true is the encapsulated upper layer is of specified type, false otherwise.
Load them: use Net::Packet::Consts qw(:eth);
Ethernet header length in bytes.
Ethernet broadcast address.
Various supported Ethernet types.
Patrice <GomoR> Auffret
Copyright (c) 2004-2006, Patrice <GomoR> Auffret
You may distribute this module under the terms of the Artistic license. See LICENSE.Artistic file in the source distribution archive.
NetPacket, Net::RawIP, Net::RawSock
1 POD Error
The following errors were encountered while parsing the POD:
Non-ASCII character seen before =encoding in '# Build'. Assuming CP1252
To install Net::Packet, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Net::Packet
CPAN shell
perl -MCPAN -e shell install Net::Packet
For more information on module installation, please visit the detailed CPAN module installation guide.