Net::Frame::Layer::IPv6::Fragment(3)

NAME
Net::Frame::Layer::IPv6::Fragment - Internet Protocol v6 Fragment Extension Header layer object

SYNOPSIS
   use Net::Frame::Simple;
   use Net::Frame::Layer::IPv6::Fragment;

   my $icmp = Net::Frame::Layer::IPv6::Fragment->new(
      nextHeader     => NF_IPv6_PROTOCOL_TCP,
      reserved       => 0,
      fragmentOffset => 0,
      res            => 0,
      mFlag          => 0,
      identification => 0
   );

   #
   # Read a raw layer
   #

   my $layer = Net::Frame::Layer::IPv6::Fragment->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 Fragment Extension Header layer.

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

See also Net::Frame::Layer for other attributes and methods.

ATTRIBUTES

nextHeader
    Protocol number of the next header after the Fragment header.

reserved
    Not used; set to zeroes.

fragmentOffset
    Specifies the offset, or position, in the overall message where the data in this fragment goes. It is specified in units of 8 bytes (64 bits) and used in a manner very similar to the field of the same name in the IPv4 header.

res Not used; set to zeroes.

mFlag
    Same as the flag of the same name in the IPv4 header - when set to 0, indicates the last fragment in a message; when set to 1, indicates that more fragments are yet to come in the fragmented message.

identification
    Same as the field of the same name in the IPv4 header, but expanded to 32 bits. It contains a specific value that is common to each of the fragments belonging to a particular message, to ensure that pieces from different fragmented messages are not mixed together.

The following are inherited attributes. See Net::Frame::Layer for more information.

raw
payload
nextLayer

METHODS

new
new (hash)
    Object constructor. You can pass attributes that will overwrite default ones. See SYNOPSIS for default values.

The following are inherited methods. Some of them may be overridden in this layer, and some others may not be meaningful in this layer. See Net::Frame::Layer for more information.

layer
computeLengths
computeChecksums
pack
unpack
encapsulate
getLength
getPayloadLength
print
dump

CONSTANTS
No constants here.

SEE ALSO
Net::Frame::Layer

AUTHOR
Michael Vincent

COPYRIGHT AND LICENSE
Copyright (c) 2012-2017, Michael Vincent

You may distribute this module under the terms of the Artistic license. See LICENSE.Artistic file in the source distribution archive.