在 scapy ICMP 中有几个值
type = dest-unreach
code = fragmentation-needed
chksum = 0x3c4a
reserved = 5
length = 20
nexthopmtu= 1300
我制作了一个类似于 Ether/IP/ICMP/IP/UDP 的数据包。其中,IP/UDP 是会导致错误的数据包。我的目标 VM 将始终发送此数据包。因此,当我将 ICMP 发回时,它会识别它。
但我不确定 ICMP 中的哪个值负责路径 MTU 重置。我想按自己的意愿更改路径 MTU。从其他参考资料来看,ICMP 中有一个名为“unused”的值可能可以完成这项工作。所以每次我发送数据包时,我都会设置它(unused = 1300)。但目标 VM 并没有按我的意愿更改 MTU。目标 VM 的防火墙已禁用,我可以使用 Wireshark 在 VM 中获取数据包。这个数据包对我来说看起来很完美。我想知道问题出在哪里。