【已解决】Ubantu问题记录:在连接网线的情况下ubuntu系统ping网关不通以及无法上网

问题背景:

我们的服务器配置了两张在同一网段下的网卡,卡Ⅰ(eno4)连接以太网ip:192.168.2.10、网关192.168.2.1; 卡Ⅱ(eno2)ip:192.168.2.12、网关192.168.2.101连接另外一台物理机。当两个网口同时连接网线时,服务器就无法上网,当把eno2的网线拔出时,服务器就可以上网,所以推测是二者在同一网段下相互影响到了对方。

参考(45条消息) 解决ubuntu系统ping 不通 ip和默认网关的问题_we-ai的博客-CSDN博客_ubuntu ping不通

我们首先ping服务器连接以太网的网关

【已解决】Ubantu问题记录:在连接网线的情况下ubuntu系统ping网关不通以及无法上网_第1张图片

 发现不通,当我们拔掉eno2之后

【已解决】Ubantu问题记录:在连接网线的情况下ubuntu系统ping网关不通以及无法上网_第2张图片

发现可以上网了。因此显而易见就是在同一网段下的两个网卡相互影响了对方。

在生活中的会经常遇见一台PC同时连接多个网络的场景.最典型的,一台笔记本可以同时连接一个无线网(手机热点)和一个有线网(以太网).linux和window操作系统在默认情况都会使用最早连接的网络进行互联网访问.如果我们想切换到另一个网络进行互联网访问,最粗暴的方法就是断开最先连接的网络,则操作系统会自动切换到另一个网络.对于PC只有两个网络连接这个粗暴的方案的是可行的,可是如果网络连接数大于2,并且我们想切换到其中任意一个网络进行互联网访问.总不能依次断开其它所有的连接吧,未免太繁琐.

参考

linux环境下使用route指令设置多个网络连接的优先级(通过修改路由表的默认网关条目) - luoyang712 - 博客园 (cnblogs.com)使用route命令来修改默认路由的优先级即可解决问题~

修改后的路由表优先级如下:

【已解决】Ubantu问题记录:在连接网线的情况下ubuntu系统ping网关不通以及无法上网_第3张图片

 当系统中有多个默认网关时,数据包会通过metric更低的接口传输。在上述截图中我们看到有线网en04的优先级更高因此数据通过eno4传输。同时ping它的网关也是自然通的

【已解决】Ubantu问题记录:在连接网线的情况下ubuntu系统ping网关不通以及无法上网_第4张图片

 自此,同一网段下两网卡相互冲突的问题解决完毕。

你可能感兴趣的:(服务器,linux,运维,网络协议)