Ubuntu 22.04更新后WiFi及以太网显示连接但无网络问题求助
我在2月27日更新了Ubuntu 22.04,现在WiFi和以太网都出问题了——系统显示已经连接,但实际上没有网络访问权限。我尝试过从旧内核版本启动,但也没用,求大家帮忙!
我已经收集的信息:
执行ip a的输出:
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: enp3s0f1: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc fq_codel state DOWN group default qlen 1000 link/ether e0:db:55:c7:2c:7e brd ff:ff:ff:ff:ff:ff 3: wlp2s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000 link/ether ac:7b:a1:8b:f1:c3 brd ff:ff:ff:ff:ff:ff inet 192.168.0.171/24 brd 192.168.0.255 scope global dynamic noprefixroute wlp2s0 valid_lft 7103sec preferred_lft 7103sec 4: gpd0: <POINTOPOINT,MULTICAST,NOARP> mtu 1500 qdisc noop state DOWN group default qlen 500 link/none 5: docker0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default link/ether 02:42:3b:a5:ea:c9 brd ff:ff:ff:ff:ff:ff inet 172.17.0.1/16 brd 172.17.255.255 scope global docker0 valid_lft forever preferred_lft forever 6: br-f61436ed76f1: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default link/ether 02:42:55:a7:2e:50 brd ff:ff:ff:ff:ff:ff inet 172.23.0.1/16 brd 172.23.255.255 scope global br-f61436ed76f1 valid_lft forever preferred_lft forever 7: br-92c2912e1266: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default link/ether 02:42:e8:2e:0a:a7 brd ff:ff:ff:ff:ff:ff inet 172.18.0.1/16 brd 172.18.255.255 scope global br-92c2912e1266 valid_lft forever preferred_lft forever inet6 fe80::42:e8ff:fe2e:aa7/64 scope link valid_lft forever preferred_lft forever 8: br-520bc9e6fd49: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default link/ether 02:42:2b:a4:b3:eb brd ff:ff:ff:ff:ff:ff inet 172.20.0.1/16 brd 172.20.255.255 scope global br-520bc9e6fd49 valid_lft forever preferred_lft forever 9: br-6423d184c65a: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default link/ether 02:42:d1:2b:e8:5f brd ff:ff:ff:ff:ff:ff inet 172.21.0.1/16 brd 172.21.255.255 scope global br-6423d184c65a valid_lft forever preferred_lft forever 11: veth42589bb@if10: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-92c2912e1266 state UP group default link/ether 3e:3f:88:36:7e:b8 brd ff:ff:ff:ff:ff:ff link-netnsid 1 inet6 fe80::3c3f:88ff:fe36:7eb8/64 scope link valid_lft forever preferred_lft forever 13: veth9675f15@if12: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-92c2912e1266 state UP group default link/ether c6:75:4b:a1:bf:d2 brd ff:ff:ff:ff:ff:ff link-netnsid 0 inet6 fe80::c475:4bff:fea1:bfd2/64 scope link valid_lft forever preferred_lft forever
执行lspci -knn | grep Net -A3的输出:
02:00.0 Network controller [0280]: Intel Corporation Wireless 7260 [8086:08b1] (rev 73) Subsystem: Intel Corporation Wireless-N 7260 [8086:4462] Kernel driver in use: iwlwifi Kernel modules: iwlwifi
执行ls -al /etc/resolv.conf的输出:
lrwxrwxrwx 1 root root 39 may 4 2021 /etc/resolv.conf -> ../run/systemd/resolve/stub-resolv.conf
针对这个问题的排查和解决建议:
先帮你梳理下当前状态:WiFi(wlp2s0)已经拿到了内网IP,但以太网(enp3s0f1)处于无载波状态,另外还有几个Docker网桥在运行,我们一步步来排查:
第一步:区分是网络连通问题还是DNS问题
先测试基础连通性,打开终端执行:ping 8.8.8.8如果能ping通,说明只是DNS解析出了问题;如果ping不通,那就是网络链路的问题。
如果是DNS问题
你的resolv.conf指向了systemd-resolved的stub配置,我们可以手动指定公共DNS:- 编辑
/etc/systemd/resolved.conf文件:sudo nano /etc/systemd/resolved.conf - 找到
DNS=这一行,去掉注释,改成:DNS=8.8.8.8 8.8.4.4 - 保存退出后重启systemd-resolved服务:
sudo systemctl restart systemd-resolved
之后再测试
ping google.com看是否能解析。- 编辑
如果是网络链路问题
重启网络管理服务:
sudo systemctl restart NetworkManager重启后重新连接WiFi/以太网,测试网络。
重置NetworkManager配置:
有时候系统更新会导致配置文件错乱,试试重置:sudo systemctl stop NetworkManager sudo rm -rf /var/lib/NetworkManager/* sudo systemctl start NetworkManager重启后重新配对WiFi或插好以太网线缆,重新连接。
重新加载无线网卡驱动:
你的无线网卡是Intel 7260,驱动是iwlwifi,试试重新加载驱动:sudo modprobe -r iwlwifi sudo modprobe iwlwifi也可以确保固件是最新的:
sudo apt update && sudo apt install --reinstall linux-firmware排查Docker网桥干扰:
注意到你有多个Docker网桥在运行,其中br-92c2912e1266处于UP状态,可能会影响系统路由。试试暂时停止Docker服务:sudo systemctl stop docker然后测试网络是否恢复。如果恢复了,说明是Docker网络和主网络冲突,之后可以调整Docker的默认网桥配置,比如修改
/etc/docker/daemon.json来指定不冲突的子网。
备注:内容来源于stack exchange,提问作者Galo Barba

