Linux是否已经开启ipv6
1、使用ifconfig查看
ifconfig
如果输出结果没包含 “inet6”,则没有 ipv6支持,如果支持ipv6,则输出结果会包含 “inet6”。
我的是已经开启了
2、sysctl -a | grep ipv6 | grep disable
如图出现很多ipv6 = 0,则是开启
3、ip -6 addr | grep inet6
如果有看到fe80则表示ipv6是开启的
二:开启ipv6
配置sysctl.conf 文件,所在路径:/etc/sysctl.conf
下图配置,如果已经存在,则直接修改,如果不存在,则新增; 将列出的ipv6相关配置更改为0
/etc/sysctl.conf里增加net.ipv6.conf.all.disable_ipv6=0net.ipv6.conf.default.disable_ipv6=0net.ipv6.conf.lo.disable_ipv6=0 # 立即生效sysctl -p
/etc/sysconfig/network里增加
NETWORKING_IPV6=yes
/etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0BOOTPROTO=noneONBOOT=yesIPV6INIT=yesIPV6ADDR=2002::102/64IPV6_DEFAULTGW=2002::1
重启网络:
systemctl restart network
或者
service network restart
现在,我们是一个双栈服务,既有ipv4,又有ipv6,但是ipv4请求ipv6时,需要翻译成ipv6才能请求通;
IPv4向IPv6的过渡技术主要包括双协议栈、隧道模式和翻译技术。
三、添加ipv6隧道
我们需要在一个 Tunnel broker 网站为我们的服务器建立一个ipv6隧道
Tunnel broker
1、注册
注册完后,官方会发送一封电邮到大家提供的邮箱里面,点击链接即可完成验证。
2、登录并创建隧道
4、在服务器上配置路由
切换到Example configurations选项卡,在下拉菜单选择Linux-route2,将会出现一些设置命令,将命令复制后在服务器命令行执行。其他操作系统可以一一对应。
5、检测是否已经设置成功
出现 he-ipv6信息代表已经设置成功。
6、找到resolv.conf 配置,添加谷歌的ipv6 dns服务器设置,路径在:/etc/resolv.conf
在配置文件中追加:
nameserver 2001:4860:4860::8888 nameserver 2001:4860:4860::8844
测试
ping6 -c 5 ipv6.google.com