Problème lors de la résolution de nombreuses pages Web


38

J'utilise actuellement Ubuntu 12.04 et utilise Chrome / Firefox avec OpenDNS (j'ai essayé le DNS public de Google ainsi que le DNS de mon fournisseur de services Internet).

Soudain, beaucoup de sites Web que je visite fréquemment ne se chargent plus. Certains d'entre eux sont imgur, yahoo, fed-sudoku , microsoft et addons page de firefox. Je suis sûr qu'il y en a beaucoup d'autres qui ne se chargent pas.

J'ai Windows 7 en Dual-Boot et il n’ya aucun problème à ouvrir ces pages sous Windows.

Bref historique

Il y a deux semaines, j'ai installé Ubuntu 12.10. J'ai tout de suite fait face à ce problème. Je pensais que quelque chose s'était mal passé lors de l'installation. J'ai donc retiré Ubuntu 12.10 et installé Lubuntu 12.10, mais le problème persiste. J'ai donc essayé d'ouvrir ces pages Web dans Live Environments (d'Ubuntu 12.10, Lubuntu 12.10 et Ubuntu 12.04.1) à partir de l'USB. La question était là pour Ubuntu 12.10 et Lubuntu 12.10. Cependant, j'ai pu accéder à ces pages Web à partir d'Ubuntu 12.04.1. J'ai donc installé 12.04.1 sur mon disque dur. Le 12 avril, tout allait bien jusqu'à hier. mais tout à coup, ces sites ne se chargent plus. Windows 7 en Dual-Boot fonctionne parfaitement.

Mises à jour

(1) En réponse à la réponse de Zhang à vérifier basic terminal commands- j'ai utilisé les DNS OpenDNS et GooglePublic pour tester ces commandes (redémarré mon PC entre les deux). Ce sont les sorties du terminal lors de l’ utilisation d’OpenDNS et lors de l’ utilisation de GooglePublicDNS .

(2) Ceci est le résultat de ifconfig- Pastebin Link .

(3) Ensuite, j'ai essayé de wgetvérifier si le problème venait du navigateur. Cependant, cela n'a pas fonctionné pour les pages Web qui ne se chargent pas dans mon navigateur. C'est le lien Pastebin le montrant pour Google (travaux) et Yahoo (ne fonctionne pas).

(4) Suivez ensuite les instructions répertoriées dans noobslab pour disable IPV6. Aussi, redémarré mon PC. Cependant, cela n'a pas aidé non plus.

(5) Ensuite, j'ai modifié ma connexion filaire via Network-Manager pour ignore IPV6. Après cela, j'ai essayé d'ouvrir Yahoo dans Browser - il s'est chargé la première fois. Cependant, lorsque j'ai réessayé, cela ne s'est pas chargé. Les autres sites à problèmes ne se sont pas chargés du tout.

(6) Encore essayé wget. Cependant, cette fois passé l'argument -4à elle; c'est à dire; wget -4 www.yahoo.com. Mais encore une fois, je n’ai reçu aucune réponse.

(7) Puis, essayé de tripoter MTU. Suivi ce lien pour vérifier quel est le maximum que je peux définir. Pour moi, le maximum possible était 10324. Nous avons également essayé d'autres valeurs telles que 1500, 1492, 1452 et 100. Mais cela n'a pas aidé non plus.

(8) Re-installed Ubuntu 12.04.1 , en effaçant l’installation précédente et en tant que telle toutes les autres modifications. Également installé toutes les mises à jour disponibles. Pendant la première demi-heure, j'ai pu charger toutes les pages Web, y compris celles qui présentaient un problème. Mais plus tard, j'ai le même problème que précédemment - impossible de charger des pages comme Yahoo, Imgur, Microsoft, Fed-Sudoku, etc.

(9) Question de laurent

