网管无默认路由

Ste*_*iak 3 network-manager networking routing

这个问题大约在三周前开始,显然是在更新之后。

当我连接到新的 wifi 网络时,我只能连接到本地;我的笔记本电脑成功连接并接收 IP 地址(通过系统日志验证),但ping 8.8.8.8返回connect: Network is unreachable.

路由表总是看起来像这样:

Table de routage IP du noyau
Destination     Passerelle      Genmask         Indic Metric Ref    Use Iface
169.254.0.0     0.0.0.0         255.255.0.0     U     1000   0        0 wlp2s0
192.168.2.0     0.0.0.0         255.255.255.0   U     600    0        0 wlp2s0
Run Code Online (Sandbox Code Playgroud)

特别是,没有指定默认路由。我认为这就是问题所在。如果我运行命令

sudo route add default gw 192.168.2.1 wlp2s0
Run Code Online (Sandbox Code Playgroud)

然后一切正常;我可以 ping google.com,但网络管理器仍然认为我只有本地连接。

如果我改用静态 IP 并将 8.8.8.8 指定为名称服务器,则一切正常。如果我使用静态 IP 并且不指定 8.8.8.8 作为名称服务器,我可以 ping 8.8.8.8 但不能 google.com。

如何让网络管理器正确自动分配默认路由?

Wah*_*eed 5

问题很可能与未在无线设备 NM 配置中设置的路由配置有关。尝试手动编辑您的连接文件,您会在这里找到它,vim /etc/NetworkManager/system-connections/YOUR_WIFI_NAME

在 ipv4 部分下添加(虽然这应该是默认值): never-default=false

您还必须编辑 /etc/NetworkManager/NetworkManager.conf

[ifupdown]
managed=true
Run Code Online (Sandbox Code Playgroud)

此外,如果您首先发现,managed=true那么这可能是不自动添加路由的问题,请尝试将其更改为 false,并且不要执行之前的 ipv4 步骤,然后:

service network-manager restart