vlan access, trunk, hybrid (tagged/untagged) 笔记

chatgpt/2023/9/26 14:39:21

vlan 接口和配置

PVID(port vlan ID)

定义 pvid 主要目的:

  1. 当交换机接口收到没有 vlan tag 标签的包时,接口会将定义的 pvid 作为当前包的 vlan id。
  2. 当对映 pvid vlan 的包,通过当前交换机接口发出时,接口会将包的 pvid 剥离,还原成一个不带 vlan tag 的包发出。

默认情况下,很多设备 PVID 为 1。

PVID 在 trunk 和 hybrid 情况下,并不是默认就可以允许通过 port 的。

access:

一般连接 PC,主要处理单独一个 vlan。

PVID

access 口只允许一个 vlan id 通过, access 口不会配置 PVID。access 口配置的 default vlan id,功能类似于 PVID。

收包:

access port 收到一个包后:

  1. 检查这个包带不带 vlan tag。
  2. 如果进入接口的包带 vlan tag。
    a 如果带 vlan tag,且 vlan tag 为 PVID,则 接收。
    b 如果带 vlan tag,但是 vlan tag 不是 PVID,则 drop。
  3. 如果包不带 vlan tag。
    a 不带 vlan tag,给包打上 access 口的 default vlan id,然后 接收。

发包:

access port 发包:
检查包的 vlan tag。

  1. 如果需要发的包 vlan tag 是 access 口 default vlan, 则剥去 vlan tag,然后 发出。
  2. 如果包的 vlan tag 不是 access 口 default vlan,则丢弃。

trunk:

一般用于交换机互联,主要处理多个 vlan。
trunk 口可以配置多个 allow-pass vlan 和 一个 PVID。
如果想让接口顺利的接受和发送带有 PVID 的包。trunk 口 allow-pass vlan 中需要加入 PVID 的 vlan 号。(收包和发包都必须将 PVID 写入 allow-pass vlan 中)

PVID(port vlan ID)

trunk port 只允许定义一个 PVID。
当一个 trunk port 收到不带 vlan tag 的包时,这个包被 port 接收后会打上 PIVD。
从这个 trunk port 发送出去的包,如果包打有这个 port PVID 时,包在被发送出去前,port 会将包的 PVID tag 剥离后发出。

收包:

trunk 口收到一个包:
1.检查这个包带不带 vlan tag。
2. 包不带 vlan tag,会将包打上当前 PVID tag,接收处理(前提时 trunk port allow PVID vlan pass)。
3. 包带有 vlan tag,比对当前 port 上的 allow-pass vlan 配置,如果允许 allow pass vlan 中有当前包的 vlan tag 则接受,否则 drop。

发包:

trunk 口发送一个包:

  1. 检查这个包所带的 vlan 号。
  2. 如果这个包所带的 vlan 号和当前 trunk port 的 PVID一致(前提时 trunk port allow PVID vlan pass),则将包的 vlan tag 剥离后,发送出去。
  3. 如果这个包所带的 vlan 号不是当前 trunk port 的 PVID,则会比较当前 port 配置的 allow pass vlan。当前包的 vlan 在 allow pass vlan 中,则将 vlan 包原封不动发出。如果不在,则 drop。

hybrid:

可以用于连接 PC 或者交换机。可以当作 access 或者 trunk 口,也可以处理多个未知的 vlan。hybrid 口可以通过定义port tagged/untagged 来控制 port “发包”时,是否给包打上 vlan tag。

PVID(port vlan ID)

和 trunk port 类似。PVID 不管是 tagged 还是 untagged 必须定义在 hybrid port 上。

矛盾的配置:
如果在 port 上定义的 PVID 10(发出的包不带 vlan 10 tag),同时在 port 上定义 tagged vlan 10(发出的包带 vlan 10 tag)。
那么 hybrid port 发出的 vlan 10 包,是不带 vlan 10 tag 的。(貌似 PVID 优先级更高)

tagged/untagged

tagged 和 untagged 只是针对 port 发包。
发包时:如果发现 vlan 是 untagged,则将包的 vlan id 剥离后发出。如果发现 vlan 是 tagged,则将包原封不动发出。

port 在接收包时候,会看参照 port 上配置了tagged 和 untagged 的vlan 集合。接收包的 vlan id 在此集合中的,允许通过。(验证过)

收包:

当一个 hybrid 口收到一个包:

  1. 看包带不带 vlan tag。
  2. 如果不带 vlan tag,且 hybrid 的 PVID 在 port 的 tagged/untagged vlan 中有定义,那么就将 包 打上 PVID 接受。
  3. 如果带有 vlan tag,看包的 vlan id 在此 port 上有没有定义 tagged/untagged vlan,如果定义了对映 tagged 或者 untagged vlan则接受。没有则 drop。

发包:

当一个 hybrid 口发送一个包:

  1. 看包的 vlan tag 是否属于 PVID。(这里不考虑包是否有 tag,如果没有 tag,hybrid port drop )
  2. 如果属于 PVID,且 PVID 在 port 上有定义对映的 tagged/untagged vlan。这个时候不管 port 定义的是 tagged 还是untagged vlan,接口会将 PVID 从包中剥离发送出去。(比如上面描述的矛盾的情况)
  3. 如果不属于 PVID,且在 port 上有定义对映的 tagged/untagged vlan。则更具 tagged 或者 untagged 标识,将对映的 vlan id 打上或者剥离,再将包发送出去。
  4. 如果这个包的 vlan id 不再任何 tagged/untagged vlan 中,则丢弃。

其他

