我有一个TP-Link Archer C2 AC750(V1)路由器。它适用于 IPv4,但我无法设置 IPv6。
网络拓扑结构
讨论的路由器与我公寓中的设备共享互联网连接(不同年份的 Mac 和 iPhone)。路由器的 WAN 端口连接到共享 DSL 连接的家用路由器(ISP 是O2 捷克共和国) 通过以太网在整个建筑物内传输数据。
直接连接
我可以将我的一台 Mac 直接连接到有线家庭网络。它获取 IPv4 和 IPv6 连接所需的所有信息。网页http://whatismyipaddress.com在 Safari 中打开时会显示我的公共 IPv6 地址(以 开头2a00:
,因此没有6to4 隧道)。
完整列表如下。出于隐私原因,我隐藏了我的 MAC 和 IPv6 地址。
$ ifconfig en0
en0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
options=10b<RXCSUM,TXCSUM,VLAN_HWTAGGING,AV>
ether xx:xx:xx:xx:xx:xx
inet6 fe80::xxxx:xxxx:xxxx:xxxx%en0 prefixlen 64 scopeid 0x4
inet 10.0.0.63 netmask 0xffffff00 broadcast 10.0.0.255
inet6 2a00:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx prefixlen 64 autoconf
inet6 2a00:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx prefixlen 64 autoconf temporary
nd6 options=1<PERFORMNUD>
media: autoselect (100baseTX <half-duplex>)
status: active
$ cat /etc/resolv.conf | grep -v '^#'
domain .
nameserver 10.0.0.138
nameserver fe80::1
当前路由器设置
以下是我的路由器的 IPv6 配置。出于隐私原因,我隐藏了 IP 地址。地址的前半部分(64 位前缀)仍然相同。
IPv6 状态
- WAN
Connection Type: Dynamic IPv6
Connection Status: Connected
IPv6 Address: 2a00:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx /64
IPv6 Default Gateway: fe80::0000:0000:0000:0001
Primary IPv6 DNS: ::
Secondary IPv6 DNS: ::
- IPv6 LAN
IPv6 Address Type: RADVD
Prefix Length: 64
IPv6 Address: N/A
IPv6 广域网
当我改变寻址类型对于唯一的其他选择,DHCPv6
路由器永远不会获得 IPv6 地址。
IPv6 局域网
或者
无论我选择RADVD
还是DHCPv6
使用委托前缀,我的计算机都不会获得 IPv6 地址。我的计算机获得一些带有静态前缀的 IPv6 地址DHCPv6
,但仍然无法连接 IPv6 互联网。它甚至无法 ping 通任何一个路由器。
有人能帮我设置一下吗?或者,由于有些人报告说 TP-Link 路由器的 IPv6 支持不完整(例如https://lkhill.com/its-2015-supports-ipv6-should-mean-full-support/),我是否应该切换到开放Wrt?
编辑
不幸的是,后来我意识到 OpenWrt 还没有为我的路由器做好准备,请参阅OpenWrt 维基和OpenWrt 讨论了解详情。
自从@迈克尔·汉普顿怀疑上游(家庭)路由器行为不当,我正在显示其当前IPv6 LAN 自动配置设置。
我试图禁用M位自定义模式但没有变化……
编辑2
这IPv6 信息家里的路由器正在跟踪。同样,出于隐私原因,IP 地址被隐藏。
IPv6 enable/disabled: Enabled
IPv6 Primary DNS Server: 2a00:1028:1:910::1
IPv6 Secondary DNS Server: 2a00:1028:1:911::1
Active IPv6 Prefix:
Active IPv6 Prefix Length:
LAN interface Link-Local address: fe80::0:0:0:1
Manual configured prefix:
WAN interface Link-Local address: fe80::xxxx:xxxx:xxxx:xxxx
WAN interface User Setting Global address: 2A00:1028:xxxx:xxxx:0:0:0:1/64
IPv6 DefaultGateway: fe80::xxxx:xxxx:xxxx:xxxx
LAN IPv6 Address:
Default IPv6 interface Gateway:
答案1
事实证明,家用路由器获得的前缀 IP 地址范围/64
似乎无法分成多个子网。
IPv6 地址由 8 组数字组成:
- 网络地址 - 子网掩码中的前三组数字(前 48 位)
- 子网地址 - 子网掩码中的第四组数字(第 49 至第 64 位)
- 设备地址 - 子网掩码中的最后四组数字(最后 64 位)
ISP 似乎没有遵循有关站点 IPv6 地址分配的建议。
具体来说,它建议在一般情况下分配 /48,当已知只需要一个子网时分配 /64,当绝对知道只有一个设备正在连接时分配 /128。
进一步阅读
选择
我通过将路由器设置为交换机来使 IPv6 正常工作。但是,这意味着下级(平面)网络上的所有设备和流量都暴露给上游(房屋)网络。
指示
- 手动设置下级路由器的 LAN IPv4 地址。您将需要它来访问该路由器的配置,至少是过渡后适用的部分,例如 Wi-fi。
- 如果您可以影响上游路由器配置,请在上游路由器的配置中保留静态 IPv4 地址。
- 否则,请设置不同范围的地址,例如,如果上游路由器提供 10.0.xx 地址,则使用 192.168.xx。每当您需要访问路由器配置时,您都必须配置您的计算机以使用相同的范围。
- 关闭下级路由器的 DHCP 服务器(IPv4 和 IPv6)。
- 断开 WAN 端口上的上行电缆并将其连接到 LAN 端口。