前言:原文在我的博客网站中,持续更新数通、系统方面的知识,欢迎来访!
关于在Linux系统下新加网卡配置后报错的解决https://myweb.myskillstree.cn/65.html
目录
现象
为Linux系统新添加了新的网卡并进行配置后重启网卡发现报错,输入:nmcli con up ens33
后报错如下:
错误:连接激活失败:No suitable device found for this connection (device ens32 not available because profile is not compatible with device (mismatching interface name)).
原因
这种现象多出现在NAT网卡或设置网卡为dhcp获取地址时,主要是因为NetworkManager服务未进入托管,未识别到新设备
解决方法
systemctl restart NetworkManager
systemctl restart network
输入 nmcli con up ens33
后显示成功激活连接,输入 ip add
后也显示网卡打开获取到地址
新添加网卡无法ping通外网
在经过上面的配置后新添加的网卡可以被识别到也能有地址,但是这时候ping百度(我添加的NAT网卡)是无法ping通的,但是dns解析可以正常进行,如下图:
解决方法
出现这种情况多是因为有多个网卡,每个网卡在都会产生一条默认路由,下一跳指向自己的网关。
一般来说新加网卡ping不通外网是因为系统将它的默认路由的优先级加了1,而默认路由的优先级值越大越不优先,导致的系统在发送未知目的IP的数据包时会选择更优选的路由。(如下所示的Metric中的数值)
route -n # 查看路由表
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.10.254 0.0.0.0 UG 100 0 0 ens32
0.0.0.0 192.168.80.2 0.0.0.0 UG 101 0 0 ens33
这里写出永久和临时(重启网卡失效)两种解决方法:
临时-1
nmcli con down ens32 # 关闭ens32网卡
nmcli con up ens32 # 开启ens32网卡
临时-2
ip route del 0.0.0.0/0 via 192.168.10.254 # 删除下一跳为10.254的默认路由
永久
nmcli con mod ens32 ipv4.route-metric 110 # 设置网卡路由的优先级为110,110 > 101 将作为第二选择
systemctl restart network # 重启网卡刷新
此时再ping百度即可成功!