Comment déboguer aucune connexion Internet?


10

J'utilise un Raspberry Pi connecté directement au routeur avec un câble Ethernet mais l'appareil ne se connecte pas à Internet. Tous les voyants du réseau s'allument mais je ne peux pas accéder à Internet et les commandes cURL, wget et ping ne peuvent pas résoudre l'adresse hôte. Lorsque je connecte le câble à mon ordinateur portable, mon ordinateur portable peut se connecter correctement à Internet.

Le Raspberry Pi a bien fonctionné chez moi, mais maintenant quand je l'installe chez un ami, il ne se connecte pas (même avec une nouvelle image). Ils ont un assez vieux routeur (un seul emplacement Ethernet).

Ma question est de savoir comment puis-je déboguer davantage pour trouver le problème? Existe-t-il un moyen (par exemple) de tester TCP / IP ou quelque chose? J'ai pris un cours de réseautage au collège et je comprends la théorie, mais je ne sais pas vraiment comment creuser un problème de réseautage.


Si vous voulez de l'aide, vous devez décrire le problème et ce que vous avez essayé. Que dit ifconfig sur le Pi? Quels sont les paramètres Internet de l'ordinateur portable?
Milliways

Réponses:


9

[La plupart de cette réponse est obsolète et ne sera pas utile avec les versions de Raspbian au-delà de la première, "Jessie".]

Si tous les voyants Ethernet sont allumés lorsque le câble est connecté et que vous pouvez connecter un moniteur et un clavier ou une ligne série comme le suggère John, vous devriez pouvoir établir la connexion.

Tout d'abord, lancez-vous ifconfig. Eth n'est peut-être pas en place, et vous verrez juste:

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          UP LOOPBACK RUNNING 
          [...]

Vous pouvez également voir la eth0liste. Sinon, ne vous en faites pas pour le moment; avant de faire quoi que ce soit d'autre, il peut être utile de désactiver l'automatisation du réseau, car cela ne fonctionne évidemment pas pour vous:

sudo service networking stop
sudo service ifplugd stop

Celles-ci recommenceront la prochaine modification de démarrage / niveau d'exécution. Si vous ne voulez pas que les services redémarrent au démarrage, utilisez disableplutôt que stop, auquel cas vous devrez prendre vos propres dispositions ou faire tout cela manuellement à chaque fois. Le second (ifplugd) est censé établir une connexion chaque fois qu'un câble Ethernet est inséré. 1

Maintenant, c'est à l'écart, si vous ne l' avez pas vu eth0plus haut sudo ifconfig eth0 up, sinon, encore une ifconfigfois pour vous assurer qu'il est toujours en place. Ensuite, sudo dhclient -rce qui devrait arrêter toutes les instances en cours d'exécution; pour être sûr, sudo killall -9 dhclientpuis ps -A | grep dhcpour vérifier les autres logiciels clients DHCP, car je pense que Debian utilise dhcpcd(au lieu de dhclient) par défaut. Si c'est le cas, vous devez tuer cela. Sachez que si vous n'avez pas désactivé le service réseau comme ci-dessus, il reviendra probablement.

Une fois cela fait, vous devriez pouvoir vous connecter avec sudo dhclient -v eth0. Si cela ne fonctionne pas, ajoutez la sortie à votre question.


1. Ce qui n'est peut-être pas souhaitable pour tout le monde. Cela m'a semblé très pernicieux même lorsque le service était censé être arrêté, et je l'ai désinstallé avec sudo apt-get remove ifplugd.


Merci! J'avais besoin d'un tas de sudolà-dedans ... dans mon cas, dhclient doit être mort en cours de route pour une raison quelconque, juste besoin d'un coup de pied ..
ptim

Est-ce mauvais si je reçoisFailed to stop ifplugd.service: Unit ifplugd.service not loaded.
Jack

Non; cela signifie que le service n'est pas activé. Je pense qu'il ifplugdn'est plus utilisé par défaut sur Raspbian (je vais le modifier ci-dessus - merci!).
goldilocks

En fait, la plupart de cette réponse n'est pas vraiment appropriée aux nouvelles versions de Raspbian ...
goldilocks

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.