连接到archive.ubuntu.com花费的时间太长


50

我有一台刚安装的Ubuntu 11.10服务器。现在,如果我尝试进行任何操作apt-get,它将尝试连接到archive.ubuntu.com..它会保持大约[Connecting to archive.ubuntu.com (2001:67c:1360:8c01::1a)]2分钟的相位,此后它实际上开始通信并下载内容...

最终它总是连接着,但是[Connecting to archive.ubuntu.com (2001:67c:1360:8c01::1a)]每次都在阶段等待约2分钟!

重新安装操作系统后,在Ubuntu 11.10上我以前没有这个问题。

关于可能的问题有什么想法?


我想知道这是否与您使用IPv6有关。您在IPv6网络上吗?
托马斯·沃德

不,我不这么认为。我还没有配置任何此类的东西..
艾哈迈德(Ahmad)

您包含的消息中的IP是IPv6。这表明它使用IPv6,如果我“。我们把有没有那么多的IPv6的服务器进行归档。
托马斯·沃德

1
@Ahmad因为您已经解决了问题并编写了解决方案,所以请将其发布为答案(然后您也可以从问题中进行编辑)。请注意,您无需等待即可执行此操作;只有信誉低于100的用户必须等待才能回答自己的问题。您甚至可以将自己的答案标记为已接受(尽管如此,您必须等到发布问题通过后两天)。
伊利亚·卡根

完成..现在我只需要等待22个小时,就可以接受自己的回答了:)
艾哈迈德(Ahmad)

Answers:


87

我通过编辑/etc/gai.conf并取消注释该行在12.10上解决了此问题:

#
#    For sites which prefer IPv4 connections change the last line to
#
precedence ::ffff:0:0/96 100

这样可以使IPv6保持启用状态,但可以设置优先顺序以使IPv4优先于IPv6。


13
我不应该写ty作为评论,但我认为应该说我的英雄tytytytyty
MageProspero 2013年

1
这就是答案
kbuilds

3
在Ubuntu 14.04 / ElementaryOS freya上也得到确认!
oikonomopo 2014年

2
完善!发挥了魅力!
约翰

2
仍然适用于Xubuntu 15.04
Dag

16

解:

我解决了这个问题。正如时间之王指出的那样,我不得不禁用IPv6连接。

在终端中运行以下命令,了解是否启用了IPv6:

cat /proc/sys/net/ipv6/conf/all/disable_ipv6

0表示已启用,而1表示已禁用。

要在终端中禁用IPv6,请输入以下内容:

echo "#disable ipv6" | sudo tee -a /etc/sysctl.conf
echo "net.ipv6.conf.all.disable_ipv6 = 1" | sudo tee -a /etc/sysctl.conf
echo "net.ipv6.conf.default.disable_ipv6 = 1" | sudo tee -a /etc/sysctl.conf
echo "net.ipv6.conf.lo.disable_ipv6 = 1" | sudo tee -a /etc/sysctl.conf
sudo sysctl -p

重新运行第一个命令,它应该是1现在。


我没有该文件...
amadib

禁用IPv6 不是解决方案。这是一种解决方法。我们需要IPv6,因此绝对不建议禁用它。正确的解决方案是强制APT仅使用ipv4,或者如最佳解决方案中所示设置优先级。
mniess

7

如果只想修改apt-get,则可以使用以下命令强制使用IPv4:

apt-get -o Acquire::ForceIPv4=true update

要使设置持久化,请在/etc/apt/apt.conf.d/中创建文件99force-ipv4。

sudoedit /etc/apt/apt.conf.d/99force-ipv4

将以下内容放入其中:

Acquire::ForceIPv4 "true";

保存文件,一切顺利。如果要强制使用IPv6,请在文件名和设置中将4更改为6。要在其中之一中进行选择,请使用快速方法进行测试,看看哪种方法更好。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.