Linux下出现IP冲突,是不会像Windows那样,在右下角弹出冲突提示的。博主就出过一次糗,记得当时是在VM虚拟机里面安装了4个redhat,测试LVS集群。结果发现其中一台RealServer老是掉线,重启network服务后能正常几分钟,然后又掉线了。。。

4个Redhat都是VM克隆出来的、完全一致的系统,仅其中一台出问题,所以博主觉得匪夷所思!直到,后来我的办公电脑(宿主)网线直接没信号了,才知道原因:

原来,是那台频繁掉线的虚拟系统和其他部门的办公电脑出现了IP冲突,由于Linux不会出现冲突提示,作为“始作俑者”的我依然蒙在鼓里!桌面运维那边兄弟,估计暗地里把造成IP冲突的人骂了个狗血淋头了(后来才知道是我)。。。网络每隔几分钟掉线的原因是因为,那边的用户发现IP冲突后,不能上网,然后重启电脑,就把我给冲下来了!而我重启network服务又把她给冲下去了。。。我了个去,恶性循环啊!哈哈!!后来,桌面运维兄弟一时找不到冲突来源,就直接通过交换机查到了这个冲突IP的端口,然后把网线拔了,等“始作俑者”去找他。。。最后,发现这个人居然是我。。哈哈!

以上,就是博主以前经历的糗事了,拿来分享下,正好引出下面的查看linux系统IP冲突的教程。

在Linux中发现IP地址冲突的方法_第1张图片

虚拟机里面直接配了和宿主一个段的IP地址,

你们都知道什么是IP地址,是吧?它们被分配给网络上的设备来代表它们。它们通过DHCP服务器分配并且会经常改变。现在有两种IP地址。动态的一种会经常改变(几天一次),而静态的就如它的名字那样是静态的,意味着它们不会改变。

有时这会引发一些冲突。当一个动态IP被分配了并且有另外一台网络设备已经拥有了相同的IP。或者在相同网络子网上有多台分配IP的DHCP服务器。如果你有连通问题并且假设它是由于IP冲突造成的,那么你可以使用一个工具称作arp-scan来扫描它们。

这个工具会在本地网络发送ARP(Address Resolution Protocol)(地址解析协议)包来收集地址。如果有多个MAC地址声称拥有相同的IP地址,那么这里就存在冲突。

要在Ubuntu或者Debian上安装arp-scan则输入:

 

1

sudo apt-get install arp-scan

对于Fedora,CentOS或者RedHat:

1

sudo yum install arp-scan

检测IP冲突,运行下面的命令:

1

sudo arp-scan –I eth0 -l

博主补充:redhat root用户不需要前面的sudo命令了。

输出示例:

 

Shell

1

2

3

4

5

6

7

8

192.168.1.10  00:1b:a9:63:a2:4c      BROTHER INDUSTRIES, LTD.

192.168.1.30  00:1e:8f:58:ec:49      CANON INC.

192.168.1.33  00:25:4b:1b:10:20      Apple, Inc

192.168.1.37  10:9a:dd:55:d7:95      Apple Inc

192.168.1.38  20:c9:d0:27:8d:56      (Unknown)

192.168.1.39  d4:85:64:4d:35:be      Hewlett Packard

192.168.1.39  00:0b:46:e4:8e:6d      Cisco (DUP: 2)

192.168.1.40  90:2b:34:18:59:c0      (Unknown)

在本例中,192.168.1.39这个IP冲突了,因为它出现了两次。