Wifi 接口丢弃所有数据包

Wifi 接口丢弃所有数据包

我有一个通过 WiFi 连接到网络的远程系统。WiFi 连接已正确建立,我可以 ping 网关。网关的维护者(第三方,我无法访问)确认了这一点。设备已连接,获得了 IP,防火墙对我的 MAC 未处于活动状态。

但是我没有互联网连接。我用ping -I wlan0 8.8.8.8curl --interface wlan0 -XGET http://example.org都测试了它,结果都超时了。我用 监控了 wlan0 上的流量tcpdump -i wlan0,发现高达 100% 的数据包被接口丢弃。澄清:我可以在 tcpdump 输出中看到数据包,但 ping 显示 100% 数据包丢失。

我有两个问题:这是我丢失连接的原因吗?我该如何解决这个问题?

防火墙(iptables / ufw)未处于活动状态。

我的uname -a输出是Linux machine 3.10.104-126 #1 SMP PREEMPT Tue Nov 29 22:24:16 UTC 2016 armv7l armv7l armv7l GNU/Linux

我的 WiFi 接口是Realtek Semiconductor Corp. RTL8188CUS 802.11n WLAN Adapter带有设备 ID 的0bda:8176


更新

@Lenniey 我不确定我是否明白。连接到网络本身是成功的(因为我获得了 IP,DHCP 配置了网关 DNS 等,我可以成功 ping 网关)。我的设备位于 192.168.200.4 (wlan0) 和 192.168.1.31 (eth0)。我已经进行了跟踪路由,它看起来像这样:

root@device:~# traceroute -i wlan0 8.8.8.8
traceroute to 8.8.8.8 (8.8.8.8), 30 hops max, 60 byte packets
 1 192.168.200.254 (192.168.200.254) 7.069 ms 6.961 ms 6.888 ms
 2 ***
 3 ***
(this continues until traceroute gives up)
30 ***

我的路由表如下:

root@device:~# route --verbose
Kernel IP routing table
Destination    Gateway          Genmask        Flags  Metric  Ref  Use  Iface
default        192.168.1.254    0.0.0.0        UG     100     0    0    eth0
default        192.168.200.254  0.0.0.0        UG     600     0    0    wlan0
link-local     *                255.255.0.0    U      1000    0    0    eth0
192.168.1.0    *                255.255.255.0  U      100     0    0    eth0
192.168.200.0  *                255.255.255.0  U      600     0    0    wlan0

@Dennis Nolte 我假设这些包被接口丢弃了,因为 tcpdump 在停止监控后是这样说的。输出如下(由于内存不足而产生的随机数)

59 packages captured
59 packages received by filter
 0 packages dropped by kernel
40 packages dropped by interface

接口丢弃的软件包范围从零到所有软件包。在我的测试中,内核从未丢弃过软件包。无法使用 wireshark 截图,因为它是一台没有连接屏幕的设备,而且我甚至不在与该设备相同的国家/地区。因此,我尝试修复该问题的所有方法都是通过 LAN 上的 SSH 进行的。但 LAN 连接只是临时的,用于维护工作,产品连接将是 WiFi。

相关内容