如何防止路由器通告更新我的 IPv6 路由?

如何防止路由器通告更新我的 IPv6 路由?

我想在 RHEL6.5 中发送较大的 IPv6 数据包而不进行碎片化。我正在使用此命令进行测试:

ping6 dest_ip -s 8952 -M do -c 100

这是我尝试过的:

  1. 设置 MTU:

    ifconfig eth0 mtu 9000
    
  2. 删除预配置的 IPv6 路由:

    [root@myhost~]# ip -6 route|grep fc00
    fc00:10:24:86::/64 dev eth0  proto kernel  metric 256  expires 0sec mtu 1500 advmss 1440 hoplimit 4294967295
    [root@myhost~]# ip -6 route del fc00:10:24:86::/64
    
  3. 添加新的 IPv6 路由:

    [root@myhost~]# ip -6 route add fc00:10:24:86::/64 dev eth0 mtu 9000 metric 256
    [root@myhost~]# ip -6 route|grep eth0
    fc00:10:24:86::/64 dev eth0  metric 255  mtu 9000 advmss 8940 hoplimit 4294967295
    fe80::/64 dev eth0  proto kernel  metric 256  mtu 1500 advmss 1440 hoplimit 4294967295
    default via fe80::fefb:fbff:fe31:c280 dev eth0  proto kernel  metric 1024  expires 0sec mtu 1500 advmss 1440 hoplimit 64
    
  4. 完成上述配置后,运行 ping 命令ping6 dst_v6_ip -s 8952 -M do -c 100。我可以看到 100 个数据包中的第一个已成功传送,但过了一会儿它显示Message too long

  5. 然后我检查现有的IPv6路由,发现它被RA改变了(我猜)

    [root@myhost~]# ip -6 route|grep fc00
    fc00:10:24:86::/64 dev eth0  proto kernel  metric 256  expires 0sec mtu 1500 advmss 1440 hoplimit 4294967295
    
  6. 我尝试使用以下命令禁用 RA 和 autoconf:

    sysctl -w net.ipv6.conf.all.autoconf=0
    sysctl -w net.ipv6.conf.all.accept_ra=0
    

但它仍然不起作用。

如何防止 RA/AUCONF 替换我手动配置的 IPv6 路由?

相关内容