如何理解vlanif接口无法up的原因?直连不通(PVID问题)?如何排查?

目录

案列一:如何理解vlanif接口无法up的原因?

案例二:vlan接口正常up,同网段,无法ping通?(PVID)

原因一:pvid(native vlan)两端不一致——帧的VLANID≠接口PVID

原因二:pvid(native vlan)两端不一致——帧的VLANID=接口PVID (现网常见错误配置)

原因三:生成树问题

个人总结:


案列一:如何理解vlanif接口无法up的原因?

拓扑和配置如下:

SW2预配置如下:

vlan 10
#
int vlan 10
ip add 1.1.1.2 24
#
interface GigabitEthernet0/0/1
 port link-type trunk

发现sw2的vlan10接口是down的

原因:物理接口g0/0/1没有放行vlan10(当然这个原因大家可能都知道,但是如何理解呢?)

个人理解:

对于一个物理接口来说,接口物理down什么原因?——没有接线

而同样对于vlan接口类比一下,vlan接口物理down,同样是不是没有接线的原因:

如何理解vlan接口接线?

大家普遍的意义的理解,trunk接口放行vlan,从另一角度理解:把vlan加入到这个trunk链路上

所以当vlan没有加入到trunk的时候,vlanif接口就是一个交换机上存在的一个没有插线的接口,只是这个接口在交换机的内部(图一),那么当我们把vlan加入到trunk上,相当于给这个vlan接口接上网线,所以这个接口就会up(图二)

其实从广播域的角度来说,也就是把vlan10广播域从内部延申到trunk链路上,和对端vlan10出来的广播域连接在一起下图)组成一个网段

配置验证:


案例二:vlan接口正常up,同网段,无法ping通?(PVID)

原因一:pvid(native vlan)两端不一致——帧的VLANID≠接口PVID

拓扑配置&现象如下:

pvid默认为1,当两端不一致的时候发现无法ping通,修改一致后发现可以通了


vlanif接口通信过程理论:

该部分涉及到vlanif通信过程:https://note.youdao.com/s/1KytkMtM

sw2的vlanif10 1.1.1.2访问sw1的vlan10 1.1.1.1 过程

首先查询路由,发现是直连路由,(代表路由完成,进入交换)

问:最终要从物理接口发出去,但是路由表里面没有物理接口怎么办?发出去的时候打上的vlan tag如何确定的?—— ARP表项--》MAC表----》

路由模块解析发现目的IP为1.1.1.1,非本地接口存在的IP地址,因此需要对该报文三层转发。查找路由表后,匹配中VLANIF10产生的直连路由。

因为匹配的为直连路由,说明已经到达最后一跳,所以交换机在ARP表中查找对应ip 1.1.1.1,获取MAC地址,交由交换模块重新封装为数据帧。

交换模块查找MAC地址表以明确报文出接口、是否需要携带VLAN Tag。最终交换模块发送的数据帧


二层接口trunk的vlan tag规则:https://note.youdao.com/s/dtkxTKHO


根据这个规则(帧的vlanid=10,接口pvid=20,二者不同),在我们的测试环境中看到——发出的arp广播携带了vlan tag=10 ,但是无法获取到对方 1.1.1.1的mac地址

原因解释:因为sw2接口并没有放行PVID,放行后可以ping通

个人疑惑 (希望大佬解答一下):

  • ① 如果sw2的trunk 没有放行vlan20的话, 现象应该是sw1回答了ARP广播,发出了arp应答,但是sw1拒绝才对;
  • ②此外该场景下,如果sw2放行vlan20 , 然后ping通,然后快速取消vlan20,再次长ping的话,最终会不通(初步怀疑时mac和arp缓存,但是我都映射为静态的,还是通不了,初步怀疑bug)

原因二:pvid(native vlan)两端不一致——帧的VLANID=接口PVID (现网常见错误配置)

[SW2-GigabitEthernet0/0/1]dis th
#
interface GigabitEthernet0/0/1
 port link-type trunk
 port trunk pvid vlan 10
 port trunk allow-pass vlan 10

现象:

根据vlan tag的规则,发出arp 广播的时候, 没有携带vlan tag,

原因解释:

  • 没有携带vlan tag的arp广播到达sw1 trunk接口的时候, 根据标签规则,打上vlan 1的标签,然后朝着自己的vlan 1广播域泛洪,但是vlanif10在vlan10广播域,所以不会有arp应答

原因三:生成树问题

  • 生成树选举阻塞问题: 由于生成树的选举阻塞了某个端口
  • 厂家之间协议不兼容
  • 处于选举过程,由于端口状态为完全收敛,此时不能发送数据帧 [如侦听(Listening)]

个人总结:

网络排查可以按照TCP/IP模型一层的排查,

接口是否up(物理up和协议up) ----> 数据链路层(生成树,vlan tag ,链路聚合LACP协商........)等--->网络层(路由..)--->.....

如果是安全设备等(还有关注L4--L7层信息)

  • 44
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值