对于在internet和intranet网络上,使用tcp/ip协议时每台主机必须具有独立的ip地址,有了ip地址的主机才能与网络上的其它主机进行通讯。随着网络应用大力推广,网络客户急剧膨胀,由于静态ip地址分配,ip地址冲突的麻烦相继而来。ip地址冲突造成了很坏的影响,首先,网络客户不能正常工作,只要网络上存在冲突的机器,在客户机上都会频繁出现地址冲突的提示:“如果网络上某项应用的安全策略(诸如访问权限,存取控制等)是基于ip地址进行的,这种非法的ip用户会对应用系统的安全造成了严重威胁。
分析原因
出现问题有时并不能及时发现,只有在相互冲突的网络客户同时都在开机状态时才能显露出问题,所以具有相当的隐蔽性。分析原因有如下几种情况可以造成ip地址冲突。
- 很多用户对tcp/ip并不了解,不知道“ip地址”、“子网掩码”、“默认网关”等参数如何设置,有时用户不是从管理员处得到的上述参数的信息,或者是用户无意修改了这些信息;
- 管理员或用户根据管理员提供的上述参数进行设置时,由于失误造成参数输错;
- 在客户机维修调试时,维修人员使用临时ip地址应用造成;
- 有人窃用他人的ip地址。
查找与解决方法
接到冲突报告后,我们首先确定冲突发生的vlan。通过ip规划的vlan定义,和冲突的ip地址,找到冲突地址所在的网段。这对成功地找到网卡mac地址很关键,因为有些网络命令不能跨网段存取。
首先将客户机与网络隔离,让非法的ip地址的微机在网上运行,网管员便可以设法找到它了。应用网络测试命令有ping命令和arp命令。使用ping命令,假设冲突的ip地址为10.119.40.40,在msdos窗口,命令格式如下,其中斜体部分是命令结果。
c:widows〉ping 10.119.40.40
request timed out
reply from 10.119.40.40 : bytes=32 time〈1ms ttl=128 略
我们之所以要ping这台机器,是出于两个目的,首先我们要知道我们要找的机器确实在网络上,其次,我们要知道这台机器的网卡的mac地址,那么我们如何知道它的mac地址哪?这就需要使用第二个命令arp:arp命令只能在某一个vlan中使用有效,它是低层协议,并不能跨路由。
c:widows〉arp -a
interface: ...... on inerface ......
internet address/physical address/type
10.119.40.40/00-00-21-34-63-56/ dynamic 以下略
以上列表表示出冲突ip地址10.119.40.40 处网卡的mac地址为00-00-21-34-63-56。接下来我们要找的是mac地址为00-00-21-34-63-56的网卡的具体物理位置。
网络简介中已经说明,每台客户机的网卡直接连接到第二级交换机上,接下来面对大量的以太网交换机,我们要查找是冲突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
- 00:00:21:34:63:56 13 dynamic no
------------------------------------------- - 00:00:81:65:c3:a0 n/a static no
------------------------------------------- - 00:00:a2:f7:c3:e4 25 dynamic no
------------------------------------------- - 00:00:21:34:63:56 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地址后,我们可以从管理员数据库中进行查寻,如果我们对mac地址记录全面,我们便可以立即找到具体的使用人的信息,这会节省我们大量宝贵时间,避免大海捞针的烦恼。同时我们对于某些应用应避免使用ip地址来进行权限限制,如果我们从mac地址上进行限制相对来说要安全的多,这样可以有效地防止有人窃取ip地址的侥幸行为。