24
2025
03
16:18:38

ipv6 如何处理故障

测试结果如果指向此页面,说明我们认定你的设备在世界 IPv6 日会出现问题。你将无法打开所有双栈(即 IPv4 和 IPv6 兼备)的网站。

为了解决问题,你需要知道你的 IPv6 地址和 IPv6 默认路由器(如果有这些的话),然后查看对应的章节。

如果本页没有涵盖你的具体问题,或者你有其他建议,请通过此表单反馈(或联系 jfesler@test-ipv6.com)。

Show instructions for: [All] [Windows] [Mac OS X] [iPhone/iPad] [Linux]

务必与时俱进

Show instructions for: [All] [Windows] [Mac OS X] [iPhone/iPad] [Linux]

操作系统和硬件制造商通常都会发布更新来优化对 IPv6 的兼容性,一些常见问题已经解决了。

而你能做的就是确保你使用的是最新的:

  • 操作系统。确保是最新版本。

    • Mac 用户:推荐使用 Apple OS X 10.6.7,它对 IPv6 的支持较好。

    • 如果其他排除故障的措施无效,Mac 10.4 和 10.5 的用户可能需要关闭 IPv6。

    • Windows 用户:查看 http://update.microsoft.com.

    • iPhone/iPad 用户:目前没有特定的版本可以推荐。

  • 路由器。确保安装了最新版本的固件。一些厂商已经更新了默认配置,或者增添了启用 IPv6 前检查网络状况的功能。

    • 如果你使用的是 Apple 路由器或 Time Capsule,打开 Airport 实用工具检查固件是否是最新版本。

  • 浏览器。一些浏览器更新后可以检测出网络存在“故障”,并暂时停用 IPv6。

    • Firefox 4.x 仅当有 IPv6 地址时才会尝试使用 IPv6。我们建议 Firefox 3 用户升级。

    • Chrome:如果工具栏出现一个扳手图标,点击它,选择“更新 Google Chrome”,然后重新启动。

    • Opera:确保使用 11.10 以上版本。


查看你的 IP 地址

Show instructions for: [All] [Windows] [Mac OS X] [iPhone/iPad] [Linux]

找到你的 IPv6 地址和默认路由器(如果有)。

如果不熟悉操作系统的网络配置,寻找 IPv6 地址和默认路由器可能比较困难。以下是各类系统的操作步骤。

寻找 IPv6 地址时不用管任何以 fe80: 开头的地址,只要操作系统支持 IPv6 它们就会存在,无论运营商是否支持。它们是子网内部地址,只用于与同一个物理网络中的其他主机通信。

OS X 用户:通过图形界面查看 IP 地址:

  • 点按左上角的苹果菜单

  • 点按“系统偏好设置”

  • 点按“网络”

  • 如果有多个网络,选择你的主要网络(绿色图标)。

  • 点按“高级”

  • 在“TCP/IP”标签页中,查看“配置 IPv6”下方。

  • 记下有没有路由器。

  • 记下 IPv6 地址(如果有)。

OS X 用户:通过命令行查看 IP 地址:

  • 打开终端:打开“应用程序”文件夹,在“实用工具”中打开“终端”。

  • 查看你的 IP 地址:ifconfig -a inet6 或 ifconfig -f inet6

  • 忽略以 fe80: 开头的地址,寻找 en0 或 en1 中的任何其他地址。

  • 查看是否有默认路由器:netstat -nr -f inet6

  • 找到标有“默认”的那一行,其中可能有一个以 fe80: 开头的网关。

ios" style="box-sizing: border-box; font-family: sans-serif; font-size: medium; text-wrap: wrap; background-color: rgb(255, 255, 255);">

iPhone 和 iPad 用户:设置中没有显示相关信息。“IT Tools”和“ip6config”App 可以显示 IPv6 地址,但都是收费的。

Linux 用户:要查看 IPv6 地址,只需打开一个终端,然后执行

  • ip -6 address show

Linux 用户:要查看 IPv6 默认路由,执行

  • ip -6 route show default

Unix 中确定 IPv6 地址和默认路由的一般方法:

  • 运行 ifconfig -a 并查找 inet6 来查看你可能的 IPv6 地址。

  • 运行 netstat -nr 并查找 inet6Internet6 或者类似的名称以定位到 IPv6 部分,然后找到 default:: 或者 ::/0

windows" style="box-sizing: border-box; font-family: sans-serif; font-size: medium; text-wrap: wrap; background-color: rgb(255, 255, 255);">

Windows 用户:通过命令提示符查看 IP 地址:

  • 打开“开始”菜单

  • 如果有“运行”选项,点击它,否则点击“搜索程序和文件”文本框。

  • 输入 cmd.exe

  • 在打开的命令提示符窗口中,执行 ipconfig

Windows 7 用户:通过图形界面查看 IP 地址:

  • 打开“开始”菜单

  • 转至控制面板

  • 转至“网络和 Internet”

  • 转至“查看网络状态和任务”

  • 转至“更改适配器设置”。

  • 双击你主要的互联网连接

  • 转至“详细信息”

  • 找到“IPv6 地址”和“IPv6 默认网关”

