Net::Packet::IPv6.3pm

Langue: en

Version: 2006-12-16 (mandriva - 01/05/08)

Section: 3 (Bibliothèques de fonctions)

NAME

Net::Packet::IPv6 - Internet Protocol v6 layer 3 object

SYNOPSIS

    use Net::Packet::Consts qw(:ipv6);
    require Net::Packet::IPv6;
 
    # Build a layer
    my $layer = Net::Packet::IPv6->new(
       dst => $hostname6,
    );
    $layer->pack;
 
    print 'RAW: '.unpack('H*', $layer->raw)."\n";
 
    # Read a raw layer
    my $layer = Net::Packet::IPv6->new(raw = $raw);
 
    print $layer->print."\n";
    print 'PAYLOAD: '.unpack('H*', $layer->payload)."\n"
       if $layer->payload;
 
 

DESCRIPTION

This modules implements the encoding and decoding of the IPv6 layer.

RFC: ftp://ftp.rfc-editor.org/in-notes/rfc2460.txt

See also Net::Packet::Layer and Net::Packet::Layer3 for other attributes and methods.

ATTRIBUTES

version
Version of Internet Protocol header.
trafficClass
Traffic class field. Was Type of Service in IPv4.
flowLabel
Flow label class field. Was IP ID in IPv4.
nextHeader
The type of next header. Was protocol in IPv4.
protocol
Is an alias for nextHeader
payloadLength
Length in bytes of encapsulated layers (that is, layer 4 + layer 7).
hopLimit
Was TTL field in IPv4.
src
dst
Source and destination addresses.

METHODS

new
Object constructor. You can pass attributes that will overwrite default ones. Default values:

version: 6

trafficClass: 0

flowLabel: 0

nextHeader: NP_IPv6_PROTOCOL_TCP

hopLimit: 0xff

src: $Env->ip6

dst: '::1'

getPayloadLength
Returns the length in bytes of encapsulated layers (that is layer 4 + layer 7).
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.

CONSTANTS

Load them: use Net::Packet::Consts qw(:ipv6);
NP_IPv6_PROTOCOL_TCP
NP_IPv6_PROTOCOL_UDP
Constants for nextHeader attribute.

AUTHOR

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