Die Verbindung zu archive.ubuntu.com dauert zu lange

50

Ich habe einen Ubuntu 11.10 Server, den ich gerade neu installiert habe. Wenn ich versuche, etwas damit zu tun apt-get, versucht es, eine Verbindung archive.ubuntu.comherzustellen. Es bleibt [Connecting to archive.ubuntu.com (2001:67c:1360:8c01::1a)]etwa 2 Minuten lang in der Phase. Danach beginnt es tatsächlich zu kommunizieren und Inhalte herunterzuladen.

Irgendwann verbindet es sich immer, wartet aber in der [Connecting to archive.ubuntu.com (2001:67c:1360:8c01::1a)]Phase jedes Mal für etwa 2 Minuten!

Ich hatte dieses Problem zuvor nicht unter Ubuntu 11.10, direkt nach der Neuinstallation des Betriebssystems.

Irgendwelche Ideen, wo das Problem liegen könnte?

Ahmad
quelle
Ich frage mich, ob es damit zu tun hat, dass Sie IPv6 verwenden. Sind Sie in einem IPv6-Netzwerk?
Thomas Ward
Nein, das glaube ich nicht. Ich habe so etwas nicht konfiguriert ..
Ahmad
Die IPs in Ihren enthaltenen Nachrichten sind IPv6. Das deutet darauf hin, dass IPv6 verwendet wird, und wenn ich mich nicht irre, gibt es nicht so viele IPv6-Server für das Archiv.
Thomas Ward
1
@ Ahmad Da Sie Ihr Problem gelöst und die Lösung geschrieben haben, posten Sie sie bitte als Antwort (und Sie können sie dann auch außerhalb Ihrer Frage bearbeiten). Bitte beachten Sie, dass Sie nicht warten müssen, um dies zu tun. Nur Benutzer mit weniger als 100 Ruf müssen warten, bevor sie ihre eigenen Fragen beantworten können. Sie können sogar Ihre eigene Antwort als angenommen markieren (obwohl Sie dafür zwei Tage warten müssen, nachdem Sie die Frage gestellt haben).
Eliah Kagan
Fertig .. Jetzt muss ich nur noch 22 Stunden warten, um meine eigene Antwort zu akzeptieren :)
Ahmad

Antworten:

87

Ich habe dieses Problem am 12.10 gelöst, indem ich /etc/gai.conf bearbeitet und die Zeile auskommentiert habe :

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

Auf diese Weise können Sie IPv6 aktiviert lassen, aber die Rangfolge so festlegen, dass IPv4 IPv6 vorgezogen wird.

UberSteve
quelle
13
Ich soll nicht als Kommentar schreiben, aber ich denke, es sollte gesagt werden, ur mein Held Tytytytytyty
MageProspero
1
Dies ist die Antwort
kbuilds
3
Bestätigt auch auf Ubuntu 14.04 / ElementaryOS freya!
Oikonomopo
2
perfekt! hat einen Charme gewirkt!
John
2
Noch gültig für Xubuntu 15.04
Dag
16

Lösung:

Ich habe das Problem herausgefunden. Ich musste die IPv6-Konnektivität deaktivieren, wie The Lord Of Time betonte.

Wenn Sie den folgenden Befehl in Terminal ausführen, erfahren Sie, ob IPv6 aktiviert ist oder nicht:

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

0bedeutet, dass es aktiviert ist, während es 1deaktiviert ist.

Geben Sie Folgendes ein, um IPv6 in Terminal zu deaktivieren:

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

Führen Sie den ersten Befehl erneut aus, und es sollte 1jetzt sein.

Ahmad
quelle
Ich habe diese Datei nicht ...
Amadib
Das Deaktivieren von IPv6 ist keine Lösung. Es ist eine Problemumgehung. Wir brauchen IPv6 und das Deaktivieren wird definitiv nicht empfohlen. Die richtigen Lösungen zwingen APT entweder dazu, nur ipv4 zu verwenden, oder stellen die Priorität wie in der oberen Lösung gezeigt ein.
Dienstag,
7

Wenn Sie nur apt-get ändern möchten, können Sie IPv4 erzwingen mit:

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

Erstellen Sie die Datei 99force-ipv4 in /etc/apt/apt.conf.d/, um die Einstellung dauerhaft zu machen.

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

Fügen Sie den folgenden Inhalt ein:

Acquire::ForceIPv4 "true";

Speichern Sie die Datei und Sie können loslegen. Wenn Sie stattdessen IPv6 erzwingen möchten, ändern Sie den Dateinamen und die Einstellungen von 4 auf 6. Um zwischen ihnen zu wählen, testen Sie mit der schnellen Methode und finden Sie heraus, welche besser funktioniert.

Luke
quelle