谁动了我的IP

网络与通信

中小型局域网中,一般采用的是固定IP地址,所以像“IP地址冲突”这样的“事故” 时有发生。也说不准什么时候,我们就因“飞来横祸”不能上网了,大家肯定都想弄明白,究竟是谁动了我的IP?
众所周知,每块网卡在出厂时都固化了一个硬件地址(MAC地址),从一般意义上来说它是不可改变的,这样才能更好地标示一台计算机。通过一个网络命令arp,你就可以查看IP地址在你的arp网址维护列表中对应的物理地址。如果你从未连接过某计算机,这个arp网址维护列表中就不会有它的物理地址。这也难不住我们,Ping一下后就可以临时取得了。
如果你只是一个普通用户,产生IP地址冲突后,此时你肯定不能连接网络,我们可以“以毒攻毒”,暂时将你的网络地址改为一个不会被占用的地址(如:192.168.0.254),重启以后应该能够重新连上网络,这时Ping你以前的IP地址(192.168.0.27)。
格式:Ping 192.168.0.27。可能Ping不通,因为对方肯定也是网址冲突,稍等一会儿,等能够Ping通时才可以进行下一步。
输入:arp -a就可以得到arp网址维护列表,命令执行结果如下:
Interface: 192.168.0.254 on Interface 0x2000003
Internet Address Physical Address Type
192.168.0.1 00-00-1d-f4-94-e9 dynamic
192.168.0.27 00-e0-06-f6-f6-ce dynamic
192.168.0.254 00-e0-4c-00-49-14 dynamic
00-e0-06-f6-f6-ce这个地址怎么与我的IP地址“勾搭”上呢?至此,你已经知道是哪台机器(确切地说应该是哪张网卡)占用了你的IP地址。
如果你是网管,对这种事情更应该加以防范,并对经常改动网络配置的人进行警告。不过也很难讲网管就应对每台机器的物理地址都非常熟悉,网管还得有点儿防患未然的先见之明,在网络正常时建立一个IP地址与物理地址对照表是非常重要的,也很容易实现。
由于arp地址表是系统动态维护的,我们得不到直接的文件,只能写个批处理程序来解决问题。
建立一个myping.bat文件,内容如下:
@Echo off
ping 192.168.0.%1
arp -g 192.168.0.%1
该程序的作用是自动Ping一个IP地址,并用arp命令查看它的物理地址,g参数的作用与a参数类似 ,不过它是查看单个IP的物理地址,192.168.0是你局域网地址的前三位,大家可变通使用。
然后在DOS窗口中执行以下命令:
For %Ringfo in (1,2,3,4,5,6,7,8) do call myping.bat %Ringfo
For命令是DOS内置命令,本例中用它实现循环的1、2、3、4等作为参数传递给myping.bat程序,完成IP地址的第四位(关于它的使用方法和参数,在此不详述)。这个小程序自动化程度并不高,仅作为介绍这种方法的辅助。其实你还可以选择用Windows脚本或其他编程来实现。若能再建立一张“IP地址→物理地址→地理位置”的对照表,你这个网管就会更有“把握”了。