环境: 机器全部开启, Pc1 连入 vlan10,LW1 0/0/1 用 access 连接 LW2, 其他 pc 默认 vlan1, 将 LW2 0/0/1 以 access 连接 LW1,PC1 和 PC4 可以通
思路: 其实两台交换机用 access 连接是不正规的, 而且不同 vlan 应该连接不成功, 结果却可以通, 解说
PC1 发送数据到 LW1 0/0/2, 端口会查看 PVID 发现数据是 vlan10 发出的,, 发出时会查看 mac 地址表及端口, LW1 0/0/1 是用 access 链接的, 不用打标签, 数据会直接发到 LW2 0/0/1, 同理, 会直接发到 PC4, 全程不打标签, 直接发送
<LW1>sys
Enter system view, return user view with Ctrl+Z.
[LW1]vlan 10 建立 vlan10
- [LW1-vlan10]q
- [LW1]interface gi 0/0/2
[LW1-GigabitEthernet0/0/2]port link-type access 将端口 0/0/2 设置成 access 模式, 并加入 vlan10(终端与交换机一定是 access 模式连接)
- [LW1-GigabitEthernet0/0/2]port default vlan 10
- [LW1-GigabitEthernet0/0/2]q
- [LW1]interface gi0/0/1
[LW1-GigabitEthernet0/0/1]port link-type access 将端口 0/0/1 设置成 access 模式, 加入 vlan10(此步骤即是实验)
- [LW1-GigabitEthernet0/0/1]port default vlan 10
- LW2
- <LW2>sys
Enter system view, return user view with Ctrl+Z.
[LW2]interface gi0/0/1
[LW2-GigabitEthernet0/0/1]port link-type access 将端口 0/0/1 设置为 access 模式, 加入 vlan1(默认)
[LW2-GigabitEthernet0/0/1]port default vlan 1
环境:
在方案一的基础上, 将交换机之间的连接改为 trunk 链接, PC1 与 PC2 将不通
说明:
PC1 发送数据到 LW1 0/0/2, 端口会查看数据是 vlan10 发出的, access 不打标签, 发出时会查看 mac 地址表及端口, 发现是 vlan10 对应的是端口 0/0/1, 而 0/0/1 是 trunk 链接, 需要打上标签 vlan10, 到 LW2 0/0/1 时, LW2 没有 vlan10 的路径, 所以会直接丢弃数据
环境: 在方案二的基础上, 将 LW2 0/0/3,0/0/1 加入 vlan10 即可拼通
说明:
同理, 当数据到达 LW2 的 0/0/1 接口时, 此接口为 trunk 连接, 需要打上标签, 但它发现数据接收时就已经带了标签 vlan10, 那就会直接通过, LW2 查看 mac-address, 得知 vlan10 对应的出口是 0/0/3, 发送到此端口, PC4 就可以收到数据了, 返回的路径同理, 所以可以拼通.
环境:
交换机 1 的 0/0/2 与交换机 2 的 0/0/3 端口都属于 valn10, 即 PC1 与 PC4 同属于 vlan10, 将 LW1 0/0/1 端口连 LW2 设置为 access(可能存在操作失误, 忘记匹配), 将 LW2 0/0/1 连接 LW1 设置为 trunk,PC2 和 PC3 不做配置.
说明:
PC1 发出数据, LW1 0/0/2 接收到数据会查询 PVID(display port vlan), 即来源的 vlan 号, 交换机再查询 mac 地址表 (display mac-address vlan xx), 即此 vlan 的出去端口在哪里, 因为 LW1 的两个端口都是 access 连接, 都没有标签, 发到 LW2 的 0/0/1 时, LW2 0/0/1 发现接收的数据没有标签, 而自己的端口是 trunk 连接, 必须要贴标签, 只能贴上自己默认的标签 vlan1(默认所有端口都属于 vlan1), 同样 LW2 查询自己的 mac 地址, 属于 vlan1 的只有 0/0/2 连接的 PC1, 因此数据就会错发送到 PC3, 该接收信息的 PC4 却收不到数据
结论
Access 与 Trunk 链路的区别:
# 连接的设备不同;
access , 一般连接的是终端设备;
trunk , 一般连接的是交换机设备;
# 支持的 VLAN 不同;
access, 永远只能属于一个 VLAN ;
trunk , 可以同时支持多个 VLAN ;
- # 对数据的操作不同
- access :
对于出向数据而言, 是不打标签的;
对于入向数据而言, 是不打标签的;
trunk :
对于出向数据而言, 肯定是需要打标签的;
对于入向数据而言,
# 如果接收到的数据是携带标签的,
& 如果该接收端口是允许该 vlan 的, 则直接接收;
& 如果该接收端口不允许该 vlan 的, 则直接丢弃;
# 如果接受到的数据是不携带标签的,
就会使用该 trunk 端口上的 PVID 表示的
vlan 号, 为数据打一个标签;
注意:
trunk 链路上的默认的 PVID 是 1
来源: http://www.bubuko.com/infodetail-2587975.html