我目前已通过以太网连接到互联网。但是,我无法连接到互联网。运行命令
sudo apt-get update
我明白了
Cannot initiate the connection to security.Ubuntu.com:80 (2001:67c:1562::18)
我尝试过如下操作:
nmcli n on
我已经尝试过此操作关联。
我几乎尝试了堆栈交换上的所有方法(更改/etc/resolv.conf
并添加了名称服务器 8.8.8.8)。
我可以 ping 任何服务器,数据包传输率为 100%,数据包接收率为 100%。
我无法运行,ifconfig -a
因为它尚未安装,并且由于与安装时遇到的相同错误,我无法安装它sudo apt-get update
。
任何帮助将不胜感激
答案1
您的计算机正在尝试连接到 IPv6 地址的服务器。我假设您正在尝试 ping 从 IPv4 地址响应的服务器。
诊断
为了进行更详细的诊断,我需要查看对命令的响应:
ip addr
ip neigh
ip route
ip -6 route
ping 8.8.8.8
ping6 2001:4860:4860::8888
traceroute 8.8.8.8
traceroute 2001:4860:4860::8888
dig -t a dns.google
dig -t aaaa dns.google
dig -t aaaa dns.google @2001:4860:4860::8888
nc -4zv www.google.com 80
nc -6zv www.google.com 80
可以traceroute
通过以下方式安装
apt update
apt install traceroute
netcatnc
可以通过以下方式安装
apt update
apt install netcat-openbsd
由于您的更新不起作用,您可能无法安装traceroute
和netcat-openbsd
软件包。因此,我针对可能出现的故障提出了解决方案。
可能的原因
可能的原因是您的计算机没有正确设置 IPv6 接口,或者您的 LAN 没有可用的 IPv6 Internet 连接。
建议的解决方案
在您的计算机上禁用 IPv6,重新启动网络接口,或者重新启动整个计算机,然后再次尝试连接到服务器。
暂时禁用 IPv6
不需要重新启动,无需进一步操作即可立即工作。
echo 1 > /proc/sys/net/ipv6/conf/all/disable_ipv6
重新启用:
echo 0 > /proc/sys/net/ipv6/conf/all/disable_ipv6
永久禁用 IPv6
需要重启。通过编辑配置文件进行更改/etc/sysctl.conf
,例如
sudo vi /etc/sysctl.conf
然后将以下行添加到文件末尾:
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
保存,重启机器。