全部博文(408)
分类: WINDOWS
2006-07-24 18:34:07
我们都知道,在Internet和Intranet网络上,使用TCP/IP协议时每台主机必须具有独立的IP地址,有了IP地址的主机才能与网络上的其它主机进行通讯,对此应该不用我罗嗦了。不过我想你肯定碰见过IP地址发生冲突的情况,至少我就遭遇过。 那一天我发现我的网络客户不能正常工作,只要电源打开,都会频繁出现地址冲突的提示。可是前一天还是好好的,而且也没有做任何新的设置呀!仔细想了想, 唯一有所区别的是机房的人员有所调整,可能是新来的人设置的IP地址和我的冲突了,一问果然如此。要不是他和我都打开机器了,我还发现不了问题呢! 可见网络上即使存在冲突的机器,有时也不能及时发现问题,只有在相互冲突的网络客户同时都在开机状态时才能暴露出来,看来它还有一定隐蔽性的,下面我就来给你揭揭秘。 发生IP冲突主要有以下几个原因。有些人可能对TCP/IP并不了解,不知道\"IP地址\"、\"子网掩码\"、\"默认网关\"这些参数怎么设置 (不要笑话他们,毕竟我们也是这样一步一步走来的),有的时候他们得到的参数信息可能并不是管理员告诉的,也有可能开始设置时是正确的但后来又无意地不小 心修改了这些信息。即使是管理员给出了正确的参数数据,我们也总有失误,因为老虎还有打盹的时候呢,把参数输错也是在所难免的。另外在让人维修调试机器的 时候,维修人员可能会用一些临时的IP地址,如果忘了改过来也有可能出现冲突。另外还有一种我们深恶痛绝的情况,就是有人窃用他人的IP地址。 接到冲突报告后,要做几件事情,首先要确定冲突发生的VLAN。通过IP规划的vlan定义以及冲突的IP地址,可以找到冲突地址所在的网段。这对成功地找到网卡MAC地址非常关键,因为有些网络命令不能跨网段存取。 下面先把客户机与网络隔离,对于有非法的IP地址的微机,权且容它运行去吧,这样我们倒有机会设法找到它了。再对网络做一些简单的测试,主要的命令有 ping命令和arp命令。使用ping命令,假设冲突的IP地址为146.127.35.3,在msdos窗口,命令格式如下: C:\\WIDOWS\\〉ping 146.127.35.3 Request timed out Reply from 146.127.35.3 : bytes=32 time〈1ms TTL=128 〉 Reply from 146.127.35.3 : bytes=32 time〈1ms TTL=128 〉 Reply from 146.127.35.3 : bytes=32 time〈1ms TTL=128 〉 其实最初我打算用\"开始\"-\"运行\"来执行ping命令的(在实际操作中我更习惯于用这种方法),不过它走得实在太快,看不过来,只好求助于msdos了。 我们之所以要ping这台机器,有两个目的,首先我必须肯定要找的那台机器确实在网络上,其次,我想知道这台机器的网卡的MAC地址,那么下面怎么才能 知道它的MAC地址哪?这就需要使用第二个命令arp:arp命令只能在某一个VLAN中使用有效,它是低层协议,而且不能跨路由。 C:\\WIDOWS\\〉arp -a Interface: ...... on Inerface ...... Internet Address/Physical Address/Type 146.127.35.3/00-00-22-35-62-53/ dynamic 这就说明冲突IP地址146.127.35.3 处网卡的MAC地址是00-00-22-35-62-53。接下来我们要找的是MAC地址为00-00-22-35-62-53的网卡的具体物理位置。 每台客户机的网卡都直接连接到第二级交换机上,接下来面对大量的以太网交换机,我们要查找是冲突MAC所对应交换机端口。因为我所在的网络中与客户连接 的设备是Bay的303/304,我就以303为例来看一看如何查找某一个MAC地址所在的端口位置。Bay303的网管有很多种方式,下面只利用Web 浏览器方式来说明查找非法MAC的方法。 在查找之前,先要搞清楚VLAN内的交换机位置,查出这些交换机的IP地址,使用交换机 地址可以访问到交换机的网管信息。我们要做以下工作,先在在网管员的机器上启动浏览器,把交换机的IP地址敲进去,在看到提示的登录信息之后输入用户名和 密码,再进入\"MAC Address Table\"选项,这样就可以得到下面的信息: index/mac address/learned on port/learning method/filter packets to this address 1 00:00:21:34:63:56 13 dynamic no 2 00:00:81:65:c3:a0 n/a static no 3 00:00:a2:f7:c3:e4 25 dynamic no 4 00:00:22:35:62:53 2 dynamic no 哈哈,可以看到索引的第4项,它正是我们要查找的MAC地址,它的端口号为2。根据综合布线资料,就能够准确地找出相应的信息点的物理位置,进一步我们 就能定位到所连接的微机位置。当然,你在解决这个问题的时候可能没有这么方便,往往还需要查找很多台交换机,最终找到MAC地址的时候可能会有一种\"如 释重负\"的感觉。VLAN中存在大量的交换机时,我们就需要在这些交换机中逐个去查找。 如果一个交换机的端口中存在下联交换机,对于这种情况,因为交换机支持多个MAC地址,它会在上级的MAC表中保存下级MAC的记录,所以要先查找上级交换机MAC表,确定较具体位置后再去查找下一级交换机,这样就能大幅度地缩小查找范围。 在局域网里,我们常常会遇到这种IP地址冲突的问题,特别是用户规模非常大的情况下,就会使得查找工作越发困难,所以网络管理员必须对此仔细行事才能最 终得以解决。目前有两种方案,一是使用动态IP地址分配(DHCP),另一种方案是使用静态地址分配,但必须加强MAC地址的管理。 用动态IP地址分配(DHCP)的最大优点是客户端网络的配置非常简单,这样,即使没有管理员的帮助和干预,我们也可以自己对网络进行连接设置。但是, 因为IP地址是动态分配的,网管员不能从IP地址上鉴定客户的身份,相应的IP层管理就起不到作用。另外它还有一个弊端,使用动态IP地址分配还需要设置 额外DHCP服务器。 如果采用静态IP地址分配,我们就可以先对各部门进行合理的IP地址规划,这样能够在第三层上方便地跟踪管理,与此同时如果加强对MAC地址的管理,就能有效的解决这个问题。 再说一些技术之外的话题,实际上网络要正常运行相应的管理是必不可少的。要谨记,在我们连网的同时,最好建立IP地址和MAC地址的信息档案,这样就可 以自始至终地对局域网客户执行严格的管理和登记制度,在网络管理员的数据库中把每个用户的IP地址、MAC地址、上联端口、物理位置和用户身份等信息记录 保存起来。可以考虑一下,知道了非法用户的MAC地址后,如果能够从管理员数据库中进行查寻,我们就可以立即找到\"罪魁祸首\",这样我们可以节省多少 宝贵的时间呀! |