网络 (ping) 期间无法访问 Linux 设备

网络 (ping) 期间无法访问 Linux 设备

我已经安装了 Windows PC、交换机和 Linux SBC(不是 Raspberry),并且我尝试通过交换机将 SBC 与计算机连接,以便为 SBC 提供互联网和 SSH。

SBC 输出以下 IP 地址

root@imx6qpdlsolox:~# ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 169.254.234.40  netmask 255.255.0.0  broadcast 169.254.255.255
        inet6 fe80::204:9fff:fe06:3984  prefixlen 64  scopeid 0x20<link>
        ether 00:04:9f:06:39:84  txqueuelen 1000  (Ethernet)
        RX packets 364  bytes 45484 (44.4 KiB)
        RX errors 0  dropped 166  overruns 0  frame 0
        TX packets 140  bytes 35993 (35.1 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 446  bytes 29426 (28.7 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 446  bytes 29426 (28.7 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

我的计算机输出以下内容

Ethernet-Adapter Ethernet:

   Verbindungsspezifisches DNS-Suffix:
   Verbindungslokale IPv6-Adresse  . : fe80::4ece:1a02:7677:2d01%22
   IPv4-Adresse  . . . . . . . . . . : 192.168.0.200
   Subnetzmaske  . . . . . . . . . . : 255.255.255.0
   IPv4-Adresse  . . . . . . . . . . : 192.254.79.200
   Subnetzmaske  . . . . . . . . . . : 255.255.255.0
   IPv4-Adresse  . . . . . . . . . . : 169.254.234.200
   Subnetzmaske  . . . . . . . . . . : 255.255.255.0
   Standardgateway .

我可以从我的电脑 ping 通 SBC

Ping wird ausgeführt für 169.254.234.40 mit 32 Bytes Daten:
Antwort von 169.254.234.40: Bytes=32 Zeit<1ms TTL=64
Antwort von 169.254.234.40: Bytes=32 Zeit<1ms TTL=64
Antwort von 169.254.234.40: Bytes=32 Zeit<1ms TTL=64
Antwort von 169.254.234.40: Bytes=32 Zeit<1ms TTL=64

Ping-Statistik für 169.254.234.40:
    Pakete: Gesendet = 4, Empfangen = 4, Verloren = 0
    (0% Verlust),
Ca. Zeitangaben in Millisek.:
    Minimum = 0ms, Maximum = 0ms, Mittelwert = 0ms

但我的 SBC 电脑却不行

root@imx6qpdlsolox:~# ping 169.254.234.200
PING 169.254.234.200 (169.254.234.200) 56(84) bytes of data.

两个设备都通过交换机连接。交换机确认后,LED 闪烁。SBC 上的绿色 LED 没有闪烁,但橙色 LED 闪烁。这是什么意思?我读到绿色表示链接成功,因此主板没有链接。但为什么交换机会显示链接成功,为什么 ping 可以工作?

答案1

Windows 默认带有防火墙,可以阻止几乎所有入站流量,甚至包括 ping 请求。

在 Windows 上运行wf.msc,打开“传入”,并启用内置的“ICMP Echo”和“ICMPv6 Echo”规则。它们将在 Windows 11 中的“核心网络诊断”下,或在 Windows 10 中的“文件共享”下(后者也默认将它们限制为仅在同一子网下)。

此外,请尝试让给定子网上的所有设备的网络掩码保持一致。目前,您的 SBC 使用255.255.0.0,但 PC 配置为使用255.255.255.0169.254.234.200 地址。虽然在这种情况下不是然而导致问题(因为 SBC 和 PC 的地址仍然在两个网络掩码中较窄的范围内),但它仍然算作配置错误。

因此,最好将 PC 的 169.254.234.200 地址更改为使用 255.255.0.0 网络掩码。(PC 的其他 IP 地址可以继续使用其当前的网络掩码。)


Ping 是一种双向检查,将两个东西(请求和回复)合并为一个通过/失败。如果失败,下一步就是检查那些东西分别地,即,您想知道计算机是否正在接收 SBC 的 ping 请求,而不依赖于答复。

为此,需要使用数据包捕获工具(通常,Windows/Linux GUI 使用的是 Wireshark,CLI 使用的是 tcpdump)——即使计算机没有响应,能够看到请求到达计算机也会告诉您 SBC 的网络配置是正确的(或至少有一半是正确的),因此是计算机选择不回复。(或者它可能会告诉您,由于您指定了错误的网络掩码,计算机通过不同的接口回复……)

SBC 上的绿色 LED 不闪烁,但橙色 LED 闪烁。这是什么意思?我读到绿色表示链接成功,所以主板没有链接

以太网 LED 指示灯没有标准的配色方案;您在一个设备上看到的网络 LED 指示灯并不一定适用于另一个设备。

例如,SBC 可能使用“橙色 = 100 Mbps”和“绿色 = 1 Gbps”,其中任一颜色表示链接成功,但比特率不同。(我也见过相反的情况,橙色表示速度更快。)

相关内容