我刚刚在 VMWare Player 中创建了一个虚拟 Ubuntu 机器,但 ipv6 不起作用。
当我尝试使用
ping6 www.google.be
我明白了
connect: Network is unreachable
当我使用 Wireshark 时,我发现我没有发送任何 Icmpv6 数据包。
我该如何修复它?有人知道吗?
编辑:
我可以使用 ipv6 ping 我的路由器。因此,我可以发送 Icmpv6 数据包。
该问题是否与 ipv6 自动配置有关?
答案1
如何知道 IPv6 是否在 ubuntu 上配置并运行?
运行命令:
[ -f /proc/net/if_inet6 ] && echo 'IPv6 OK' || echo 'No IPv6'
如果输出是
IPv6 OK
然后您的系统就可以使用 IPV6 了。
现在运行命令:
lsmod | grep -qw ipv6 && echo "IPv6 kernel driver loaded and configured." || echo "IPv6 not configured and/or driver loaded on the system."
如果输出是:
IPv6 kernel driver loaded and configured.
这意味着 IPV6 已配置,您可以使用它,但如果(这是您上述评论的情况)答案是
IPv6 not configured and/or driver loaded on the system.
这意味着您的系统中尚未配置 IPV6,因此您还不能使用 IPV6。
如何在 Ubuntu 中启用 IPV6
运行此命令:
sudo modprobe ipv6
现在测试一下这是否有效:
lsmod | grep ipv6
输出应该是这样的:
ipv6 XXXX xX
来源及更多信息:http://www.tldp.org/HOWTO/Linux+IPv6-HOWTO/systemcheck-kernel.html
答案2
今天我也遇到了这个问题。来自Maxthux的回答。
[ -f /proc/net/if_inet6 ] && echo 'IPv6 OK' || echo 'No IPv6'
返回 ok
lsmod | grep -qw ipv6 && echo "IPv6 kernel driver loaded and configured." || echo "IPv6 not configured and/or driver loaded on the system." returns IPv6 not configured and/or driver loaded on the system.
并且对 的空输出sudo modprobe ipv6
没有影响。lsmod | grep ipv6
经过大约一下午的寻找,我找到了出路。
这是我的 ipv6 的详细设置。
我使用 digitalocean 的 vps,大约一年来只使用 ipv4。最近为了 ios 应用,我必须为我的 vps 设置 ipv6。我参考了这篇文章,它有点太旧了,所以有一些变化。
A:登录 degitalocean droplet 管理页面,点击 droplet 页面上的 ipv6 启用链接。这里可能会要求您在启用 droplet 之前先将其关闭。启用后,在网络页面上您可以看到下图。这里我屏蔽了 ip 信息。
乙:临时添加ipv6地址。用ssh登录系统,使用以下命令:
ip -6 addr add new_IPv6_address_in_range/64 dev eth0
并检查ip -6 addr show eth0
您可以在这里host -t AAAA google.com
root@xx:~# host -t AAAA google.com
google.com has IPv6 address 2404:6800:4003:c00::71
但ping6 2404:6800:4003:c00::71
会导致
连接:网络不可连接
C:添加额外的 ipv6 地址
sudo nano /etc/network/interfaces
将下面的内容添加到此文件,然后根据您的 droplet 页面更改地址和网关。
iface eth0 inet6 static
address primary_ipv6_address
netmask 64
gateway ipv6_gateway
autoconf 0
dns-nameservers 2001:4860:4860::8844 2001:4860:4860::8888 209.244.0.3
然后重新启动系统:
重启后,检查。
root@xx:~# host -t AAAA google.com
google.com has IPv6 address 2404:6800:4003:c00::66
root@xx:~# ping6 -c4 2404:6800:4003:c00::66
PING 2404:6800:4003:c00::66(2404:6800:4003:c00::66) 56 data bytes
64 bytes from 2404:6800:4003:c00::66: icmp_seq=1 ttl=51 time=2.08 ms
64 bytes from 2404:6800:4003:c00::66: icmp_seq=2 ttl=51 time=2.01 ms
64 bytes from 2404:6800:4003:c00::66: icmp_seq=3 ttl=51 time=1.83 ms
64 bytes from 2404:6800:4003:c00::66: icmp_seq=4 ttl=51 time=1.81 ms
--- 2404:6800:4003:c00::66 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3005ms
rtt min/avg/max/mdev = 1.815/1.937/2.085/0.118 ms