D'après les informations de wget pastebin dans la question, le problème n'est pas le DNS, car les commandes wgetet digatteignent l'IP de Yahoo. Ceci dit, je ne sais pas pourquoi rien ne télécharge avec wget! Avez-vous défini un pare-feu? (vous pouvez vérifier avec sudo iptables -L). Dans les ifconfigrésultats, il y a 2 interfaces, ppp0 et eth0. Lequel devrait être utilisé pour se connecter à Internet? Pourriez-vous poster le résultat de la routecommande? Obs: eth0 n'a pas d'adresse IPV4 donc je pense qu'il n'est pas configuré correctement (comment est-il /etc/network/interfaces?)

Voici le lien Pastebin pour les sorties terminales de sudo iptables -L; route et cat /etc/network/interfaces. Je ne cours pas de pare-feu. C'est une nouvelle installation d'Ubuntu 12.04.1. ppp0 est utilisé pour se connecter à Internet (nom d'utilisateur et mot de passe fournis par mon fournisseur d'accès) et eth0 est le réseau local OnBoard d'Intel qui connecte le modem via un port Ethernet.

(10) J'ai essayé d’ajouter une nameserver 208.67.222.222ligne dans /etc/resolv.conf(depuis, j’utilise OpenDNS). Mais cela n'a pas aidé (même après le redémarrage). Alors annulé les changements. C'est également une partie de la réponse fournie par laurent - elle est indispensable si je veux utiliser OpenDNS.

Autre info

  • J'ai un modem ADSL (pas un routeur) connecté au PC avec un port Ethernet. Pour me connecter à Internet, j'ai une connexion DSL. Donc, j'utilise PPPOE pour me connecter.
  • Sortie du terminal pour les informations système sudo lshw -C network; cat /etc/resolv.conf; ifconfig -a- Lien Pastebin

Réponses:


21

Partie 1 - La connexion PPPoE ne fonctionne pas

Je voudrais essayer de désactiver le gestionnaire de réseau et de configurer le réseau manuellement, comme expliqué dans l' aide Ubuntu ADSLPPPoE . Utilisez d’abord la Config with pppoeconfpartie qui court sudo pppoeconfet qui répond aux questions. Comme vous devez utiliser un serveur DNS différent de celui de votre fournisseur de services Internet, répondez noà la question relative à l'utilisation du serveur DNS homologue.

Facultatif si votre connexion Internet n'est pas redémarrée au démarrage: Vous pouvez modifier nano /etc/rc.local, ajouter les lignes suivantes avant la exitligne et redémarrer pour la tester.

killall pppd
ifconfig eth0 up
pon dsl-provider

Le gestionnaire de réseau ne sera pas utilisé lorsque vous utiliserez la configuration manuelle, mais vous pouvez le désactiver en cliquant dessus et en désélectionnant l'option enable network(et le enable wirelesscas échéant). Si la désactivation ne fonctionne pas, vous pouvez également la désinstaller avec sudo apt-get remove network-manageret après sudo apt-get autoremovepour nettoyer les packages installés automatiquement.

Partie 2 sur 3: Changer le serveur DNS par défaut du fournisseur de services Internet en openDNS

J'ai trouvé ici que la meilleure façon d'utiliser un DNS statique resolvconfest d'ajouter le serveur de noms /etc/network/interfacesou de l'ajouter /etc/resolvconf/resolv.conf.d/head. Comme vos interfaces sont automatiquement configurées (dhcp), vous devez utiliser le headfichier:

sudo nano /etc/resolvconf/resolv.conf.d/head

et ajouter à la fin:

nameserver 208.67.222.222
nameserver 208.67.220.220

Limites

  • Vous ne pouvez pas utiliser Network-Manager pour vous connecter. Cependant, cela vous connecte automatiquement à Internet. Sinon, vous pouvez vous connecter en exécutant pon dsl-provider. Pour vous déconnecter, vous devez être sudo, vous devez donc exécuter des sudo poffdéconnexions.
  • [Ce problème concerne uniquement Ubuntu 12.04.] Lors du démarrage d'Ubuntu (avec le modem désactivé ou pendant qu'il tente d'établir une liaison avec le fournisseur de services Internet) - Ubuntu attend le chargement Network-Configurationpendant environ 2 minutes, puis s'initialise sans configuration réseau. Pour être en ligne, vous devez courir pon dsl-provider.

