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

news2024/12/29 23:23:50

目录

案列一:如何理解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(图二)

配置验证:


案例二: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层信息)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1657878.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

操作系统——进程控制

创建进程 fork fork是一个系统调用函数,用来创建子进程,通过多个执行流完成任务。子进程和父进程共用一份代码,子进程数据使用写时拷贝,即子进程数据在创建的时候和父进程相同,但是当要修改数据的时候,子进…

软件项目管理期末复习题8-16章

第八章软件项目质量计划 一、填空题 1、(审计)是对过程或产品的一次独立质量评估。 2、质量成本包括预防成本和(缺陷成本)。 3、(软件质量)是软件满足明确说明或者隐含的需求的程度。 5、McCall质量模…

【C++】STL — vector的接口讲解 +详细模拟实现

前言: 本章我们将学习STL中另一个重要的类模板vector… vector是表示可变大小数组的序列容器。就像数组一样,vector也采用的连续存储空间来存储元素。但是又不像数组,它的大小是可以动态改变的本质讲,vector使用动态分配数组来存储它的元素v…

电脑缺失opencl.dll怎么办,轻松解决opencl.dll的多种方法分享

当我们在操作电脑过程中遇到系统提示“由于找不到opencl.dll,无法继续执行代码”,这个错误会导致软件应用无法正常运行。OpenCL.dll作为一个与Open Computing Language(开放计算语言)相关的动态链接库文件,它在执行需要…

基士得耶CP 6303c速印机不制版故障检修

故障:基士得耶CP 6303c经常提示版纸卡纸,重设版纸 版纸还没下滚筒,卡在版纸仓里面,手动滚动裁纸刀可以解决,但第二天又是这个毛病; 版纸定位传感器的灵敏度调节一下,然后给机器全面做个清洁大保养,尤其是传…

健康体检系统源码,体检中心、医院体检科管理系统,C/S架构,成熟稳定运行。支持预约管理、检查项目管理、结果录入、报告生成、数据分析

一套C/S架构的智慧健康体检管理系统源码,三级综合医院应用案例 体检系统是一种用于管理和记录个人或群体健康信息的软件系统。它通常包括预约管理、检查项目管理、结果录入、报告生成、数据分析等功能,旨在提高体检流程的效率和准确性,为医院…

高扬程水泵:专业设备,高效输送水源/恒峰智慧科技

在广袤无垠的森林中,每一棵树木都承载着生命的希望与自然的恩赐。然而,当森林遭遇火灾的威胁时,这些生机勃勃的生命便岌岌可危。此时,森林消防高扬程水泵便成为了守护森林安全的重要武器,以其专业性与高效性&#xff0…

第1章 信息系统综合知识 1.2 信息化

第1章 信息系统综合知识 1.2 信息化 1.2.1 信息的含义 信息化是推动经济社会发展转型的一个历史性过程。在这个过程中,综合利用各种信息技术,改造、支撑人类的各项 政治、经济、社会活动,并把贯穿于这些活动中的各种数据有效、可靠地进行管…

【2024版】最新6款漏洞扫描工具来了!(附下载)看完这一篇就够了

目录 一、Nessus 二、AWVS 三、ZAP 四、w3af 五、北极熊 六、御剑 七、网络安全学习路线 (2024最新整理) 八、学习资料的推荐 1.视频教程 2.SRC技术文档&PDF书籍 3.大厂面试题 特别声明: 渗透测试收集信息完成后&#xf…

修改表空间的状态

Oracle从入门到总裁:​​​​​​https://blog.csdn.net/weixin_67859959/article/details/135209645 表空间有4种状态:联机、脱机、只读和读写。修改其中某一种状态的语句如下所示 设置表空间 tspace 为联机状态。 SQL>ALTER TABLESPACE space ONLINE: 设置表空间 tspa…

房地产新楼盘营销短信群发

房地产新楼盘营销短信群发 1. 房地产市场竞争激烈,开发商为了能够快速推广新楼盘并吸引更多潜在买家的关注,采用房地产新楼盘营销群发已成为一种常见的营销手段。通过向大量的用户推广,开发商能够提高楼盘的知名度和曝光度,从而增…

(七)JSP教程——session对象

浏览器和Web服务器之间的交互通过HTTP协议来完成,HTTP协议是一种无状态的协议,服务器端无法保留浏览器每次与服务器的连接信息,无法判断每次连接的是否为同一客户端。为了让服务器端记住客户端的连接信息,可以使用session对象来记…

ARM(2)ARMv8基础知识

目录 一、异常 1.1异常等级的定义 1.2异常的种类 1.2.1同步异常和异步异常 1.3改变异常等级 1.4异常后的处理 1.4.1异常处理相关寄存器 1.4.2系统调用 1.4.3对EL2/EL3的系统调用 1.4.4异常返回 1.4.5异常处理流程 二、安全状态 三、执行状态 本文介绍以下内容&…

Oracle 修改数据库的字符集

Oracle 修改数据库的字符集 alter system enable restricted session; alter database "cata" character set ZHS16CGB231280; alter database "cata" national character set ZHS16CGB231280; alter system enable restricted session; alter database…

docker-compose安装 人大金仓数据库

下载官网安装包 将安装包重命名为: kingbase.tar 再导入镜像仓库 docker load -i kingbase.tar目录创建data文件夹创建docker-compose文件 version: 3 services: kingbase: image: kingbase:v1 container_name: kingbaseports: - "54321:54321" volumes: -…

AlphaFold3: Google DeepMind的的新突破

AlphaFold 3的论文今天在Nature期刊发表啦!这可是AI在生物领域最厉害的突破的最新版本。AlphaFold-3的新招就是用扩散模型去"画出"分子的结构。它一开始先从一团模模糊糊的原子云下手,然后慢慢透过去噪把分子变得越来越清楚。 Alphafold3 我们活在一个从Llama和Sora那…

今日刷三题(day12):兑换零钱(一)+最长回文子串+编辑距离(一)

题目一:兑换零钱(一) 题目描述: 给定数组coins,coins中所有的值都为正整数且不重复。每个值代表一种面值的货币,每种面值的货币可以使用任意张,再给定一个aim,代表要找的钱数&…

代码随想录算法训练营DAY47|C++动态规划Part8|198.打家劫舍、213.打家劫舍II、198.打家劫舍III

文章目录 198.打家劫舍思路CPP代码 ⭐️213.打家劫舍II解决环的问题思路总结CPP代码 ⭐️198.打家劫舍III思路递归三部曲——确定参数和返回值递归三部曲——确定终止条件递归三部曲——确定单层遍历的逻辑 打印dp数组CPP代码暴力递归记忆化递归 198.打家劫舍 力扣题目链接 文章…

安卓开发--按键跳转页面,按键按下变色

前面已经介绍了一个空白按键工程的建立以及响应方式,可以参考这里:安卓开发–新建工程,新建虚拟手机,按键事件响应。 安卓开发是页面跳转是基础!!!所以本篇博客介绍利用按键实现页面跳转&#…