- 论坛徽章:
- 0
|
本帖最后由 yanwei_3 于 2017-08-08 21:52 编辑
最近在linux中测试ipv6,发现linux对ipv6的支持和rfc 4443 section 3.2的描述并不是一致的。
rfc 4443 section 3.2描述如下 :
Description A Packet Too Big MUST be sent by a router in response to a packet that it cannot forward because the packet is larger than the MTU of the outgoing link. The information in this message is used as part of the Path MTU Discovery process [PMTU]. Originating a Packet Too Big Message makes an exception to one of the rules as to when to originate an ICMPv6 error message. Unlike other messages, it is sent in response to a packet received with an IPv6 multicast destination address, or with a link-layer multicast or link-layer broadcast address.
测试拓扑:
测试仪接口igb0 -----------------------------被测试Linux接口eth0
(2000:1::5/64) | (2000:1::6/64)
测试仪接口igb1 -----------------------------被测试linux接口eth1
(3000:1::5/64) (3000:1::6/64)
测试配置:
eth0 mtu=1500 eth1 mtu=1280
测试报文:
由igb0口发送一个icmpv6 request报文到eth0口,
报文内容:
source lladdr等于igb0mac
dest lladdr 等于eth0 被请求地址组播mac 33:33:ff:00:00:06
source ip等于 2000:1::5
dest ip等于 3000:1::5
通过tcpdump抓包发现,eth0收到icmpv6 request后没有任何相应,没有按照rfc规定回复too big message报文
请各位大神帮忙看看,是linux配置原因吗?linux内核3.10和4.11都试过,O(∩_∩)O谢谢
|
|