Corrections pour supprimer les tests précédents (non nécessaires dans les autres cas):

Comme nous avons supprimé le resolv.conflien symbolique auparavant, nous devons le recréer (inutile lors d'une nouvelle installation):

cd /etc
sudo rm resolv.conf
sudo ln -s ../run/resolvconf/resolv.conf /etc/resolv.conf

Si cela fonctionne, vous pouvez annuler les modifications /etc/dhcp/dhclient.confapportées précédemment.


Hey!! Qu'est-ce que tu as fait? Les sites à problème sont chargés à l'aide de cette méthode sudo pppoeconf. J'espère juste que ce n'est pas temporaire. Espérons que vous connaissez le problème maintenant. Est - il possible que je peux utiliser Network Manager au lieu d'exécuter les commandes pon dsl-provideret à poff dsl-providerchaque fois . Je vous remercie. Merci beaucoup :) :) :)
Aditya

4
Cette réponse inclut le conseil pour enlever le resolvconfpaquet. Ce paquet fait partie du système de base sous Ubuntu 12.04 et ultérieur. Il existe très peu de raisons légitimes pour retirer resolvconf, et je ne vois aucune de ces raisons s'appliquer ici. Si vous voulez vraiment avoir un fichier /etc/resolv.conf statique, il est préférable de laisser resolvconf installé et de remplacer le lien symbolique /etc/resolv.conf-> ../run/resolvconf/resolv.confpar un fichier statique. Cela est préférable car la présence de resolvconf empêche les autres packages d'écraser /etc.resolv.conf.
jdthood

2
Oui. Les paquets dans le référentiel principal Ubuntu qui ont historiquement écrit dans /etc/resolv.conf directement ont été modifiés afin qu'ils ne puissent pas écrire dans /etc/resolv.conf si le paquet resolvconf est installé. Donc, même si vous voulez juste un fichier /etc/resolv.conf statique, il est bon d’avoir installé resolvconf car il agira comme une sorte de prophylactique. Le programme resolvconf (/ sbin / resolvconf) ne touche jamais jamais directement à /etc/resolv.conf; il écrit dans /run/resolvconf/resolv.conf; et le package resolvconf fait une et une seule tentative pour configurer le lien symbolique dans /etc/resolv.conf.
Jdthood

1
@Aditya - OK édité en fonction de vos résultats. Pour répondre à votre question sur la rc.localmodification, elle ne doit être utilisée que si votre connexion Internet n’a pas été redémarrée au démarrage (comme ce n’était pas le cas dans 12.04 mais semble bien démarrer dans 12.10 pour pouvoir être supprimée). Le temps long pour le démarrage lorsque votre modem n'est pas opérationnel est dû au fait que vous utilisez un DNS différent qui n'est pas accessible lorsque la connexion n'est pas complètement établie. Si vous supprimez la dhclient.confmodification et utilisez uniquement celle- resolv.confci, cela ne se produira peut-être pas. Quoi qu'il en soit, je propose une manière différente de procéder dans une nouvelle édition.
laurent

1
Content que ça marche! Vous pouvez essayer sudo poff -ade voir s'il s'agit d'un problème de permission. Si cela résout le problème, voyez si votre utilisateur dispose des autorisations adéquates idet voyez si vous êtes dans dipet dans des dialoutgroupes. Sinon, vous pouvez ajouter avec sudo adduser your-user dialout. Pour vérifier ce qui se passe, utilisez tail /var/log/ppp.logafter poff(ou mieux tail -f /var/log/pppdans un terminal tout en utilisant poffun autre) pour voir pourquoi cela ne fonctionne pas.
laurent

11
  1. Vérifiez que votre client peut communiquer avec les serveurs OpenDNS.

    sudo traceroute -n -w 2 -q 2 -m 30  208.67.222.222
    

    Si la dernière ligne de la sortie ne répertorie pas 208.67.222.222 en tant que saut final, ou en cas de dépassement de délai important, il se peut qu'un problème de réseau vous empêche de contacter les serveurs openDNS.

  2. Vérifier que openDNS peut résoudre le nom d'hôte sélectionné

    dig @208.67.222.222 www.difficult.com.      
    

    À l'invite de commande, exécutez la commande suivante en remplaçant www.difficult.com. avec le nom que vous avez eu du mal à résoudre ( mettez un point à la fin du nom pour éviter les problèmes de suffixe de domaine et de listes de recherche)

    Si la sortie n'indique pas de réponse pour le nom d'hôte, continuez:

  3. Vérifier qu'un autre résolveur ouvert peut résoudre le nom d'hôte sélectionné

    dig @8.8.8.8 www.difficult.com.
    dig @8.8.8.4 www.difficult.com.
    dig @4.2.2.1 www.difficult.com.
    dig @4.2.2.2 www.difficult.com.
    

    Si vous obtenez un résultat positif, il peut y avoir un problème avec openDNS.

  4. Vérifiez si les serveurs de noms faisant autorité sont corrects

    intoDNS est très utile.


UPDATE :
Cette réponse n'a pas pu traiter le problème, juste pour le dépannage.
Si la résolution DNS a bien fonctionné, allez voir la réponse de laurent .


Référence: dépannage DNS public


D'après les informations de wget pastebin dans la question, le problème n'est pas le DNS, car les commandes wgetet digatteignent l'IP de Yahoo. Ceci dit, je ne sais pas pourquoi rien ne télécharge avec wget! Avez-vous défini un pare-feu? (vous pouvez vérifier avec sudo iptables -L)
laurent

Certes, dans les ifconfigrésultats, il y a 2 interfaces, ppp0 et eth0. Lequel devrait être utilisé pour se connecter à Internet? Pourriez-vous poster le résultat de la routecommande? Obs: eth0 n'a pas d'adresse IPV4 donc je pense qu'il n'est pas configuré correctement (comment est-il /etc/network/interfaces?)
laurent

2
Salut Zhang, désolé pour la confusion sur Super User. J'ai mis une prime sur cette question pour qu'elle reçoive plus d'attention. À votre santé!
Slhck

1
@slhck: Merci d'avoir fourni une prime sur cette question. AskUbuntu et la communauté Ubuntu sont géniaux ... je suis ravi ... A la vôtre !!!
Aditya

@Aditya, avez-vous un fichier /etc/ppp/resolv? Si oui, pourriez-vous regarder si votre DNS ISP y est écrit? et changez-le en openDNS IPs. Donc, vous pouvez changer l'attribut -i sur/etc/resolv.conf
laurent

3

Ajouter cette ligne à vous /etc/resolv.conf:

nameserver 8.8.8.8

J'utilise OpenDNS à partir de maintenant. Êtes-vous sûr que je devrais ajouter les serveurs DNS de Google?
Aditya

J'avais un problème comme le tien. Il suffit d’ajouter un DNS (même OpenDNS pourrait fonctionner) à votre resolv.conf comme dans ma réponse et de l’essayer.
Jasmin

2
En fait, votre ordinateur les utilisera tous dans l'ordre. Par conséquent, l'ajout d'un point à la fin peut faire fonctionner les choses, mais si les premiers serveurs de noms arrivent à expiration, votre système sera lent.
ImaginaryRobots

Notez que dans Ubuntu 12.04 et ultérieur, vous ne devriez normalement pas éditer /etc/resolv.conf car il est mis à jour dynamiquement par resolvconf. Si vous voulez vraiment un /etc/resolv.conffichier statique , laissez le paquet resolvconf installé et remplacez le lien symbolique dans /etc/resolv.conf par un fichier statique contenant (comme dans le présent exemple) nameserver 8.8.8.8.
Jdthood

3

Le problème initial aurait peut-être été résolu en procédant comme suit.

sudo apt-get install resolvconf
sudo dpkg-reconfigure resolvconf

Cela devrait aussi résoudre le problème sur le Live CD .. Si oui, je l'essayerais sur Ubuntu 12.10 Live CD ..
Aditya 17/12

Cela ne résoudra probablement rien sur un Live CD original Ubuntu 12.04 ou 12.10 original car il est connu que resolvconf est correctement installé sur ces CD. Mais de nombreux dérivés d'Ubuntu ont créé des CD avec des installations de resolvconf défectueuses. De telles installations défectueuses peuvent parfois être réparées en cours d'exécution sudo dpkg-reconfigure resolvconf.
jdthood

Le problème initial était que resolvconf était toujours installé (et sur des CD live), il était dû à pppoe config et non à DNS. Le problème d' resolv.confêtre réécrit avec l'OP ISP DNS au lieu d'OpenDNS est apparu lors de la configuration de ppp connection ( sudo pppoeconf), alors je pensais que resolvconf était en train de le réécrire (mais comme nous pourrions le voir plus tard, ce n'était pas le cas!). Quoi qu’il en soit, le problème est très étrange, car certains sites étaient acceptables et d’autres pas, et dans tous les cas, la résolution DNS fonctionnait (et fonctionne toujours). Le seul problème est que l’opérateur souhaite utiliser un autre serveur DNS.
laurent

