交换机
园区网交换机
数据中心与云计算交换机
行业精选交换系列
工业交换机
意图网络指挥官
无线
放装型无线接入点
墙面型无线接入点
智分无线接入点
室外无线接入点
场景化无线
无线控制器
行业精选无线系列
统一运维
身份管理
服务产品
运营商
政府
金融
互联网
制造业
高教/职教
医疗卫生
交通
公共安全
关键词:IPV6 neighbor、IPV6 ND、IPV6 ND状态机
客户巡检设备状态过程中,发现交换机上一个MAC地址对应存在大量的IPV6 neighbor,而对应终端上查看只使用了2个IPV6地址的异常现象。
设备端IPV6 neighbor表项如下:
终端上使用的IPV6地址:
设备型号:N18014
软件版本:11.0(4)B58P1
1、 确认故障现象是否准确。
2、 明确IPV6 ND的机制以及状态机切换的原理。
3、 根据对应设备的ND状态机,明确是否有做对应状态机时间的调整。
1、通过核查交换机的配置,发现交换机对应SVI口下存在ipv6 nd reachable-time 1800000配置(默认30s),通过查询命令手册,对应命令的作用是设备自己在邻居发现行为中认为可到达的持续时间为1800000ms(也就是0.5h),所以当对应邻居处于reachable状态时,还需要等待0.5h才会老化。
2、将对应ipv6 nd reachable-time参数调整回默认,查看还是会出现设备端与终端地址数量不一致的问题。
3、通过show ipv6 neigh detail xx.xx.xx查看,发现对应的ND邻居状态都为stale。
4、IPV6的几个状态机如下,即对应IPV6邻居认为不可达后不是立马不可达,还有stale、delay、probo状态,只有probo探测不可达之后才删除表象:
故障原因总结:交换机上IPV6的邻居超时与设备端使用对应地址的周期不一致,交换机上的邻居超时需要经过:reach->stale->delay->probe几个状态之后才会清空对应表象。
将调整过的ipv6 nd reachable-time 1800000恢复成默认的30000ms即可。
1.针对IPV6 nd有以下几个状态机:
INCOMPLETE:未完成状态。我们一般称之为假表项状态,此时地址探测尚未完成,还没有学习到邻居的MAC地址,此时表项的MAC地址是全零。
REACHABLE :可达状态。我们一般称之为正式表项。地址探测已经完成,学习到邻居的MAC地址,此时表项的MAC地址是正确的邻居MAC地址。Reachable状态按照协议可以维持30秒。
STALE :陈旧状态。ND表项在这个状态表明不确定邻居是否可达,所以是不可信任的。
DELAY :延时状态。这个状态也是不可信的,不确认邻居是否可达,至所以有一个延时,没有立刻进行可达性检测,是为了给上层协议一个进行可达性确认的机会。
PROBE :探针状态。不确定邻居是否可达,发送单播NS报文检测可达性。
2.对应状态机的切换流程图如下:
无---->INCOMP:没有表项时,如果有流量触发建立新表项,此时建立的表项是INCOMP状态,MAC地址是全零。
INCOMP---->无:假表状态,要发送NS报文探测对端是否可达,如果不可达,继续尝试,尝试3次对端都不响应,则删除假表项。NS报文的探测间隔默认是1s,是可以配置的。
INCOMP---->REACH: 假表状态,发送NS报文探测对端是否可达,如果对端相应了正确的NA报文,则表项状态刷为REACH,并且刷成正确的MAC地址。
REACH---->STALE:REACH状态维持30s,自动切换成STALE状态。这个时间也是可配置的。
STALE---->DELAY:STALE状态维持的时间又称为老化时间,默认是20MIN,可以配置,老化时间结束后,开始老化,切换成DELAY状态。
DELAY---->PROBO:DELAY状态延时5s,自动切换为PROBO状态。
PROBO---->无:表项在探针状态,要发送NS报文探测对端是否可达,如果不可达,继续尝试,尝试3次对端都不响应,则删除假表项。NS报文的探测间隔默认是1s,是可以配置的。
PROBO---->REACH:表项在探针状态,发送NS报文探测对端是否可达,如果对端相应了正确的NA报文,则表项状态刷为REACH。