在你的VPS上配置IPv6
Naohhuana
・9 分钟阅读
每个例子都假定为2001:db8:1000::/64
的IPv6子网,您需要使用自己的子网替代它们。
我们将使用2001:db8:1000::100
作为主要的IPv6地址来分配,我们还将2001:db8:1000::200配置为辅助IPv6地址。
Centos 6和Centos 7
将以下行添加到 /etc/sysconfig/network-scripts/ifcfg-eth0
文件。
IPV6INIT="yes"
IPV6ADDR="2001:db8:1000::100/64"
IPV6_AUTOCONF="yes"
IPV6ADDR_SECONDARIES="2001:db8:1000::200/64"
重新启动网络或重新启动。
service network restart
如果你已启用转发,则还需要向/etc/sysctl.conf文件中添加以下行,这些变量(这是1 )的默认设置,使IPv6在启用IP转发时不能正常工作,你可以通过运行"sysctl net.ipv4.ip_forward
"检查是否启用了IP转发。
net.ipv6.conf.all.accept_ra=2
net.ipv6.conf.eth0.accept_ra=2
Debian 8
动态配置
对于动态配置,在/etc/network/interfaces
文件中添加以下行。
iface eth0 inet6 auto
重新启动网络或重新启动。
systemctl restart networking.service
静态配置
对于静态配置,在/etc/network/interfaces
文件中添加以下行。
iface eth0 inet6 static
address 2001:db8:1000::100
netmask 64
up /sbin/ip -6 addr add dev eth0 2001:db8:1000::200
重新启动网络或重新启动。
systemctl restart networking.service
Debian 9
动态配置
对于动态配置,在/etc/network/interfaces
文件中添加以下行。
iface ens3 inet6 auto
重新启动网络或重新启动。
systemctl restart networking.service
静态配置
对于静态配置,在/etc/network/interfaces
文件中添加以下行。
iface ens3 inet6 static
address 2001:db8:1000::100
netmask 64
up /sbin/ip -6 addr add dev ens3 2001:db8:1000::200
重新启动网络或重新启动。
systemctl restart networking.service
Fedora 26 - Fedora 28
将以下行添加到 /etc/sysconfig/network-scripts/ifcfg-ens3
文件。
IPV6INIT="yes"
IPV6ADDR="2001:db8:1000::100/64"
IPV6_AUTOCONF="yes"
IPV6ADDR_SECONDARIES="2001:db8:1000::200/64"
重新启动网络或重新启动。
systemctl restart network.service
Fedora 29 ,fedora 30
为动态IPv6配置运行以下命令,另外一个IPv6地址(/128 ),其他地址可以相同的方式添加。
nmcli con mod 'Wired connection 1' ipv6.method 'auto' ipv6.addresses ''
nmcli con mod 'Wired connection 1' +ipv6.addresses '2001:db8:1000::200/128'
nmcli con up 'Wired connection 1'
FreeBSD 10.x,FreeBSD 11.x,FreeBSD 12.x
动态配置
对于动态配置,在/etc/rc.conf
文件中添加以下行。
ifconfig_vtnet0_ipv6="inet6 accept_rtadv"
ipv6_activate_all_interfaces="YES"
rtsold_enable="YES"
rtsold_flags="-aF"
启动路由器请求守护进程或重新启动。
service rtsold start
静态配置
对于静态配置,在/etc/rc.conf
文件中添加以下行。
rtsold_enable="YES"
ipv6_activate_all_interfaces="YES"
rtsold_flags="-aF"
ifconfig_vtnet0_ipv6="inet6 2001:db8:1000::100 prefixlen 64"
ifconfig_vtnet0_alias0="inet6 2001:db8:1000::200 prefixlen 64"
启动路由器请求守护进程或重新启动。
service rtsold start
OpenBSD 6.0 -OpenBSD 6.2
将以下行添加到/etc/hostname.vio0
文件。
inet6 autoconf -autoconfprivacy
inet6 alias 2001:db8:1000::200 64
重新启动接口或重新启动。
sh /etc/netstart vio0
OpenBSD 6.3 -OpenBSD 6.5
将以下行添加到/etc/hostname.vio0
文件。
inet6 autoconf -autoconfprivacy -soii
inet6 alias 2001:db8:1000::200 64
重新启动接口或重新启动。
sh /etc/netstart vio0
Ubuntu 14.04
动态配置
对于动态配置,在/etc/network/interfaces
文件中添加以下行。
iface eth0 inet6 auto
重新引导实例。
静态配置
对于静态配置,在/etc/network/interfaces
文件中添加以下行。
iface eth0 inet6 static
address 2001:db8:1000::100
netmask 64
up /sbin/ip -6 addr add dev eth0 2001:db8:1000::200
IP转发
如果你已启用(使用你的服务器作为VPN或类似)转发,则还需要向/etc/sysctl.conf
文件中添加以下行,这些变量(这是1 )的默认设置,使IPv6在启用IP转发时不能正常工作,你可以通过运行"sysctl net.ipv4.ip_forward
"检查是否启用了IP转发。
net.ipv6.conf.all.accept_ra=2
net.ipv6.conf.eth0.accept_ra=2
Ubuntu 16.04
动态配置
对于动态配置,在/etc/network/interfaces
文件中添加以下行。
iface ens3 inet6 auto
重新启动网络或重新启动。
systemctl restart networking.service
静态配置
对于静态配置,在/etc/network/interfaces
文件中添加以下行。
iface ens3 inet6 static
address 2001:db8:1000::100
netmask 64
up /sbin/ip -6 addr add dev ens3 2001:db8:1000::200
重新启动网络或重新启动。
systemctl restart networking.service
Ubuntu 17.10,Ubuntu 18.xx,Ubuntu 19.xx
使用以下文本填充/etc/netplan/10-ens3.yaml
文件。
network:
version: 2
renderer: networkd
ethernets:
ens3:
dhcp4: yes
addresses:
- '2001:db8:1000::200/64'
更新网络或重新启动。
netplan apply
Windows Server 2012 R2、Windows Server 2016
在系统中查找接口名称,你可以使用ipconfig/all
或导航Windows控制面板。
用Windows选择的接口名称替换"Ethernet",并运行以下命令。
netsh interface ipv6 set global randomizeidentifiers=disabled
netsh interface ipv6 add address interface="Ethernet" address="2001:db8:1000::100/64"
netsh interface ipv6 add address interface="Ethernet" address="2001:db8:1000::200/64"