阿里云启用IPV6

ping过别人的IPv6网址之后,可以确定,局域网是不支持IPv6的。所以要使用隧道技术建立两台机器之间的IPv6连接

1.发现测试用服务器上没有IPv6地址。所以测试服务器的内核应该是没有IPv6模块或者没有IPv6打开IPv6模块。

2.uname -a确定内核版本为2.6.18。经网上搜索2.2以上的内核都是含有IPv6组件的,2.4以上的内核默认开启了IPv6模块。同学说rhel5.0以上应该是有IPv6的。经确认,服务器版本为rhel5.8。所以可以确定,内核是包含IPv6的。

3.使用lsmod查看已经加载的模块发现没有IPv6(技巧:lsmod | grep "IPv6")

4.试图使用modprobe IPv6开启IPv6模块,系统提示:“FATAL:Module off not found.”;而且,“cat /etc/sysconfig/network”的结果是:

NETWORKING=yes

NETWORKING_IPv6=yes

HOSTNAME=qv.old

说明服务器上的IPv6不是被人禁用的。难道服务器的内核是组里人特殊编译的?没有把IPv6模块编译进去?

5.询问课长,确认没有这样的事情。当时装的就是正常的rhel服务器。

6.跟同学提出疑问,同学说那是她改的……本来应该是NETWORKING_IPv6=no的。

7.ls /proc/net/发现IPv6相关的文件都不存在。又开始感到不能理解。

8.modprobe -c查看所有存在的模块,发现IPv6模块是有的。

9.这时搜索到重要信息:ls -l  /etc/modprobe.d/文件夹下的文件是设置组件行为的。可以通过专门添加一个禁用IPv6的脚本来禁用IPv6.于是查看这个文件夹。发现问题:存在一个脚本,名字叫“noIPv6”

10.打开此脚本,内容如下:

alias net-pf-10 off

alias IPv6 off

options IPv6 disable=1

于是确定了这个脚本就是问题所在。

In the file "/etc/sysctl.conf" I deleted the following line:

Code:
net.ipv6.conf.all.disable_ipv6=1

Then I added these lines:

Code:
net.ipv6.conf.all.autoconf=0net.ipv6.conf.all.accept_ra=0net.ipv6.conf.default.autoconf=0net.ipv6.conf.default.accept_ra=0

My provider said that these four parameters disable autoconfiguration, which is not used.

After that a "sysctl -p" did not work, I had to reboot the complete server!
 

11.联系了使用此服务器的使用者,询问她是否禁用过IPv6网络。她说不清楚,自己没有做过。于是移走noIPv6脚本至/root/IPv6backup/文件夹。重新modprobe IPv6。执行成功。服务器已经有了IPv6地址。

12.操作日志记录在了windows桌面上,“启动IPv6.txt”

13.移动到我的文档->documents中去了。

14.然后是为两台机器建立tunnel连接

15.思路总结如下:

①为两台机器指定IPv6地址。

②在两台机器上启用隧道,ifconfig sit0 up

③将隧道指向对方ipv4地址,ifconfig sit0 inet6 tunnel ::对方ip地址

④启用隧道sit1,ifconfig sit1 up

⑤设置IPv6路由表,将对方地址指向sit1,route -A inet6 add 对方IPv6地址 dev sit1

⑥对于上一步,资料中的解释是:“分别激活Host1和Host2的自动隧道sit0,使双方可以通过IPv4 兼容的IPv6 地址连通,然后激活隧道sit1,使双方可以通过可聚集全局单播IPv6地址通信。”

以上是我根据参考资料总结出的思路,可能与实际有出入。所以如果不对,应参考参考资料的实例。

参考资料:

基于Linux下的IPv6网络的配置 http://www.linuxidc.com/Linux/2011-12/50145.htm

16.实际配置过程以校本执行日志的方式保存在我的文档->documents->IPv6环境搭建文件夹中

17.按照资料设定好之后,第一次ping6没有成功。第二次ping6成功了。目前为止没有使用测试脚本进行实验。

ifconfig sit0 up
ifconfig sit0 inet6 tunnel ::216.218.221.6
ifconfig sit1 up
ifconfig sit1 inet6 add 2001:470:18:421::2/64
route -A inet6 add ::/0 dev sit1


route -A inet6查看路由

原文地址:https://www.cnblogs.com/itfat/p/7267620.html