title: 给linux网卡上ipv6 author: lenfrex cover: https://oss-img.ciduid.top/blog/covers/cover(15).png tags: - ipv6 - 折腾 - 网络 - 服务器 categories: - 折腾 date: 2022-03-20 21:26:00 --- 按照阿里云官网的文档ipv6分配地址并且开通ipv6公网带宽之后,在我本地这里去ping服务器的ipv6地址ping通了,而且延迟比ipv4地址短了将近一半; 有意思的是,当我从服务器ping服务器自己的ipv6地址时,却ping不通,提示`Destination unreachable: Address unreachable` 奇怪了,我的服务器类型是支持ipv6的,而且公网能ping通,偏偏自己ping不通自己...没道理呀... ipv6本地回环倒是没问题,ping其他纯ipv6网站也是长时间没结果 去问阿里云客服,给的回复是防火墙icmp没开放,去开了之后也是一样的结果。 在阿里云官方的[这个文档](https://help.aliyun.com/document_detail/187463.html),图里eth0网卡中有两个ipv6地址,一个对应的应该是私有地址,一个是公有地址,人家分配的公网地址和其中一个地址是对应的,但是我这只有本地的私有地址,刚刚分配到的地址不见显示。 ![](https://oss-img.ciduid.top/aether/Snipaste_2022-03-20_22-21-45.png) 按照一些教程的说法,编辑`/etc/network/interfaces`,还有去`/etc/sysctl.conf`把ipv6给开了,但是都没用。 后来搜索`ubuntu ipv6 eth0`,找到了[这篇文章](https://www.cnblogs.com/shipfi/archive/2008/01/29/1057950.html),手动把ipv6地址给挂上了网卡,命令如下(root权限): > ip -6 addr add / dev <网卡设备,如eth0> 例如像我这里就是 > sudo ip -6 addr add 2408:4005:3c2:fe9:3b13:f597:331a:b090/64 dev eth0 执行完毕之后,用ifconfig一看,eth0果然多了一个对应着分配的ipv6地址。 ![](https://oss-img.ciduid.top/aether/Snipaste_2022-03-20_22-13-50.png) 去ping其他ipv6网站,也能ping通了,至此是可以了。 记得防火墙ipv4的规则复制一遍改成ipv6的,两种规则是不一样的,需要单独设定规则。 最后,这是这个破站的ipv6访问地址:https://ipv6.ciduid.top/