如何调试没有Internet连接?


10

我正在使用通过以太网电缆直接连接到路由器的Raspberry Pi,但设备无法连接到互联网。所有网络指示灯都亮起,但是我无法访问Internet,cURL,wget和ping命令都无法解析主机地址。当我将电缆连接到笔记本电脑时,我的笔记本电脑可以正常连接到互联网。

Raspberry Pi在我的房子里工作正常,但是现在当我在朋友家中设置它时,它没有连接(即使有新鲜的图像)。他们有一台很旧的路由器(只有一个以太网插槽)。

我的问题是我该如何进一步调试以发现问题?有什么方法(例如)可以测试TCP / IP或其他方法吗?我上过大学的网络课程,并且了解理论,但是我不知道如何真正地研究网络问题。


如果需要帮助,则需要描述问题以及尝试过的方法。Pi上的ifconfig怎么说?笔记本电脑的互联网设置是什么?
Milliways

Answers:


9

[此答案大部分都已过时,在第一个版本的“ jessie”之后的Raspbian版本中将无用。]

如果电缆插入时所有以太网指示灯都亮起,并且您可以按照John的建议连接显示器和键盘或串行线路,则应该可以建立连接。

首先,运行ifconfig。可能eth没有启动,您只会看到:

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

您可能还会看到eth0列出的内容。如果没有,暂时不要担心。在执行其他任何操作之前,最好禁用网络自动化,因为显然这不适用于您:

sudo service networking stop
sudo service ifplugd stop

这些将在下次启动/运行级别更改时再次开始。如果您不希望服务在引导时再次启动,请使用disable代替stop,在这种情况下,您将必须自行安排或每次手动进行所有操作。每当插入以太网电缆时,第二个(如果已插入)应该建立连接。1个

现在,如果您没有eth0在前面看到列出的信息,那将是不对的sudo ifconfig eth0 up,否则请ifconfig再次输入以确保它仍然可用。接下来,sudo dhclient -r应停止所有正在运行的实例;当然,sudo killall -9 dhclient然后ps -A | grep dhc检查其他dhcp客户端软件,因为我认为debian 默认使用dhcpcd(而不是dhclient)。如果是这样,则需要将其杀死。请注意,如果您没有如上所述禁用网络服务,则它可能会继续返回。

完成后,您应该可以与保持联系sudo dhclient -v eth0。如果这不起作用,请将输出添加到您的问题。


1.这可能不是每个人都希望的。即使服务据称已停止,但对我来说,这似乎还是很有害的,我使用卸载了该服务sudo apt-get remove ifplugd


谢谢!我需要一堆sudo在那里......在我的情况,dhclient的一定是沿着某种原因途中死亡,只是需要一个踢..
ptim

如果我拿到了,那就不Failed to stop ifplugd.service: Unit ifplugd.service not loaded.
杰克

没有; 这意味着该服务未启用。我认为ifplugdRaspbian不再默认使用它(我将在上面进行编辑-谢谢!)。
goldilocks

实际上,大多数答案并不真正适合较新版本的Raspbian ...
goldilocks

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.