电信家庭宽带中的IPv6实践
今年3月份的时候在家中为了适应升级的300M的电信带宽,特将我去年网购尘封的二手linksys ea4500刷了openwrt系统作为家庭带宽的出口之用,无意中竟发现了电信已经实现了ipv6的双栈,已经使用了将近3个多月的IPv6线路,受一老师点拨,遂撰此文以记录之。
一.路由器的IPv6支持与配置
路由器硬件设备:Linksys EA4500
路由器操作系统版本:OpenWrt R9.2.14 By Lean
1)Wan6接口配置
参数设置如下:
协议:DHCPv6客户端
请求指定长度的IPv6前缀:自动
PS:如果是华硕的路由器的话,配置参数为:联口类型Native,接口PPP,DHCP-PD启动。
2)IPv6 WAN口状态确认
从电信运营商处获取了240e开头的全球单播IPv6地址、IPv6 DNS服务器地址、IPv6前缀地址,说明运营商线路已经支持了IPv6,路由器获取IPv6信息成功。
二.终端IPv6地址获取及网络测试
1)终端IPv6地址获取验证:在终端中可以直接查看是否获得了240e开头的全球单播ipv6地址,macOS的命令是:ifconfig,Windows的命令是:ipconfig
~ admin$ ifconfig en7: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500 options=4<VLAN_MTU> ether 00:e0:4c:6a:43:0d inet6 fe80::14a2:5701:b99c:c62b%en7 prefixlen 64 secured scopeid 0x13 inet6 240e:365:567:d300:416:1832:11c:1809 prefixlen 64 autoconf secured inet6 240e:365:567:d300:a599:57ba:3b78:ffea prefixlen 64 autoconf temporary inet6 fd41:cfa:247d::41d:244b:e014:b046 prefixlen 64 autoconf secured inet6 fd41:cfa:247d::b9e1:cfdc:1a83:c33d prefixlen 64 autoconf temporary inet6 240e:365:567:d300::dec prefixlen 64 dynamic inet 192.168.2.128 netmask 0xffffff00 broadcast 192.168.2.255 nd6 options=201<PERFORMNUD,DAD> media: autoselect (1000baseT <full-duplex>) status: active
2)Ping和traceroute跟踪验证
常用的网络链路检测和跟踪的命令,macOS平台分别是ping6 xxx、tracroute6 xxx,windows平台分别是ping -6 xxx,tracert -6 xxx。
3)IPv6 的DNS解析验证
目前常用的IPv6 DNS Server如下:
下一代互联网国家工程中国中心:240c::6666,240c::6644
中科大IPv6 DNS:2001:da8::666
中国电信分配的IPv6 DNS:240e:46:4088::4088,240e:46:4888::4888
百度公开的IPv6 DNS:2400:da00::6666
Goolge Public DNS:2001:4860:4860::8888,2001:4860:4860::8844
上海交大的IPv6 DNS:2001:da8:8000:1:202:120:2:101
4)IPv6资源站点访问验证
发现了一个业界常用的IPv6网络检测网站,可以直接检测到你的IPv6地址,IPv6 DNS,以及浏览器的IPv6支持情况,检测内容较全面。
三.IPv6相关资源
1)中科大张焕杰老师制作的网络HTTPS、HTTP/2、IPv6的检测站点(ipv6.ustc.edu.cn),在实时检测国内外知名高校、安徽省高校、部分互联网门户网站等状态。
张老师的站点还提供了,自定义检测功能,输入目标站点,系统自动检测该站点Https、http/2、IPv6解析、IPv6访问等指标。2)合肥学院夏光峰老师制作的IPv6学习站点,可自动检测终端的IPv6地址,而且还汇集了各厂商的IPv6相关学习资料(域名:ipv6study.hfuu.edu.cn,这个域名只针对v6用户,如果你可以访问,说明你的终端已接入ipv6网络)
四.部分疑问解答
1)为什么终端获取多个240e开头的IPv6地址?
IPv6隐私拓展(RFC4941)
当一个客户端使用SLAAC配置其IPv6时,它会使用网络前缀和网卡的MAC地址构造地址。这会引起安全问题:计算机的MAC地址可以轻松通过其IPv6地址推算出。
为了解决这个问题,提出了“IPv6隐私扩展”标准(RFC 4941)。使用这个隐私扩展,内核会从原本的IPv6地址计算生成一个“临时地址”。
在连接远程服务器时,系统会优先选择这个地址以隐藏原来的地址。
2)运营商设备与内网终端之间有路由器设备,如何实现IPv6全球单播地址的分配?
DHCPv6 PD工作原理
DHCPv6 前缀代理DHCPv6 PD(Prefix Delegation)是由Cisco 公司提出的一种前缀分配机制,并在RFC3633 中得以标准化。在一个层次化的网络拓扑结构中,不同层次的IPv6地址分配一般是手工指定的。手工配置IPv6 地址扩展性不好,不利于IPv6 地址的统一规划管理。
通过DHCPv6 前缀代理机制,下游网络路由器不需要再手工指定用户侧链路的IPv6 地址前缀,它只需要向上游网络路由器提出前缀分配申请,上游网络路由器便可以分配合适的地址前缀给下游路由器,下游路由器把获得的前缀(一般前缀长度小于64)进一步自动细分成64 前缀长度的子网网段,把细分的地址前缀再通过路由通告(RA)至与IPv6 主机直连的用户链路上,实现IPv6 主机的地址自动配置,完成整个系统层次的地址布局。
3)如果通过IPv6网址直接访问网站?
用中括号将IPv6地址括起来即可,举例如下: