家宽开启 IPV6

131次阅读
没有评论

共计 4264 个字符,预计需要花费 11 分钟才能阅读完成。

因部分部署在家中的服务需要,研究了下家庭设备下如何开启IPV6。

网络架构:

  • 光猫:只负责光电转换,开启桥接模式
  • 路由器:拨号上网,提供 DHCP 服务给家中其他客户端分配IP

光猫开启 IPV6

参考链接:ipw.cn 个人宽带开启IPV6

openwrt 开启 IPV6

参考链接:CSDN OpenWrt IPv6配置

视 openwrt 的不同版本,配置项会略微有所变化。

贴一下我的版本:

主机型号 Xiaomi Mi Router AX3000T (CpuMark : 8934.887011 Scores)
架构 ARMv8 Processor x 2
固件版本 bleachwrt stable 20231225 @ R23.11.11 / LuCI Master (git-23.346.45702-3e8eb4a)

这里是路由器拨号获取 IPV6,并作为 DHCP 服务端。

WAN 接口配置

配置 PPOPE 拨号上网:
​​家宽开启 IPV6​​

WAN6 接口配置

配置为 DHCPv6 客户端:

家宽开启 IPV6

LAN 接口配置

  • 路由通告服务:服务器模式
  • DHCPv6 服务:服务器模式
  • NDP 代理:已禁用
  • DHCPv6 模式:无状态的 + 有状态的

家宽开启 IPV6

验证

配置完毕后,接口可观察到分配的 IPV6 :
家宽开启 IPV6

这里需要说明,国内三大运营商的IPv6地址分配情况分别是:

电信为 240e 开头的(240e::/20);移动为 2409 开头的(2409:8000::/20);联通为 2408 开头的(2408:8000::/20)。

而 fe80 开头的地址是一种本地连接地址,即 “link-local” 地址。这些地址仅在计算机所连接的本地网络内可用,并不能在互联网上使用。

WAN6 中的 IPV6-PD,PD在IPv6中代表”Prefix Delegation”,即前缀委派。IPv6中的前缀委派是一种机制,用于将IPv6地址前缀分配给路由器,以便路由器可以为其连接的子网中设备分配唯一的IPv6地址。

客户端 开启IPV6

家宽中,主要的设备是 pve 和台式机。它们都是作为 DHCP 客户端,从路由器获取IPV6 IP地址。

PVE 宿主机

参考链接:www.icn.ink/pve/57.html

PVE宿主机系统是 debian。

命令行登录 PVE 宿主机:

# 添加内核参数
# vim /etc/sysctl.conf
# 开启IPV6
net.ipv6.conf.all.forwarding=1
net.ipv6.conf.all.accept_ra=2
net.ipv6.conf.default.accept_ra=2
net.ipv6.conf.vmbr0.accept_ra=2
net.ipv6.conf.all.autoconf=1
net.ipv6.conf.default.autoconf=1
net.ipv6.conf.vmbr0.autoconf=1

# 加载
sysctl -p

CentOS 7

示例配置文件参考:

# cat /etc/sysconfig/network-scripts/ifcfg-eth0
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=eth0
UUID=9b5d30fc-859a-4c0b-8838-f6bc34802be6
DEVICE=eth0
ONBOOT=yes
GATEWAY=192.168.2.1
IPADDR=192.168.2.10
NETMASK=255.255.255.0
DNS1=192.168.2.1
DNS2=114.114.114.114