一台机器上可以配置多个不同的 access、trunk,hybrid 接口。
不同机器的 hybrid 口和trunk 口可以互联,如下图,
pc1 192.168.10.1 和 pc4 和 pc5 互相 ping 通。

PC>ping 192.168.10.3Ping 192.168.10.3: 32 data bytes, Press Ctrl_C to break
From 192.168.10.3: bytes=32 seq=1 ttl=128 time=63 ms
From 192.168.10.3: bytes=32 seq=2 ttl=128 time=47 ms
From 192.168.10.3: bytes=32 seq=3 ttl=128 time=62 ms
From 192.168.10.3: bytes=32 seq=4 ttl=128 time=63 ms
From 192.168.10.3: bytes=32 seq=5 ttl=128 time=63 ms--- 192.168.10.3 ping statistics ---5 packet(s) transmitted5 packet(s) received0.00% packet lossround-trip min/avg/max = 47/59/63 msPC>ping 192.168.10.4Ping 192.168.10.4: 32 data bytes, Press Ctrl_C to break
From 192.168.10.4: bytes=32 seq=1 ttl=128 time=47 ms
From 192.168.10.4: bytes=32 seq=2 ttl=128 time=62 ms
From 192.168.10.4: bytes=32 seq=3 ttl=128 time=78 ms
From 192.168.10.4: bytes=32 seq=4 ttl=128 time=79 ms
From 192.168.10.4: bytes=32 seq=5 ttl=128 time=78 ms--- 192.168.10.4 ping statistics ---5 packet(s) transmitted5 packet(s) received0.00% packet lossround-trip min/avg/max = 47/68/79 ms

在这里插入图片描述

** LSW1 **

[LSW1]display current-configuration interface Ethernet 0/0/1
#
interface Ethernet0/0/1port link-type accessport default vlan 10
#
return[LSW1]display current-configuration interface Ethernet 0/0/3
#
interface Ethernet0/0/3port hybrid tagged vlan 10
#
return

** LSW2 **

[LSW2]display current-configuration interface Ethernet 0/0/3
#
interface Ethernet0/0/3port link-type trunkport trunk allow-pass vlan 10
#
return
[LSW2]display current-configuration interface Ethernet 0/0/2
#
interface Ethernet0/0/2port link-type accessport default vlan 10
#
return
[LSW2]display current-configuration interface Ethernet 0/0/1
#
interface Ethernet0/0/1port hybrid pvid vlan 10port hybrid untagged vlan 10
#
return

参考:
https://support.huawei.com/enterprise/zh/doc/EDOC1100127233/f9b8a34a

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

如若内容造成侵权/违法违规/事实不符,请联系郑州代理记账网进行投诉反馈,一经查实,立即删除!

相关文章

IDEA中连接虚拟机 管理Docker

IDEA中连接虚拟机 管理Docker 📔 千寻简笔记介绍 千寻简笔记已开源,Gitee与GitHub搜索chihiro-notes,包含笔记源文件.md,以及PDF版本方便阅读,且是用了精美主题,阅读体验更佳,如果文章对你有帮…

SQL注入之布尔盲注

SQL注入之布尔盲注 一、布尔盲注介绍二、布尔盲注的特性三、布尔盲注流程3.1、确定注入点3.2、判断数据库的版本3.3、判断数据库的长度3.4、猜解当前数据库名称(本步骤需要重复)3.5、猜解数据表的数量3.6、猜解第一个数据表名称的长度3.7、猜解第一个数据…

数据结构--基础知识

数据结构是什么? 数据结构是计算机科学中研究数据组织、存储和管理的方法和原则。它涉及存储和操作数据的方式,以便能够高效地使用和访问数据。 相关内容 基本组成 数组(Array):数组是一种线性数据结构,…

【Python】Python使用TK实现动态爱心效果

【Python】Python使用Tk实现动态爱心效果 画布使用了缓存机制,启动时绘制足够多的帧数,运行时一帧帧地取出来展示,明显更流畅,加快了程序执行速度。将控制跳动动画的函数从正弦函数换成了贝塞尔函数,贝塞尔函数更灵活…

多模块Springboot项目maven单独打包子模块

背景介绍 最近接手一个项目代号XXL,是一个多模块的Springboot项目,在解决了线上的bug之后,想单独给子模块打包上线部署,问题来了。如果整个工程一起mvn -X -DskipTests clean package,打包出来的XXL-web.jar是可以正常…

【LeetCode每日一题】——766.托普利茨矩阵

文章目录 一【题目类别】二【题目难度】三【题目编号】四【题目描述】五【题目示例】六【题目提示】七【题目进阶】八【解题思路】九【时间频度】十【代码实现】十一【提交结果】 一【题目类别】 矩阵 二【题目难度】 简单 三【题目编号】 766.托普利茨矩阵 四【题目描述…

【html本地工具】html+JS实现一个超好看的绘画板/涂鸦板,带画笔、矩形、圆形、直线、文本、橡皮擦,有撤销、恢复、保存功能

前言 大家好,这里是符华,今天我们来用纯htmljs实现一个绘画板,需要有以下几个功能: 画笔工具 自由画笔矩形圆形直线文本输入 画笔和橡皮擦调整大小粗细调整画笔颜色橡皮擦保存为图片撤销恢复(反撤销) 实…

服务器运行python程序的使用说明

服务器的使用与说明 文章目录 服务器的使用与说明1.登录2.Python的使用2.1 服务器已安装python32.2 往自己的用户目录安装python31.首先下载安装包2.解压缩3.编译与安装 2.3 新建环境变量2.4 测试 3 创建PBS作业并提交 1.登录 windowsr打开运行命令窗口,在运行框中…
推荐文章