这套方案是两年前用的,当时办宽带的时候不在家,电信的工作人员上门直接把网线分成两根 4 pin 的,用是可以用,但最高只能跑 100M,我直呼好家伙,更重要的是装的光猫只有一个千兆口,其余的都是百兆口。如果要同时满足千兆宽带和 IPTV 的需求,想到的最简单的做法就是找两个交换机配置 VLAN 解决,于是买了两个入门款的交换机水星 SG105 PRO,当然,后来发现有些路由器支持 IPTV 功能,其实用一个就够了,这里不做讨论。这套方案一直运行很稳定,只是前几天的突然停电导致交换机的配置丢失,不得不重新配置,因此在这里记录一下。
一个简单的网络拓扑图如下:

可以从图中看到,弱电箱中从光猫的 LAN1 (千兆口)、LAN2 (IPTV)直接接到交换机 1 的 LAN1 和 LAN2,然后 LAN5 连接预埋的网线,直接到客厅,然后分发出来,LAN1 连接路由器,LAN2 连接电信的机顶盒,实现了整个家庭网络环境除了 IPTV外 都是千兆,而且扩展性更佳。
要实现,首先需要进入交换机后台设置 802.1Q VLAN,如下图所示:

首先是创建了两个 VLAN 分组,VLAN2 为 IPTV 使用的端口,参与数据交换的端口为 LAN2 和 LAN5,通过标记 (Tag) LAN5 完成两台交换机的数据传输;
VLAN3 为千兆网络传输端口,除了 LAN2 外都参与数据交换,通过标记 (Tag) LAN5 完成两台交换机的数据传输。
关于 Tag 和 Untag:
端口接收数据时:
当数据包为 UNTAG 帧的话,就加上该端口的 PVID,送入 PVID 所示的 VLAN 中传输; 如果数据包为 TAG 帧,那么就不再添加,直接送入 TAG 所示的 VLAN 中传输; 如果是 untagged 方式, 输入的数据包全部都要加上该端口的 PVID。不管输入的数据包是 TAG 帧还是 UNTAG 帧。
端口发送数据时:
如果端口是 TAGGED 方式 如果端口 PVID 等于发送的数据包所含的 VLAN ID,那么就会将 VLAN ID 从发送的数据包中去掉; 如果不相等,则数据包将保持原样发送出去。 如果端口是 untagged 方式 则不管端口 PVID 为多少,是否等于要输出的数据包的 VLAN,都会将 VLAN ID 从数据包中去掉。
设置好 VLAN 后,还需要为相应的端口指定 PVID(Port VLAN ID),也就是你给每个端口标记组号(使用 VLAN1 还是 VLAN2),如下图所示:

另外一台交换机没有特殊需要使用相同的配置即可。这样,一个简单的通过 VLAN 实现单线复用的方案就实现了。