Net::Frame::Layer::IPv6::Routing - Internet Protocol v6 Routing Extension Header layer object
Contents
Attributes
nextHeader
Protocol number of the next header after the Routing header.
hdrExtLen
The length of the Routing header in 8-byte units, not including the first 8 bytes of the header. For
a Routing Type of 0, this value is thus two times the number addresses embedded in the header.
routingType
This field allows multiple routing types to be defined; at present, the only value used is 0.
segmentsLeft
Specifies the number of explicitly-named nodes remaining in the route until the destination.
reserved
Not used; set to zeroes.
addresses
A set of IPv6 addresses that specify the route to be used.
The following are inherited attributes. See Net::Frame::Layer for more information.
rawpayloadnextLayerConstants
No constants here.
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.
perl v5.36.0 2022-11-19 Net::Frame::Layer::IPv6::Routing(3pm)
Description
This modules implements the encoding and decoding of the IPv6 Routing Extension Header layer.
RFC: ftp://ftp.rfc-editor.org/in-notes/rfc2460.txt
See also Net::Frame::Layer for other attributes and methods.
Methods
newnew (hash)
Object constructor. You can pass attributes that will overwrite default ones. See SYNOPSIS for
default values.
computeLengths
Computes hdrExtLen and segmentsLeft based on number of addresses.
computeSegmentsLeft (0 | 1)
Disable (0) or enable (1) automatic computing of segmentsLeft by the computeLengths method. Default
is enabled.
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.
layercomputeLengthscomputeChecksumspackunpackencapsulategetLengthgetPayloadLengthprintdumpName
Net::Frame::Layer::IPv6::Routing - Internet Protocol v6 Routing Extension Header layer object
See Also
Net::Frame::Layer
Synopsis
use Net::Frame::Simple;
use Net::Frame::Layer::IPv6::Routing;
my $icmp = Net::Frame::Layer::IPv6::Routing->new(
nextHeader => NF_IPv6_PROTOCOL_TCP
hdrExtLen => 2
routingType => 0,
segmentsLeft => 1,
reserved => 0,
addresses => ['::1']
);
#
# Read a raw layer
#
my $layer = Net::Frame::Layer::IPv6::Routing->new(raw => $raw);
print $layer->print."\n";
print 'PAYLOAD: '.unpack('H*', $layer->payload)."\n"
if $layer->payload;