Faire sudo dpkg-reconfigure resolvconfet suivre les instructions / instructions a résolu mon problème! C'est tout ce qu'il a fallu!
Apelsin

3

Peut-être que vous pouvez essayer de désactiver le dnsmasq:

sudo vim /etc/NetworkManager/NetworkManager.conf

Mettre un #devantdns=dnsmasq

Ensuite:

sudo restart network-manager

J'ai un problème de résolution de certains sites Web après l'installation de 12.04 et 12.10. Après ma désactivation, dnsmasqtout a bien fonctionné.

Si cela vous aide, vous pouvez alors installer le service complet de Dnsmasq et indiquer votre fournisseur DNS préféré /etc/resolvconf/resolv.conf.d/tail.


Je voudrais essayer ceci. Cependant, mon gestionnaire de réseau affiche mon réseau local sous le nom Device not managed. Par conséquent, il ne montre pas non plus la connexion DSL que je viens de créer. Regardez cette image .
Aditya

NetworkManager ne gère pas l'interface car elle est configurée manuellement à /etc/network/interfacesla suite de son exécution pppoeconf. Le problème était que la connexion automatique établie par NetworkManager ne fonctionnait pas, mais vous pouvez l'essayer maintenant (car vous savez comment réparer si elle ne fonctionne plus). Il suffit de commenter les lignes ajoutées par pppoeconfen /etc/network/interfaceset le changement managed=false to =truede /etc/NetworkManager/NetworkManager.conf.Maintenant que vous savez où est le problème, s'il vous plaît rapport si elle ne nous peut et fonctionne pas automatiquement essayer de le résoudre en utilisant le gestionnaire de réseau.
laurent

