为什么 curl 无法使用 IPv6 连接工作?

为什么 curl 无法使用 IPv6 连接工作?

为什么:

curl -v -6 http://badurl.com

不起作用,但是:

curl -v -6 --head http://badurl.com

完美运行吗?

MTU 不是问题(?),因为:

root@server:~# ping6 -c 10 -s 2000 -M do IPV6ADDRESSOFBADURL.COM
PING IPV6ADDRESSOFBADURL.COM(IPV6ADDRESSOFBADURL.COM)
2000 data bytes From IPV6ADDRESSOFSOMEGATEWAY icmp_seq=1 Packet too big: mtu=1452
2008 bytes from IPV6ADDRESSOFBADURL.COM: icmp_seq=2 ttl=54 time=82.5 ms
2008 bytes from IPV6ADDRESSOFBADURL.COM: icmp_seq=3 ttl=54 time=82.4 ms

tcpdump 显示,如果 IPv6 连接不好,那么我的桌面就不会收到任何东西..ip6tables 是空的。

我的问题:为什么我的台式机(具有本机 IPv6 地址)与启用 IPv6 的网站之间的连接“随机变差”?(问题不仅仅发生在一个网站上)

或者任何提示,如何调试这个?

答案1

您确定 MTU 不是问题的一部分吗?

“来自 IPV6ADDRESSOFSOMEGATEWAY 的 2000 个数据字节 icmp_seq=1 数据包太大:mtu=1452”

IPv6 路由器将不是对所有数据包进行分段,连接依赖于 PMTU,如果任何数据包对于路径中的任何跳跃来说都太大,则会被丢弃并发回“ICMPv6 数据包太大”。

相关内容