Chinaunix首页 | 论坛 | 博客
  • 博客访问: 3853058
  • 博文数量: 421
  • 博客积分: 685
  • 博客等级: 上将
  • 技术积分: 3670
  • 用 户 组: 普通用户
  • 注册时间: 2010-02-18 14:20
文章分类

全部博文(421)

文章存档

2012年(5)

2011年(52)

2010年(83)

2009年(67)

2008年(65)

2007年(149)

分类: 系统运维

2008-03-31 11:46:32





华为3526交换机IP/MAC MOVE提示
 


1.1 3526转发机制简介
并不是所有的三层交换机都学习ip地址,只有精确转发机制的交换机才学习ip地址,3526就是如此。

3526配置两个以上的虚接口以后,实现三层交换机,通过直接虚接口建立arp表项同时学习源ip地址,通过目的网段的路由信息以及下一条arp表项来学习目的ip地址。

3526只配置一个虚接口时不学习ip地址,作为管理ip使用,类似二层交换机,可实现二层转发,由于不具备三层转发的必要条件(至少存在两个网段,即两个虚接口),不能用于三层转发。另外3526的二层地址学习和三层地址学习是严格分开的,二层转发依靠mac与ip无关,三层转发依靠ip与mac无关。3526通过arp报文学习ip地址,不学习报文的源mac。
在组网应用中,ip和mac地址需要学习到正确的端口以后,才能由硬件来实现数据转发,因此对于ip表项或mac表项都紧紧的与端口联系在一起,在某些组网环境下,经常有人说速率很慢,经过仔细分析,原因是ip地址在两个端口不断的迁移造成的。

开发ip move或者mac move的目的就是为了让使用者能够发现网络中存在的异常,提供及时的必要的定位信息,消除这种网络异常,维护网络的稳定。

1.2 提示信息含义和原因
%8/15/2003 18:32:30-SYSM-5-IP MOVE:Rcv src IP 10.6.5.26 packet from port 16 but
it's nexthop arp 10.0.0.253 with 00d0-b784-c4ee resided in port 18
上面告警日志信息的含义:从port 16收到一个来自源ip为10.6.5.26的报文,但是它的下一条arp10.0.0.253 00d0-b784-c4ee却在port 18上。
为什么会产生这样的提示呢?显然10.5.6.26与10.0.0.253不是一个网段的,交换机上存在10.0.0.253/16这个网段,而不存在10.5.6.26/16这个网段,交换机显然学习不到10.5.6.26这台主机的arp表项,对于这种非直连网段的学习就需要依靠下一条的arp。从告警的信息可
以看出,10.0.0.0/16目的网段的路由下一条为10.0.0.253,出端口为port 18, 按照目的路由
转发的话,10.0.0.0/16这个网段接在port 18下面而不是port 16下面,当从port 16下面接收到10.0.0.0/16的报文显然是不正常的, 这个网段的报文只能来自port 18端口。
往下拉,内容更精彩~



【您的轻轻一点,我的动力无限,请点此推荐一把~】
  

1.3产生ip move的例子
(1) 产生ip move or mac move的组网1

 3526(0/1)----lsw1----pc 
     (0/2)----lsw2----pc

图表 1产生ip move组网1

如上图所示,3526下挂两台二层交换机接入用户时,假定1.1.1.2这个用户开始接在lsw1下面, ip和mac都学习在3526的e0/2下面,可以通过show ipfdb all或者display mac查看到,当这个用户从lsw1的位置移到lsw2下面上网时,3526会提示mac move和ip move 的信息。由于此用户的arp会在e0/2上存在一段时间,有此信息的提示,你很快就会想到是arp没有老化的原因造成的。删除e0/2口上老的arp表项或者是用户重新发一次arp请求都可以恢复通讯。

或者假定lsw2下面有一个用户的ip地址也是1.1.1.2, 那么在3526上也会看到大量的 ip move的提示信息,这种情况下属于异常,需要网管加以干预消除此异常。

(2)产生ip move or mac move组网2
更多的一种情况是网络中发生了环路,比如远端的网络设备上或者是用户家里的hub产生了环路,也会造成这样的情况。

 3526(0/1)----lsw1---hub----pc 
     (0/2)----lsw2----pc

图表 2 产生ip move或mac move的组网2

假定用户自己家里接入了hub,hub上用线环了起来制造了一种环路的情况,那么其他用户在上网过程中会向外发送一些广播报文,结果都会被hub给重新发送回来,例如接入在lsw下的用户发送了一个arp请求,在3526上的vlan内广播,此报文被lsw1下面的hub环回来后,lsw2下面用户的ip地址会被学习在e0/2而不是e0/3, 那么用户再发一次 ip地址就学习在e0/3, 因此也可以产生ip move的问题,根据提示信息来定位问题会方便的多了,比如把e0/2 shut, lsw2下面的用户上网正常,检查lsw1下面的用户即可排除故障。 Mac move也是同样的道理。
(3)产生ip move的组网3
还有一种组网,产生来去路由不一致的时候也会引起ip move,当lsw1,lsw2、lsw3启动ospf路由,并且接口上配置ospf的度量能引起lsw1存在等价路由时,

便会出现pc2访问pc1走左边的路由,pc1回应pc2走右边的路由,因此lsw1和lsw3处于软转发状态。
转发过程如下:
pc2首先发起访问时,报文交给lsw3, lsw3根据pc1网段的路由找到下一条端口,并把pc2的ip地址学习在入端口,pc1的ip地址学习在下一条的所在端口上;lsw1将pc2发送的报文交给pc1,由于lsw1存在等价路由,发现到pc2网段的路由应该走右边的路由,同时把pc2的ip地址学习在lsw1链接lsw2的端口上。

Pc1回应pc2时,pc1发出的报文交给lsw1,由于pc2的ip地址已经学习在ip地址表中了,硬件直接交换,当报文被lsw2转发给lsw1时,便会出现ip move的提示,回应报文的源ip为pc1的ip,在pc2->pc1时 pc1的ip地址被学习在lsw3链接lsw1的端口上,但回应报文却从lsw3链接lsw2的端口收上来,硬件会报ip move,同时把交给cpu处理,重新学习ip地址,结果发现根据路由学习还是应该学到右边的端口上,然后协议站软转发给pc2。

Pc2再次发报文给pc1时,在lsw1也会重复同样的过程, 同样会产生ip move,报文仍然由软件转发给pc1。

Pc2与pc1间的通讯效率会大大下降,必须要消除等价路由才能消除此故障,所以3526不适合用户在等价路由的场合。

1.4 如何消除ip move的提示
当交换机提示ip move时,对于交换机而言,肯定是产生了ip 地址在端口上的迁移事件,这样的报文上了cpu,需要软件来处理,由于采用了log日志提示的方法,在console或者vty上会打印出一些提示语句,这样的提示信息越多,说明有更多的源ip的地址学习不正确,更多的报文需要软件转发处理,这不是正常的工作状态,需要人为加以干预。
(1) 根据提示信息中的源ip地址、端口号以及下一跳的arp表项所在端口,分析哪个端口是正确,寻找不正确的原因。
(2) 采用no terl log的方法关闭log 日志的提示,当然所有模块的日志信息都会被关闭了。
(3) 后面的版本会提供关闭ip move提示信息的命令行开关

简单的关闭并不能解决问题,根据提示信息迅速的解决问题才是最重要的。





     
阅读(4788) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~