@laurent et @snowhawkyrf: je l'ai essayé. Cependant, cela ne fonctionne pas pour moi. L'utilisation pppoeconfsemble être la seule option pour résoudre le problème. Quoi qu'il en soit, merci pour vos contributions.
Aditya

0

Apparemment, le problème est de savoir comment Ubuntu gère les connexions DSL. Je n'ai pas réussi à configurer ma connexion DSL comme suggéré par les experts.

Pour contourner le problème, j’utilise TOR, puisqu’il n’ya que quelques sites Web qui en sont affectés.


0

Le même problème s’est produit ici (système ASUS EeePC 1015BX - Ubuntu 12.10 - AMD C-60). GEditez le /etc/resolv.conffichier ( sudo -H gedit /etc/resolv.conf) et remplacez la nameserver 127.0.1.1ligne par la suivante

nameserver 208.67.222.222
nameserver 208.67.220.220

résolu les problèmes.

Vous pouvez rendre cette tâche permanente en utilisant ces procédures.


0

Eh bien, je viens d'écrire cette commande chaque fois que cela cesse de fonctionner, je crois toujours qu'il s'agit d'un bogue, ou peut-être que je fais quelque chose de mal avec mon PC

service NetworkManager restart

Il devrait commencer à fonctionner (s'il y a une connexion Internet hors circuit). Mais si cela ne fonctionne pas, essayez de mettre à jour les enregistrements DNS, puis relancez la commande ci-dessus. Ça devrait marcher.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.