配置 IPv6 - CentOS OVH - 无法 ping 通

配置 IPv6 - CentOS OVH - 无法 ping 通

我无法从服务器外部和内部 ping 我的 IPv6,我无法 ping 任何 IPv6。我的 IPv6:2001:41d0:2:XXXX::/64

我使用 CentOS 6.6 和支持 IPv6 的 Xen 内核。我的提供商是 OVH,我遵循了以下指南:http://guide.ovh.com/Ipv4Ipv6http://www.cyberciti.biz/faq/rhel-re...配置/ 这是我的配置:

猫/等/系统配置/网络

...
NETWORKING_IPV6=yes

猫/等/系统配置/网络脚本/ifcfg-eth0

DEVICE=eth0
BOOTPROTO=static
...
IPV6INIT=yes
IPV6_AUTOCONF=no
IPV6ADDR="2001:41D0:2:xxxx::/64"
IPV6_DEFAULTGW="2001:41d0:2:xxff:ff:ff:ff:ff"

cat /etc/sysconfig/network-scripts/route6-eth0

...
net.ipv6.conf.all.autoconf = 0 
net.ipv6.conf.default.autoconf = 0 
net.ipv6.conf.eth0.autoconf = 0
net.ipv6.conf.all.accept_ra = 0 
net.ipv6.conf.default.accept_ra = 0 
net.ipv6.conf.eth0.accept_ra = 0
net.ipv6.conf.all.accept_redirects=0 
net.ipv6.conf.all.router_solicitations=1
net.ipv6.conf.default.proxy_ndp=1
net.ipv6.conf.all.proxy_ndp=1 
net.ipv6.conf.default.forwarding=1
net.ipv6.conf.all.forwarding = 1

网络重启:service network restart

我添加了一条路线:route -A inet6 add default gw 2001:41d0:2:xxff:ff:ff:ff:ff dev eth0

Ip6tables 已禁用。

配置文件

eth0      ...
          inet6 addr: 2001:41d0:2:xxxx::/64 Scope:Global
          inet6 addr: fe80::230:48ff:fefd:7a86/64 Scope:Link

跟踪路由 ipv6.google.com

traceroute to ipv6.google.com (2a00:1450:4007:80d::200e), 30 hops max, 80 byte packetsping ipv6.
 1  2001:41d0:2:xxxx::)  3005.167 ms !H  3005.118 ms !H  3005.089 ms !H

ping ipv6.google.com

ping: unknown host ipv6.google.com

从 IPv6 进行 Ping 也失败了。


我像这样更改 IPv6:2001:41d0:2:XXXX::1234/64

我有一个用于 IPv6 路由的文件:

cat /etc/sysconfig/network-scripts/route6-eth0

2001:41D0:2:xxff:ff:ff:ff:ff dev eth0
default via 2001:41D0:2:xxff:ff:ff:ff:ff

我重新启动了网络服务并收到以下警告消息:

服务网络重启

Shutting down interface eth0:                              [  OK  ]
Shutting down loopback interface:                          [  OK  ]
Bringing up loopback interface:                            [  OK  ]

全局 IPv6 转发在配置中被禁用,但目前
在内核中并未被禁用

请使用‘/sbin/service network restart’重新启动网络

警告:[ipv6_add_route]‘没有到主机的路由’通过网关‘2001:41d0:2:xxff:ff:ff:ff:ff’通过设备‘’添加路由‘::/0’[确定]

ping6 2001:41d0:2:xxff:ff:ff:ff:ff

PING 2001:41d0:2:xxff:ff:ff:ff:ff(2001:41d0:2:xxff:ff:ff:ff:ff) 56 个数据字节

来自 2001:41d0:2:xxxx::1234 icmp_seq=1 目标不可达:地址不可达

答案1

地址 2001:41d0:2:XXXX::/64 的主机部分全为零。请尝试分配一个合适的地址,例如 2001:41d0:2:XXXX::YYYY/64。

在尝试 ping Internet 上的主机(如 ipv6.google.com)之前,请检查是否可以通过其数字地址 2001:41d0:2:xxff:ff:ff:ff:ff ping 默认网关。

还要检查上述地址中的 XXXX == xxff。否则您的 CentOS 计算机将无法到达默认网关,至少在没有 OVH 指南页面上提供的附加路由命令的情况下无法到达。

答案2

正如 Tilman Schmidt 已经指出的那样,您的主机部分为全零。但是,我在 LXC 容器中启用 IPv6 也遇到了麻烦。这在 CentOS 7 上对我有用:

/etc/sysconfig/网络脚本/ifcfg-eth0, 添加:

IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_FAILURE_FATAL=yes
IPV6ADDR_SECONDARIES="2001:41D0:2:xxxx::1/64"

(显然,删除多余的行)

对我来说没有必要运行route,编辑路由6-eth0或者更改 sysctl 值。只需将主地址设置为辅助地址即可。我在 NetworkManager 开启和关闭的情况下都进行了测试。

抱歉,我无法解释为什么会发生这种情况。看起来,LXC 上的 CentOS 7 中的网络配置忽略了静态配置的 IPv6,并且没有从路由器广告中获取地址。我在 Debian Wheezy 上也发现了同样的问题(尽管我没有解决方案)。

答案3

你让它工作了吗?如果没有,请从

IPV6ADDR="2001:41D0:2:xxxx::/64"

IPV6ADDR="2001:41D0:2:xxxx::/56"

然后使用 重新启动网络接口service network restart。使用 测试 IPv6 网关现在是否可以访问ping6 2001:41d0:2:xxff:ff:ff:ff:ff

OVH IPv6 指南具有误导性,我也遇到了同样的问题,直到我注意到他们的前缀长度错误以适应他们的 IPv6 网关设置。

参考: http://blog.nirkabel.org/2018/05/14/vmware-esxi-on-ovh-coms-dedicated-server-additional-ipv4-subnet-and-native-ipv6-connectivity/

相关内容