802.1Q 是 IEEE 定义的 虚拟局域网(VLAN)标准协议,作用是给以太网帧打标签,让一条物理链路可以同时传输多个逻辑隔离的网段。在车载以太网、企业网、Linux 网桥、交换机中是必用协议。
肥钦实验室,公众号:404技术实验室【Linux】网络知识点——什么是vlan
在 源 MAC 地址 和 类型字段之间 插入 4 字节标签:
普通以太网帧:目的MAC(6) + 源MAC(6) + 类型(2) + 数据
带 802.1Q 标签的帧:目的MAC(6) + 源MAC(6) + **TPID(2) + TCI(2)** + 类型(2) + 数据
TPID(2 字节)固定值:0x8100表示:这是一个 802.1Q VLAN 帧
TCI(2 字节) 包含:
Linux 内核支持 802.1Q,通过 子接口(VLAN 接口) 实现。
格式:eth0.10 → 物理网卡 eth0 + VLAN 10
eth0.VID 子接口modprobe 8021qip linkaddlink eth0 name eth0.10 type vlan id10ip addr add192.168.10.100/24 dev eth0.10ip link set up eth0.10
ip -d link show eth0.10cat /proc/net/vlan/config
ip link del eth0.104 字节
4094 个(1~4094)
tcpdump -i eth0 -e vlan802.1Q 是给以太网帧加 4 字节 VLAN 标签 的协议,实现一条物理线多逻辑隔离网络。Linux 用 eth0.vid 子接口支持,车载以太网里是域隔离、QoS、多网段复用的基础协议。