一、路由器 WAN 口、LAN 口及内部设备的 IPv6 地址获取过程
整个过程的核心是运营商通过 DHCPv6-PD(Prefix Delegation,前缀委派)给路由器分配 “专属子网”,路由器再从该子网中划分网段给 LAN 口,最终内部设备通过 SLAAC/DHCPv6 获取地址。具体步骤如下:
1. 路由器 WAN 口获取 IPv6 地址与 “前缀委派”(核心步骤)
- 当路由器启动并接入运营商网络(光猫)后,其 WAN 口会以DHCPv6 客户端身份,向运营商的 DHCPv6 服务器发送两类请求:
-
① 请求 1 个运营商公网前缀下的 IPv6 地址(即 WAN 口自身的地址):比如运营商分配的公网前缀是
2001:db8:0::/48,会给你路由器 WAN 口分配一个2001:db8:0:100::1/64(属于运营商公网/64网段,用于路由器与运营商网关通信)。 -
② 请求 1 个可自主分配的子网前缀(DHCPv6-PD 核心):运营商会给每个家庭路由器委派一个 “私有前缀”(常见为
/56或/60,足够划分多个/64子网),比如委派2001:db8:100::/56—— 这个前缀完全由你的路由器管理,可用于 LAN 口、WiFi 等不同网络。
-
2. 路由器 LAN 口划分 IPv6 子网
路由器拿到运营商委派的前缀(如2001:db8:100::/56)后,会自动执行以下操作:
- 从委派前缀中划分 1 个 / 64 子网分配给 LAN 口(IPv6 要求所有终端所在网段必须是
/64,这是 SLAAC 协议的强制要求)。例如:从2001:db8:100::/56中截取2001:db8:100:1::/64作为 LAN 口的子网地址,同时 LAN 口会生成一个链路本地地址(如fe80::1,用于同一链路内的设备通信)和一个全球单播地址(如2001:db8:100:1::1/64,用于跨网段通信)。
3. 内部设备(电脑 / 手机)获取 IPv6 地址
LAN 口设备通过两种方式获取2001:db8:100:1::/64网段的地址,核心依赖路由器的RA(Router Advertisement,路由器通告) 协议:
- ① SLAAC(无状态地址自动配置,最常用):路由器定期向 LAN 口发送 RA 报文,包含 LAN 口子网前缀(
2001:db8:100:1::/64)和网关信息(通常是 LAN 口的链路本地地址fe80::1)。电脑收到后,会用 “子网前缀 + 自身 MAC 地址转换的接口标识符” 生成一个全球单播 IPv6 地址(如2001:db8:100:1::abcd/64),同时自动将网关设为fe80::1。 - ② DHCPv6(有状态配置,可选):若路由器启用 DHCPv6 服务器,电脑会通过 DHCPv6 请求获取 “指定的 IPv6 地址、网关、DNS”,但网关仍为路由器 LAN 口的地址(
fe80::1或2001:db8:100:1::1)。
二、内部电脑访问互联网 IPv6 服务器的过程(含网关与地址转换)
假设场景:电脑(2001:db8:100:1::abcd/64)访问互联网 IPv6 服务器(2001:db8:200:1::100/64),整个过程无网络层地址转换(IPv6 无需 NAT),仅涉及数据链路层 MAC 地址的变化。具体步骤如下:
1. 电脑判断目标地址并封装数据包
- 电脑先检查目标地址(
2001:db8:200:1::100)是否在本地网段(2001:db8:100:1::/64)—— 显然不在,因此需要将数据包发送到网关(即路由器 LAN 口的链路本地地址fe80::1)。 - 电脑通过NDP(Neighbor Discovery Protocol,邻居发现协议) 向 LAN 口发送 “邻居请求”,获取网关(
fe80::1)对应的 MAC 地址(如00:11:22:33:44:55)。 - 最终封装:
- 网络层(IPv6):源 IP = 电脑地址(
2001:db8:100:1::abcd),目的 IP = 服务器地址(2001:db8:200:1::100)。 - 数据链路层(以太网):源 MAC = 电脑 MAC,目的 MAC = 路由器 LAN 口 MAC(
00:11:22:33:44:55)。
- 网络层(IPv6):源 IP = 电脑地址(
2. 路由器转发数据包到运营商网关
- 路由器收到 LAN 口的以太网帧后,解封装得到 IPv6 数据包,检查目的 IP(服务器地址),并查询自身路由表:路由器的路由表中存在一条 “默认路由”(由运营商 DHCPv6-PD 下发),下一跳为运营商的 IPv6 网关地址(如
2001:db8:0:1::1/64,属于运营商公网网段)。 - 路由器通过 WAN 口的 NDP 协议,获取运营商网关(
2001:db8:0:1::1)对应的 MAC 地址(如aa:bb:cc:dd:ee:ff)。 - 重新封装数据包(仅改链路层信息,网络层不变):
- 网络层(IPv6):源 IP、目的 IP 保持不变(无 NAT!)。
- 数据链路层(以太网):源 MAC = 路由器 WAN 口 MAC,目的 MAC = 运营商网关 MAC(
aa:bb:cc:dd:ee:ff)。 - 数据包通过 WAN 口发送到运营商网络。
3. 运营商网络转发到目标服务器
- 数据包在运营商 IPv6 骨干网中,通过路由协议(如 BGP)逐级转发到服务器所在的网络网关(如
2001:db8:200:1::1)。 - 服务器网关通过 NDP 获取服务器(
2001:db8:200:1::100)的 MAC 地址,将数据包最终送达服务器。
4. 服务器响应数据包按原路返回
- 服务器生成响应数据包,源 IP = 服务器地址,目的 IP = 电脑地址,按上述反向路径(服务器→运营商网关→家庭路由器→电脑)转发,过程中仅更新各链路的 MAC 地址,IPv6 地址始终不变。
三、关键总结:网关与地址转换的核心结论
| 核心问题 | 答案 |
|---|---|
| 1. 各设备的网关是什么? | - 电脑 / 手机的网关:家庭路由器 LAN 口的链路本地地址(如fe80::1)- 家庭路由器的网关:运营商的公网 IPv6 网关(如2001:db8:0:1::1) |
| 2. 是否需要地址转换? | - 网络层(IPv6):无需转换(每个设备有唯一公网 IPv6 地址,直接通信)- 数据链路层(MAC):需更新(每跳转发时,目的 MAC 改为下一跳网关的 MAC) |
| 3. 网段差异的原因? | 运营商通过 DHCPv6-PD 给路由器委派了 “专属子网”(如/56),LAN 口网段从该子网划分,与 WAN 口的运营商公网网段天然不同。 |
简言之,IPv6 的核心优势是 “全球单播地址直接通信”,无需依赖 IPv4 的 NAT;而路由器 LAN 口与 WAN 口的网段差异,本质是运营商通过 DHCPv6-PD 为你分配了 “家庭专属子网”,实现了内网与公网的分层管理。
7万+

被折叠的 条评论
为什么被折叠?



