尝试 ping google 时出现“网络无法访问”,但内部地址可以工作

尝试 ping google 时出现“网络无法访问”,但内部地址可以工作

我可以通过 192 网络访问我家里的其他 PC,但尝试外出时会显示“网络无法访问”消息。p3p1 已启动,IP 地址正确。运行 Fedora 16。下一步我应该做什么来排除故障?

房子里的所有其他电脑都在运行(Windows、Mac)。

答案1

你说你家里的其他电脑都有连接。那么问题只出在你的 Linux 机器上。有几种可能性:

  1. 您确实有连接,但无法访问 DNS;您可以通过以下方式进行诊断

    ping -c1 8.8.4.4
    

    如果你能访问 Google,那么你就有连接,你只需要更新你的 DNS 服务器。编辑(以 sudo 方式)你的/etc/resolv.conf文件并添加以下两行:

    nameserver 8.8.8.8
    nameserver 8.8.4.4
    

    现在您就可以开始了。

  2. 您无法 ping 通 Google,但可以 ping 通路由器或 LAN 中的任何其他电脑。在这种情况下,您可能也遇到了问题 1,因此您必须检查该问题,但首先,您需要检查路由表。使用

    ip route show default
    

    并检查是否有回复,如下所示:

    default via 192.168.11.1 dev wlan0 proto dhcp metric 600
    

    (这是我的笔记本电脑)。重要的是,路由器的正确 IP 地址与我的完全相同(192.168.11.1) 。如果显示错误的 IP 地址,或者更糟的是,如果ip 路由显示默认命令接收无回复,则您的路由表已损坏。您可以通过以下方式轻松恢复它:

    sudo ip route del default (only if the wrong IP address appears)
    sudo ip route add default via IP.address.OfYour.Router
    

    现在我们可以进入第 1 步了。

  3. 如果你无法 ping 通 LAN 上的任何 PC,那么就存在另一种问题,需要提出更多问题。但我们到时候再讨论这个问题。

答案2

我的家庭网络也遇到过类似的问题。我决定暂时不让 Mac Pro 运行 - 它运行着我的媒体服务器、wiki 服务器和 ownCloud 实例。所有这些服务都可供 LAN 上的机器使用,但从该机器上的 ssh shell 上,我无法 ping 或以其他方式访问 LAN 之外的任何主机,因此我无法(例如)执行“brew 更新”或其他维护工作。

我最终放弃了网络故障排除,重新连接了显示器,发现我的防火墙(在本例中是 Little Snitch)提示我允许这些传出连接。放松规则或禁用防火墙这两个选项都恢复了该机器访问互联网的能力。

答案3

简单的操作方法是修改 c:\users%USERPROFILE%.wslconfig 文件如下:

[wsl2]
memory=8GB
**swapFile=0**
swap=0

由于某种原因,微软的某个人更改了 swap 配置参数的名称。奇怪的是,当定义了 swapfile 时,网络工作起来非常顺畅。

微软:请将 swalfile 与网络分离。并考虑支持交换的两个名称。

相关内容