# 验证
# ifconfig eth0
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.2.10  netmask 255.255.255.0  broadcast 192.168.2.255
        inet6 240e:36f:1563:be00:5616:6f2b:b8b2:9145  prefixlen 64  scopeid 0x0<global>
        inet6 240e:36f:15bc:1d00:f736:91b4:cf5a:7b35  prefixlen 64  scopeid 0x0<global>
        inet6 240e:36f:1565:1100:f5d6:515c:cdd4:811  prefixlen 64  scopeid 0x0<global>
        inet6 240e:36f:1520:9985:b99e:4c0:d17f:41c6  prefixlen 64  scopeid 0x0<global>
        inet6 fd9f:e0a0:877a:0:30b8:bdac:1aa8:5d5a  prefixlen 64  scopeid 0x0<global>
        inet6 240e:36f:159c:6700:2e01:148d:2d4d:6039  prefixlen 64  scopeid 0x0<global>
        inet6 fe80::fe40:5cb:7af7:8aae  prefixlen 64  scopeid 0x20<link>
        inet6 fd50:8c20:cd98:0:ab17:d254:3edb:838e  prefixlen 64  scopeid 0x0<global>
        inet6 fd12:f30e:e482:0:4c4b:902d:d967:cc27  prefixlen 64  scopeid 0x0<global>
        inet6 fd1a:4fdc:b03e:0:dc03:17b1:b7a8:3eac  prefixlen 64  scopeid 0x0<global>
        ether 42:29:38:e2:91:ad  txqueuelen 1000  (Ethernet)
        RX packets 221253030  bytes 173310347276 (161.4 GiB)
        RX errors 0  dropped 895  overruns 0  frame 0
        TX packets 150345303  bytes 114251873773 (106.4 GiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

Ubuntu 20.04

示例配置文件参考:

# cat /etc/netplan/00-installer-config.yaml 
# This is the network config written by 'subiquity'
network:
  ethernets:
    ens18:
      dhcp6: true
      addresses: [192.168.2.11/24]
      routes: 
      - to: default
        via: 192.168.2.1
      nameservers:
        addresses: [192.168.2.1, 114.114.114.114]
  version: 2

如果启用了 ufw,要将 ufw 配置文件的 IPV6 开关打开

# cat  /etc/default/ufw |grep IPV6
#IPV6=NO
IPV6=yes

验证

# ifconfig ens18
ens18: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.2.11  netmask 255.255.255.0  broadcast 192.168.2.255
        inet6 240e:36f:1520:9985:5c7d:7aff:fead:3d04  prefixlen 64  scopeid 0x0<global>
        inet6 240e:36f:1520:9985::a9f  prefixlen 128  scopeid 0x0<global>
        inet6 240e:36f:15bc:1d00::a9f  prefixlen 128  scopeid 0x0<global>
        inet6 fe80::5c7d:7aff:fead:3d04  prefixlen 64  scopeid 0x20<link>
        inet6 fd50:8c20:cd98:0:5c7d:7aff:fead:3d04  prefixlen 64  scopeid 0x0<global>
        inet6 fd50:8c20:cd98::a9f  prefixlen 128  scopeid 0x0<global>
        inet6 240e:36f:15bc:1d00:5c7d:7aff:fead:3d04  prefixlen 64  scopeid 0x0<global>
        ether 5e:7d:7a:ad:3d:04  txqueuelen 1000  (Ethernet)
        RX packets 429813982  bytes 557127831305 (557.1 GB)
        RX errors 0  dropped 1556  overruns 0  frame 0
        TX packets 492808448  bytes 570802217123 (570.8 GB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

Windows10台式机

控制面板 –> 网络和 Inertnet –> 网络连接 –> 以太网 –> 属性

​​家宽开启 IPV6​​

家宽开启 IPV6

验证

Linux 或 Window 终端执行:

# ping -6 ipw.cn
PING ipw.cn(240e:e9:900e:22:3e::17 (240e:e9:900e:22:3e::17)) 56 data bytes
64 bytes from 240e:e9:900e:22:3e::17 (240e:e9:900e:22:3e::17): icmp_seq=1 ttl=55 time=14.6 ms
64 bytes from 240e:e9:900e:22:3e::17 (240e:e9:900e:22:3e::17): icmp_seq=2 ttl=55 time=15.6 ms
64 bytes from 240e:e9:900e:22:3e::17 (240e:e9:900e:22:3e::17): icmp_seq=3 ttl=55 time=14.1 ms
64 bytes from 240e:e9:900e:22:3e::17 (240e:e9:900e:22:3e::17): icmp_seq=4 ttl=55 time=14.2 ms
...

能够解析域名并 ping 通,表示成功开启客户端的 IPV6。

引用链接

正文完
 
pengyinwei
版权声明:本站原创文章,由 pengyinwei 2024-01-13发表,共计4264字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处:https://www.opshub.cn
评论(没有评论)