linux下ipv6访问不了怎样解决

linux下ipv6访问不了怎样解决,第1张

Linux在内核版本2.2.0以后就支持IPv6了,可查看/proc/net/if_inet6文件是否存在以确定你的系统是否支持IPv6。如果没有,可尝试如下命令加载IPv6模组:# modprobe ipv6成功加载后就可以使用IPv6环境了,系统会自动获得IPv6地址。IPv6相关命令:# ifconfig eth0 inet6 add 2001:da8:2004:1000:202:116:160:41/64 (手工添加配置固定IPv6地址)# route -A inet6 add default gw 2001:da8:2004:1000::1 (添加默认路由)# ping6 ipv6.scau.edu.cnPING ipv6.scau.edu.cn(2001:da8:2004:1000:202:116:160:48) 56 data bytes64 bytes from 2001:da8:2004:1000:202:116:160:48: icmp_seq=0 ttl=64 time=0.020 ms64 bytes from 2001:da8:2004:1000:202:116:160:48: icmp_seq=1 ttl=64 time=0.019 ms64 bytes from 2001:da8:2004:1000:202:116:160:48: icmp_seq=2 ttl=64 time=0.014 ms看到这样的显示则表明IPv6已配置成功。

1.不通是什么概念?TCP不通还是ICMP不通?

2.内向外不通还是外向内不通?

3.外部不通的那个对端是同一子网还是不同子网?

4.你的双网卡配置了两个默认网关,这种做法是错的。你需要在其中一个网口上指定一个默认网关,另一个网口用静态路由逐条指定。

比如,上网通过eth0,gateway=10.213.1.1这个没错。

访问另外几个局域网172.16.0.0/16、192.168.111.0/24通过eth1

ip route add 172.16.33.0/16 via 192.168.2.1

ip route add 192.168.111.0/24 via 192.168.2.1

如果不通的对端是其他子网,用ip route 或者route -n看看你的路由表是否正确。不正确的路由表删除,删除方法类似上面两个命令,add换成del

5.其他检查方法

a.fconfig eth1看看你的IP是否设置正确,并真实存在

b.用mii-tool看看你的物理连接是否网线松动

c.看看iptables

iptables -nvL INPUT

如果有规则,就清空规则:

redhat、fc、centos用一条命令搞定:

service iptables stop

其他版本用三个命令:

iptables -P INPUT ACCEPT

iptables -F

iptables -X

三楼说用ip rules,简单问题复杂化了,那是网关的做法。

先看看你的步骤到位没有:

1、编辑 vim /etc/modprobe.d/disable_ipv6.conf 文件(需要root权限)

disable 设置成 0

options ipv6 disable=01

2、编辑 vim /etc/sysconfig/network 文件(需要root权限)

NETWORKING_IPV6 设置成 yes

NETWORKING_IPV6=yes1

然后执行 service network restart 重启

3、编辑 /etc/sysctl.conf 文件(需要root权限)

net.ipv6.conf.all.disable_ipv6 = 0

net.ipv6.conf.default.disable_ipv6 = 0

net.ipv6.conf.lo.disable_ipv6 = 0

4、再运行 sysctl -p 的命令,启用IPv6 (需要root权限)

就不会报错了


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8972440.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-23
下一篇 2023-04-23

发表评论

登录后才能评论

评论列表(0条)

保存