其他 Windows 操作系统:将详细的操作步骤发送到 jfesler@test-ipv6.com,我会将其添加进来。


如果你使用了隧道代理

如果你使用了隧道代理,最常见的故障原因是:

  • 你的 IPv4 地址可能已经发生变化,你需要告知隧道代理服务器。

  • 如果你通过路由器来使用 6in4(有时也称作具有特定供应商的 6to4):

    • 确保隧道代理服务器知道你当前的 IPv4 地址。本站能显示你的公网 IPv4 地址。

    • 确保你的路由器能 ping 通隧道的另一端。在调试好路由器之前可别浪费时间折腾你的电脑。

  • 如果你是在 Linux、BSD、Mac 或 Windows 设备上架设 6to4:

    • 确保你的路由器允许转发“41 协议”数据。

    • 确保所有正在运行的软件防火墙允许转发“41 协议”数据。

    • 如果重启后故障才发生,检查你的防火墙设置。

    • 在调试其他主机前,确保架设 6to4 的机器能 ping 通另一边的隧道代理网关。


如果你使用了 6to4

(IPv6 地址以 2002 开头)

如果你使用了 6to4(匿名的 6to4,而不是隧道代理):

不推荐使用“自动的”或没有配置特定网关的 6to4。详见 6to4 页面。

如果你还是想调试匿名的 6to4:

  • 如果你是在路由器上架设 6to4:

    • 确保你的路由器有公网 IPv4 地址,否则无法使用 6to4。

    • 如果你能够登入路由器,执行“ping”或“ping6”看看能否 ping 通 ipv6.test-ipv6.com。在调试好路由器之前可别浪费时间折腾你的电脑。

  • 如果你是在 Linux、BSD、Mac 或 Windows 设备上架设 6to4:

    • 确保你的路由器允许转发“41 协议”数据。

    • 大多数家用电脑用的是内网 IPv4 地址,所以不能使用 6to4(除非满足下面两条)。

    • 确保你的 6to4 接口知道你的公网 IPv4 地址。

    • 确保你的路由器接受来自任何 IP 地址的 41 协议数据,而不只是 192.88.99.1。这样网站即使没法伪装成 192.88.99.1 任播地址,也能顺利提供 6to4。

    • 使用 iptables 跟踪网络连接的 Linux 用户也要注意上一条。

  • 考虑换一种连接方式。


    • 询问运营商能否提供任何形式的 IPv6 连接(包括 6in4 或者某种隧道代理)。

    • 前往 6to4 页面进一步了解为何应当选择其他连接方式,以及一些可行的方案。


如果你使用了 ULA

(IPv6 地址以 FC 或 FD 开头)

ULA or Unique-Local-Unicast: 如果你的 IP 地址以 FC 或 FD 开头,那其实只是一个内网 IPv6 地址,可以连接你家里或单位的其他设备,并且即使你的公网 IPv6 地址经常变动,这个内部 IPv6 地址也可能保持不变。

ULA 的主要问题是,某些家用路由器在提供 ULA 的同时,还会盲目地提供一个默认路由,完全不管 IPv6 有没有连上。而你的浏览器也不知道这默认路由是条死胡同,因为没有什么反馈机制。由于 IPv6 比 IPv4(通俗地说)更受青睐,你的浏览器就会先试着走这条死胡同,可能过几分钟才会放弃。

我们的建议是,除非你的路由器拥有全天候的 IPv6 连接,不要开启 ULA。关闭该功能后,可能需要先重启路由器,再重启你的电脑,故障才会消失。


IPv6 地址不恰当

(IPv6 地址:见下表)

不恰当的 IPv6 地址(Bogon): 如果你的 IPv6 地址开头是这样的,那你需要升级路由器了。

fcxx: or fdxx:

AVM FritzBox - 禁用 ULA。

其他路由器:尝试更新固件。如果无效,找到并禁用“ULA”或“Unique Local Addressing”。

如果还是不行,就在路由器上彻底禁用 IPv6。

2002:0Axx: 或 2002:Axx:
2002:AC1x:
2002:C0A8:
2002:644x:
2002:645x:
2002:646x:
2002:647x:

这个路由器使用了 6to4,但它用的是私有 IPv4 地址,所以永远没戏。

Apple 路由器:更新到最新固件,该问题已被修复。

其他路由器:尝试更新固件。如果无效,找到并禁用“6to4”或任何形式的自动 IPv6 隧道。

如果还是不行,就在路由器上彻底禁用 IPv6。

2001:db8:

这些地址是规定在文档中作示范用的,在实际的 IPv6 互联网上没法用。

Cisco E2000, E3000, E4200: 更新到最新固件。

其他路由器:尝试更新固件。

如果还是不行,就在路由器上彻底禁用 IPv6。

2005:123:456:789:

