HHO_MSB11_IN - Options Processing, Hop-by-Hop Options Header - Intermediate Node (Most Significant Bits 11, unicast destination)
Router
HHO_MSB11_IN.seq [-tooloption ...] -pkt HHO_MSB11_IN.def
-tooloption : v6eval tool option
None
Verify that a router properly processes both know and unknown options, and acts in accordance with the highest order two bits of the option.
TN1 RUT TN2
(Link0) (Link1)
| | |
|-------------------------->| |
| Echo Request | |
| | |
| | (no forwarding) |
| | |
|<--------------------------| |
| ICMP Error | |
| | |
v v v
1. TN1 transmits an Echo Request to TN2 with a first hop through the RUT,
the Echo Request that has a Hop-by-Hop Options header with an unknown Option Type of 199.
2. Observe the packets transmitted by the RUT.
Echo Request Data is:
IPv6 Header
Version = 6
Traffic Class = 0
FlowLabel = 0
PayloadLength = 16
NextHeader = 0 (Hop-by-Hop Options Header)
SourceAddress = TN1 Global Address (Link0)
DestinationAddress = TN2 Global Address (Link1)
Hop-by-Hop Options Header
NextHeader = 58 (ICMPv6)
HeaderExtLength = 0
OptionType = 0xc7 (Unrecognized Option, Type 11)
OptDataLength = 4
data = {0, 0, 0, 0}
ICMP Echo Request
Type = 128 (Echo Request)
Code = 0
Checksum = (auto)
Identifier = 0xffff
SequenceNumber = 1
PayloadData = {1, 2, 3, 4, 5, 6, 7, 8}
PASS: The RUT must send an ICMPv6 Parameter Problem message to TN1.
The Code field must be 2 (unrecognized IPv6 option encountered).
The Pointer field must be 0x2A (offset of the option field of Hop-by-Hop Options header.)
The RUT must discard the Echo Request and not forward it to TN2.
The Destination Address should be the same as
the Source Address in TN1's Echo Request Packet.
IPv6 Header
Version = 6
Traffic Class = 0
FlowLabel = 0
PayloadLength = 16
NextHeader = 58 (ICMPv6)
SourceAddress = RUT Global Address (Link0)
Destination Address = TN1 Global Address (Link0)
ICMP Error
Type = 4 (Parameter Problem)
Code = 2 (unrecognized IPv6 option encountered)
Checksum = (auto)
Pointer = 42 (Offset to Option field of HbH Options Header)
PayloadData = (Sent Packet)
Common Test Cleanup
RFC 8200 - IPv6 Specification
perldoc V6evalTool