# Access、Trunk、Hybrid

## 三种接口模式的作用

这三种模式本质上是交换机接口在 VLAN 场景下的工作方式。

它们分别解决的问题是：
- Access：接口主要属于一个 VLAN，常用于接终端
- Trunk：接口可以传递多个 VLAN，常用于交换机之间互联
- Hybrid：接口也可以传递多个 VLAN，并且能灵活控制哪些报文带 Tag、哪些不带 Tag

## Access

Access 接口通常连接：
- PC
- 打印机
- 摄像头
- 普通服务器接入口

特点：
- 一般只属于一个 VLAN
- 接收无 Tag 报文时，会把它归入该接口所属 VLAN
- 发送给终端时，通常发送无 Tag 报文

可以简单理解为：

Access 口主要是“给普通终端用的端口”。

## Trunk

Trunk 接口通常连接：
- 交换机与交换机
- 交换机与路由器
- 交换机与三层交换机
- 交换机与需要承载多个 VLAN 的设备

特点：
- 可以允许多个 VLAN 通过
- 发送报文时，通常会保留 VLAN Tag
- 对于某些厂商设备，特定 VLAN 的报文可以不带 Tag 发送，这通常与缺省 VLAN 或 Native VLAN 相关

可以简单理解为：

Trunk 口主要是“在一条链路上同时传多个 VLAN 的流量”。

## Hybrid

Hybrid 接口常见于华为等厂商设备。

特点：
- 也可以通过多个 VLAN
- 可以灵活指定哪些 VLAN 报文带 Tag，哪些 VLAN 报文不带 Tag
- 功能比 Access 和 Trunk 更灵活

应用场景：
- 一些需要同时承载多 VLAN，又希望部分流量以无 Tag 形式收发的场景

## Tag 的基本理解

VLAN Tag 可以理解为二层帧里携带的 VLAN 标识信息。

它的作用是让交换设备知道：
- 这个报文属于哪个 VLAN

## 三种模式下对 Tag 的常见处理

### Access

- 接收无 Tag 报文：归入接口所属 VLAN
- 发送报文给终端：通常去掉 Tag 再发送

### Trunk

- 可以传递多个 VLAN 的流量
- 一般情况下，允许通过的 VLAN 报文会被转发
- 是否带 Tag 发送，要结合厂商实现和缺省 VLAN/Native VLAN 的规则理解

### Hybrid

- 可同时处理多个 VLAN
- 可以手工指定某些 VLAN 报文带 Tag，某些 VLAN 报文不带 Tag

## PVID 的理解

PVID 可以理解为接口收到 **无 Tag 报文** 时，默认把它划入哪个 VLAN。

复习时常见理解：
- Access 口收到无 Tag 报文，通常归入自己的 PVID
- Trunk 口收到无 Tag 报文，也会按 PVID 处理
- Hybrid 口收到无 Tag 报文，同样与 PVID 有关

## 一句话总结

- **Access：一般给终端，一个口通常进一个 VLAN**
- **Trunk：一条链路传多个 VLAN**
- **Hybrid：更灵活，可自定义 Tag 与 Untag 行为**

## 常见厂商命令

### 华为

进入接口：

```bash
interface GigabitEthernet 0/0/1
```

配置 Access：

```bash
port link-type access
port default vlan 10
```

配置 Trunk：

```bash
port link-type trunk
port trunk allow-pass vlan 10 20 30
```

配置 Hybrid：

```bash
port link-type hybrid
port hybrid tagged vlan 10 20
port hybrid untagged vlan 30
```

查看接口 VLAN 信息：

```bash
display port vlan
```

### 思科 Cisco

进入接口：

```bash
interface gigabitEthernet 0/1
```

配置 Access：

```bash
switchport mode access
switchport access vlan 10
```

配置 Trunk：

```bash
switchport mode trunk
switchport trunk allowed vlan 10,20,30
```

配置 Native VLAN：

```bash
switchport trunk native vlan 10
```

查看 VLAN：

```bash
show vlan brief
```

查看 Trunk：

```bash
show interfaces trunk
```

## 复习时容易写错的点

- Access、Trunk、Hybrid 不是“VLAN 的三个协议”，而是接口的三种常见工作模式
- VLAN Tag 的处理不能写得太绝对，尤其是 Trunk 口是否带 Tag，最好结合厂商规则理解
- Hybrid 在华为设备里比较常见，Cisco 常见讨论里更多是 Access 和 Trunk
