我需要帮助让我的家用 wifi 能够让我在 Debian 上访问互联网。我真的很困惑,因为我可以连接到任何其他网络,而且我确实可以访问互联网,除了家里的网络和来自同一 ISP 的任何其他网络。我总是可以毫无问题地连接到 AP,我可以 ping 任何站点,但我无法跟踪路由(运行traceroute <anydomain.tld>
总是返回三列星号);每次连接都会超时。当我连接到我的家用 AP 时,我可以上网大约 20 秒:我可以跟踪路由、加载站点等......在这段短暂的时间之后,上面描述的问题开始发生。更令人费解的是,我的 Megasync 客户端似乎完全不受互联网访问不足的影响(也就是说,它继续上传和下载文件),以及apt
(apt-get
我可以毫无问题地更新和升级),除了两个存储库:一个用于 MS Edge,一个用于 MySQL Community;两个命令都找不到这些地址。
该笔记本电脑是运行 Debian 测试版的 Dell Latitude E5450;无线适配器是最新的,02:00.0 Network controller: Intel Corporation Wireless 7265 (rev 59)
它使用驱动程序。iwlwifi
我可以使用 USB 和蓝牙网络共享功能,毫无问题地使用我的 Android 手机进行连接连接到同一个 AP。有时,连接到 USB 或 BT 约一小时后,我可以断开连接,连接到我的 wifi AP,然后我可以上网一段时间,有时是几个小时。重启后,互联网就消失了。
我猜是 DNS 问题,因为同一个 AP 在另一个发行版(Puppy Linux Fossa)、我的手机、Windows 和另一台 Debian 笔记本电脑上运行良好。wifi 设备是 Intel 7265。驱动程序 ( iwlwifi
) 是最新的。
我有几个命令的输出,一个是在具有不同 ISP 的咖啡馆(以下称为“另一个 AP”),一个是在家里;这是netstat -tun
在另一个 AP 处:
Active Internet connections (w/o servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 192.168.1.131:53366 198.252.206.25:443 ESTABLISHED
tcp 0 0 192.168.1.131:32892 151.101.65.69:443 ESTABLISHED
tcp 0 0 192.168.1.131:48134 44.240.37.33:443 ESTABLISHED
tcp 0 0 192.168.1.131:42396 89.44.168.214:443 ESTABLISHED
tcp 0 0 192.168.1.131:58930 66.203.125.13:443 ESTABLISHED
tcp 0 0 192.168.1.131:58552 104.16.249.249:443 ESTABLISHED
tcp 0 0 192.168.1.131:42190 37.220.36.240:443 ESTABLISHED
udp 0 0 192.168.1.131:68 192.168.1.1:67 ESTABLISHED
这是我家用 AP 上相同命令的输出:
Active Internet connections (w/o servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 192.168.100.117:41310 51.158.99.6:20443 FIN_WAIT2
tcp 0 0 192.168.100.117:50264 91.250.81.52:9001 ESTABLISHED
tcp 0 0 192.168.100.117:57062 54.36.172.32:9001 FIN_WAIT2
tcp 0 0 192.168.100.117:55206 31.131.2.17:443 FIN_WAIT2
tcp 0 0 192.168.100.117:44140 109.228.53.235:443 FIN_WAIT2
tcp 0 0 192.168.100.117:35930 148.251.22.104:443 FIN_WAIT2
tcp 0 0 192.168.100.117:33856 82.165.185.89:4492 FIN_WAIT2
tcp 0 0 192.168.100.117:37456 31.184.218.180:9001 FIN_WAIT2
tcp 0 0 192.168.100.117:55208 31.131.2.17:443 ESTABLISHED
tcp 0 536 192.168.100.117:54158 95.214.54.80:443 ESTABLISHED
tcp 0 0 192.168.100.117:51776 157.90.179.103:8001 FIN_WAIT2
tcp 0 1 192.168.100.117:43938 138.201.227.205:443 SYN_SENT
tcp 0 537 192.168.100.117:46842 188.114.140.233:9091 FIN_WAIT1
tcp 0 0 192.168.100.117:54296 85.204.121.219:9001 ESTABLISHED
tcp6 0 0 2806:2f0:5021:fcd:41154 2a0b:e46:1:100::14:443 ESTABLISHED
tcp6 0 0 2806:2f0:5021:fcd:41148 2a0b:e46:1:100::14:443 ESTABLISHED
tcp6 0 0 2806:2f0:5021:fcd:57424 2001:678:25c:2216:::443 ESTABLISHED
udp 0 0 192.168.100.117:68 192.168.100.1:67 ESTABLISHED
由于我运行了很多命令,我只留下了相关 Pastebins 的链接:
dhcpcd -T wlp2s0
:其他,家(我只是安装dhcpd5
运行它,然后清除它)。nmap --script broadcast-dhcp-discover -e wlp2s0 google.com
:其他,家。nmap -sn --system-dns 192.168.100.1
:其他 家(我粘贴了最后一个命令,但我输入了网关的 IP 作为最后一个参数)。nmcli device show wlp2s0
:其他,家。- 我
wireshark
在两个 AP 上运行了几分钟:其他,家。
我仍在阅读文档以了解上述所有内容的含义,但任何指导或提示都会非常感谢!
以下两个是这款笔记本电脑特有的,因此无需比较:这是iptables -L -vn
,这是nft list ruleset
。从这两者中我唯一能了解到的是,规则仅针对LIBVIRT_*
设备(接口?)定义,因此据我所知,没有什么可以阻止我的 wifi 设备(wlp2s0
)访问 DNS 服务器。
这些是我已经尝试过的步骤:
- 将 DNS 服务器设置为
8.8.8.8
和/或8.8.4.4
; - 删除所有连接
/etc/NetworkManager/system-connections
; - 安装
resolveconf
;激活和停用systemd-resolved
; - 重新启动AP设备;
- 从 NetworkManager 窗口关闭 IPv6。
我不记得我是否尝试过其他方法。请帮忙!
答案1
根据您的 nft 规则集转储,似乎virbr0
您的系统上已配置了 IP 192.168.100.1/24
,这意味着192.168.100.0/24
它的前缀路由()和wlp2s0
会相互冲突(显然,您的笔记本电脑可能具有与您家里的路由器相同的 IP,尽管没有配置wlp2s0
)。
更改 libvirt 使用的 IP 子网/范围virt-manager
可能会解决问题。A 类或 B 类私有块可能不太可能引起问题,因为消费级路由器默认倾向于使用 C 类私有块。