Le fournisseur de services Internet auquel je travaille est en train de mettre en place un réseau IPv6 interne en vue de la connexion éventuelle à Internet IPv6. En conséquence, plusieurs des serveurs de ce réseau essaient maintenant de se connecter à security.debian.org via son adresse IPv6 par défaut lors de l'exécution apt-get update
, ce qui oblige à attendre un long délai d'attente chaque fois que je télécharge des mises à jour de quelque sorte que ce soit. .
Existe-t-il un moyen de prédire qu’il est préférable de préférer IPv4 ou d’ignorer complètement IPv6?
/etc/gai.conf
afin quesecurity.debian.org
est un enregistrement sont retournés avant que l'enregistrement AAA, mais je ne sais pas exactement quoi mettre dans ce fichier.Réponses:
Ajouter
-o Acquire::ForceIPv4=true
lors de l'exécutionapt-get
.Si vous voulez rendre le paramètre persistant, créez simplement /etc/apt/apt.conf.d/99force-ipv4 et insérez-
Acquire::ForceIPv4 "true";
le:Les options de configuration
Acquire::ForceIPv4
etAcquire::ForceIPv6
ont été ajoutées à la version 0.9.7.9 ~ exp1 (voir bug 611891 ) qui est disponible depuis Ubuntu Saucy (publié en Octobre 2013) et Debian Jessie (sorti en Avril 2015).la source
apt.conf
écrits, vous devez l'écrire comme ceci:Acquire::ForceIPv4 "true";
(avec des guillemets)sudo echo 'test' > file
cela ne fonctionnerait pas car la redirection est exécutée avec les permissions de l'utilisateurComme Gilles dit , utilisez
gai.conf
. Remarques:getaddrinfo
.gai.conf
, vous devez le sauvegarder et également le lire (ne vous inquiétez pas, c'est court). Les modifications ci-dessous sont probablement déjà mentionnées dans votre fichier actuel. Si le fichier en cours indique quelque chose de différent de ce qui est mentionné ci-dessous, vous devriez probablement préférer le contenu de votre fichier en cours.Mais si c'est ce que vous voulez (ce qui est probablement le cas), poursuivons. Disons que nous avons deux hôtes
www.he.net
etwww.ripe.net
:Cas 1: préférez IPV4 pour tous les hôtes
Ajouter à
/etc/gai.conf
la ligne suivante:Après avoir enregistré le fichier modifié (sans avoir besoin de redémarrer), vous devriez voir les applications en réseau (par exemple,
telnet
) utilisant IPV4: par exemple,Cas 2: préférez IPV6 pour des hôtes spécifiques
Si nous souhaitons préférer IPV6 uniquement à
www.he.net
son réseau ou à son réseau, nous pouvons ajouter un masque / préfixe pour tout ou partie de son adresse IPV6/etc/gai.conf
. Par exemple, la ligne suivante:(après avoir sauvegardé le fichier édité) produit
Cas 3: préférez IPV4 pour des hôtes spécifiques
Si nous inversons le masque, l'inverse sera-t-il vrai? Selon @GrueMaster, ajouter
travaillé pour lui après avoir désactivé IPV6 pour
security.ubuntu.com
(sinon, il cale pour toujours).Voir également:
la source
#security.debian.org has IPv6 address 2610:148:1f10:3::73 \n #security.debian.org has IPv6 address 2001:4f8:8:36::6 \n precedence 2001:4f8::/96 100 \n precedence 2610:148::/96 100
à mon fichier /etc/gai.conf et apt-get update fonctionne parfaitement maintenant.Vous pouvez configurer apt-cacher-ng sur un ordinateur de secours pour qu’il joue le rôle de proxy / cache pour tous vos hôtes. Vous pouvez forcer la configuration à n’utiliser que des hôtes spécifiques ou le truc / etc / hosts suggéré par @badp sur cet ordinateur.
Une fois que vous avez configuré apt-cache-ng, il vous suffit de supprimer la ligne suivante (avec l'adresse IP / le nom d'hôte modifié pour pointer sur votre machine cachée) dans /etc/apt/apt.conf.d/90httpproxy
J'utilise cette configuration pour réduire l'utilisation de la bande passante, mais il convient de contourner votre problème. Malheureusement, je ne connais pas de moyen de désactiver directement les recherches ipv6 pour apt-get lui-même.
la source
Vous pouvez contourner ce problème en configurant un serveur proxy DNS qui a abandonné les réponses ip6.
la source
Que diriez-vous d'ajouter une ligne en
/etc/hosts
remplaçant les adresses pertinentes? par exemple,la source
/etc/hosts
d'adresses IP que je ne possède pas moi-même.Détournement de vieux sujet, mais confronté au même problème récemment. Donc, sur la base des conseils donnés ci-dessus et des résultats de host et whois :
Problème résolu d'une manière légèrement différente - réduction de la priorité des réseaux IPv6 contenant security.debian.org dans /etc/gai.conf :
Ainsi, IPv6 est toujours préféré, sauf pour security.debian.org .
la source
Le 8 octobre 2014, j'avais le même problème en essayant de mettre à jour Debian derrière un proxy sur un réseau local. Dans l'espoir que cela intéressera les autres, je poste ici ma réponse. Comme d'autres l'ont mentionné, l'édition
/etc/hosts
est une chose à laquelle il faut faire attention.Mais personnellement, je voulais juste faire la mise à jour.
Contenu de /etc/apt/sources.list lors de la mise à jour (c'était différent avant la mise à jour ..):
Contenu de /etc/apt/apt.conf:
Ajout à / etc / hosts:
Maintenant, courir en
apt-get update ; apt-get upgrade
tant que root a bien fonctionné.Comme mentionné dans d'autres réponses, utilisez, exécutez la commande host sur le domaine pour obtenir l'adresse IP correcte à insérer dans le fichier hosts.
Exemple:
Cela a mis à jour le système avec succès
Debian GNU/Linux testing (jessie)
. Vous voudrez peut-être ne pas utiliser les référentiels de test, puis le supprimer simplement des sources. Les référentiels de test fournissent des mises à jour plus récentes de plusieurs packages, mais ne sont pas considérés comme stables.la source
hosts
fichier est une solution hautement sous-optimale.J'ai trouvé un meilleur moyen de le faire. Ouvrez votre
sources.list
fichier et notez les noms d’hôtes du dépôt. Obtenez leurs adresses IPv4 , puis modifiez-lessources.list
avec les adresses IPv4 plutôt qu'avec les noms d'hôte. Apt-get devrait maintenant contacter les référentiels via les adresses IPv4 spécifiées, en contournant IPv6.L'inconvénient est que les opérations de pension ont généralement une sorte d'équilibrage de charge et / ou de géolocalisation IP, que cette méthode contourne bien sûr. Cependant, peu importe si seulement quelques personnes le font. Si vous constatez qu'un miroir est lent, essayez d'obtenir une autre adresse IP de référentiel (par exemple, en utilisant un service de ping en ligne) et utilisez-la.
la source
Vous pouvez essayer si cela fonctionne pour vous
-> remplacez le nom de votre interface
la source