WRVS4400N routers: 禁用 IPv6。

其他路由器:尝试更新固件。

如果还是不行,就在路由器上彻底禁用 IPv6。


如果你的 IPv6 地址很奇怪

(IPv6 地址没有以 FE80 开头)

IPv6 地址很奇怪?

现代操作系统都支持 IPv6,但一开始处于休眠状态,需要用户自行配置或者局域网内的某个设备先提供 IPv6。如果你的网络主动提供了 IPv6,你的电脑就可以从路由器通告(router announcement)中获得 IPv6 地址和网关,然后自动启用 IPv6。

哪里出了问题:有些人将他们的路由器插入(有线或无线)网络后,无意中就向所有人提供了 IPv6,早期的 Apple 路由器(自动启用 6to4)和 Windows 的网络连接共享就是典型的例子。它们可能会自动成为你的 IPv6 路由器,而你不会收到任何通知。

要是这些路由器并没有真正接入 IPv6,你就连兼备 IPv4 和 IPv6 的网站都连不上。就算它们确实接入了 IPv6,等它们被拔掉以后(比如被主人带离了酒店或会场),你的系统也浑然不知,可能再过上几个小时才舍得放弃 IPv6。

如果有人偶然(或故意)架设了一个有问题的 DHCP 服务器,情况也类似。

如果你不是该网络的管理员,也没有权限解决此问题,可以考虑禁用 IPv6,至少在当前网络内禁用。也可以尝试先关闭再开启你的网络接口(清除 IP 地址),说不定制造麻烦的设备已经离开网络了。

如果你是该网络的管理员:你可以使用默认路由信息来确定其以太网地址,然后搜索该地址的所有者。一些网络厂商提供了封锁未经许可的路由器通告(router announcement)的功能,可以考虑使用。除此以外还可以(通过以太网地址)找出该设备的所有者,乃至伪造其路由器通告称该设备即将下线。


如果实在无计可施了

Show instructions for: [All] [Windows] [Mac OS X] [iPhone/iPad] [Linux]

(如何禁用 IPv6 或降低其优先级)

禁用 IPv6 地址或降低其优先级

在运营商提供 IPv6 前,要彻底禁用 IPv6:查看 Microsoft 的“Fixit”网站,那里提供了明确的步骤。我们推荐“在前缀策略中优先使用 IPv4 而非 IPv6”,而不是完全禁用 IPv6。某些 Windows 功能还是得依赖 IPv6。

完全禁用 IPv6(Windows 7、Vista,而 XP 应该是类似的):

  • 打开“开始”菜单

  • 转至控制面板

  • 转至“网络和 Internet”

  • 转至“查看网络状态和任务”

  • 转至“更改适配器设置”。

  • 双击你主要的互联网连接

  • 转至“属性”

  • 取消勾选“Internet 协议版本 6”

  • 点击“确定”

  • 关机或重新启动计算机。

在 Windows XP 中禁用 IPv6:

  • 摘自: http://support.microsoft.com/kb/2478747

  • 确认你已作为管理员登录。

  • 依次单击“开始”按钮、“所有程序”、“附件”、“命令提示符”。

  • 在命令提示符中,输入 netsh int ipv6 uninstall,然后按回车键。

  • 关闭命令提示符窗口,然后重新启动计算机。

其他 Windows 操作系统:将详细的操作步骤发送到 jfesler@test-ipv6.com,我会将其添加进来。

OS X 用户

在禁用 IPv6 前,请确保你用的是最新版的操作系统。尤其是 OS X 10.6.7,它有一些特别的解决方案,也许无需完全禁用 IPv6 就能解决你的问题。

  • 如何禁用 IPv6


    • 点按左上角的苹果菜单

    • 点按“系统偏好设置”

    • 点按“网络”

    • 如果有多个网络,选择你的主要网络(绿色图标)。

    • 点按“高级”

    • 禁用 IPv6

    • 应用更改

iPhone 和 iPad 用户

iPhone 和 iPad 无法调整 IPv6 设定。你只能改用另一个网络。

Linux 用户

  • 如何禁用 IPv6


    • 这与发行版类型密切相关。用你喜欢的搜索引擎搜索一下。

    • 例如搜索:在 CentOS 中禁用 IPv6

暂时禁用 IPv6 地址的通用 Unix 命令

  • ifconfig eth0 inet6 IP地址 remove

  • 注意,如果路由器再次进行自我广播,你的主机将重新学习默认路由。

  • 你可以在网上针对你的操作系统发行版进行搜索,例如搜索“在 FreeBSD 中禁用 IPv6”。


另见

其他可能有用的资源




推荐本站淘宝优惠价购买喜欢的宝贝:

ipv6 如何处理故障

本文链接:https://hqyman.cn/post/9644.html 非本站原创文章欢迎转载,原创文章需保留本站地址!

分享到:
打赏





休息一下~~


« 上一篇 下一篇 »

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

请先 登录 再评论,若不是会员请先 注册
51La

您的IP地址是: