admin管理员组

文章数量:1635850

最近在学习Linux开发时,发现网口eth0能够ping通,eth1无法ping通,显示From 192.168.8.20 icmp_seq=1 Destination Host Unreachable。之前搞了一段时间,没有弄清楚,也去问了客服,以为是网口坏了,后来经过耐心的测试,得出了这个问题的原因,现在记录一下。

首先Linux imx6ull板有两个网口,靠近db9接头的 eth0 和 靠近usb的 eth1。电脑主机的地址为 192.168.8.111。启动板子进入linux后,分别配置两个网口的固定ip地址。

ifconfig eth0 192.168.8.10

ifconfig eth1 192.168.8.20

配置完成后,在控制台用ping命令ping主机192.168.8.111,发现只能 eth0 能够ping通,而eth1 无法ping通,并报错:From 192.168.8.20 icmp_seq=1 Destination Host Unreachable

这是由于eth0和eth1,都为192.168.8.xx网段,协议栈会先检查到eth0的网段和我们要ping的主机地址在同一网段下,就会一直用eth0 192.168.8.10去ping,故此时将网线接到eth1上时,是无法ping通的。

此时我们只要把eth0 改成别的网段,比如192.168.12.10,用eth1就可以ping通主机了。

ifconfig eth0 192.168.12.10

如果此时再将eth0 改回192.168.8.10来,eth1来ping主机依然能够ping通,因为协议栈内部有记录。但是此时再将网线接入eth0,eth0又不能ping通主机了,因为此时一直在用eth1的地址ping主机。

本文标签: 原子网口pingimx6ullLinux