FH_Overlap - Fragment packets with Overlap data
Host and Router
FH_Overlap.seq [-tooloption ...] -pkt FH_Overlap.def
-tooloption: v6eval tool option
1. Check Link0 Link Local address Reachability
2. Check support of Fragment Header
1. Send broken 1st fragment packet
2. Send 2nd fragment packet
2. Wait 5 sec.
3. Send Echo Request
4. If NS received then send NA, and wait Echo Reply again
5. Receive Echo Reply
+----------------+
| IPv6 |
| Header |
+----------------+ +----------------+
| ICMPv6 | | header with |
| Echo | | 768 byte |
| Request | | payload |
| | | |
| | | |
....|................|....|................|....+----------------+....
| | | | | |
| header with | | | | 512 byte of |
| 1024 byte | +----------------+ | payload |
| payload | | |
| | | |
+----------------+ +----------------+
[Original packet] [1st frag. data] [2nd frag. data]
1st fragment packet is:
IPv6 Header
Version = 6
Traffic Class = 0
FlowLabel = 0
PayloadLength = 784
NextHeader = 44 (Fragment Header)
HopLimit = 64
SourceAddress = Tester Link Local Address
DestinationAddress = Target Link Local Address
Fragment Header
NextHeader = 58 (ICMPv6)
Reserved1 = 0
FragmentOffset = 0
Reserved2 = 0
MFlag = 1
Identification = (generated by current system time)
Payload
data = substr(_PACKET_IPV6_NAME(echo_request), 40, 776)
2nd fragment packet is:
IPv6 Header
Version = 6
Traffic Class = 0
FlowLabel = 0
PayloadLength = 520
NextHeader = 44 (Fragment Header)
HopLimit = 64
SourceAddress = Tester Link Local Address
DestinationAddress = Target Link Local Address
Fragment Header
NextHeader = 58 (ICMPv6)
Reserved1 = 0
FragmentOffset = 65
Reserved2 = 0
MFlag = 0
Identification = (same as 1st fragment packet)
Payload
data = substr(_PACKET_IPV6_NAME(echo_request), 560, 512)
PASS : echo reply packet received.
FAIL : don't received echo reply packet.
perldoc V6evalTool