FH_Overlap_UDP - UDP Fragment packets with Overlap data
Host and Router
FH_Overlap_UDP.seq [-tooloption ...] -pkt FH_Overlap_UDP.def -tooloption: v6eval tool option
1. Check Link0 Link Local address Reachability and UDP echo support. 2. Check support of Fragment Header
1. Send 1st fragment packet 2. Send broken 2nd fragment packet 1. Send 2nd fragment packet 2. Wait 5 sec.
+----------------+ | IPv6 | | Header | +----------------+ +----------------+ | UDP Header | | UDP Header | +----------------+ +----------------+ +----------------+ |0000000000000000| |0000000000000000| |1111111111111111| |0000000000000000| |0000000000000000| |1111111111111111| |0000000000000000| |0000000000000000| |1111111111111111| |0000000000000000| +----------------+ |1111111111111111| |0000000000000000| |1111111111111111| |0000000000000000| |1111111111111111| |0000000000000000| |1111111111111111| +----------------+ +----------------+
[Original packet] [1st frag. data] [broken 2nd frag. data]
1st fragment packet is:
IPv6 Header Version = 6 Traffic Class = 0 FlowLabel = 0 PayloadLength = 528 NextHeader = 44 (Fragment Header) HopLimit = 64 SourceAddress = Tester Link Local Address DestinationAddress = Target Link Local Address
Fragment Header NextHeader = 17 (UDP) Reserved1 = 0 FragmentOffset = 0 Reserved2 = 0 MFlag = 1 Identification = (random)
Payload data = substr(_PACKET_IPV6_NAME(udp_request), 40, 520)
2nd fragment packet is:
IPv6 Header Version = 6 Traffic Class = 0 FlowLabel = 0 PayloadLength = 1032 NextHeader = 44 (Fragment Header) HopLimit = 64 SourceAddress = Tester Link Local Address DestinationAddress = Target Link Local Address
Fragment Header NextHeader = 17 (UDP) Reserved1 = 0 FragmentOffset = 1 Reserved2 = 0 MFlag = 0 Identification = (same as 1st fragment packet)
Payload data = substr(_PACKET_IPV6_NAME(udp_request_1), 48, 1024)
PASS : don't received UDP packet, or correct UDP packet received. FAIL : broken UDP packet received.
perldoc V6evalTool