最近接触openwrt系统,对以太接口的lan/wan接口实现有一些理解,在这里分享下,如有写得不足之处,请大神直接指出。
查看/etc/config/network配置,可以发现如下两种情况比较常见:
情况一,
wan->eth0.1 lan->eth0.0
情况二,
wan->eth1 lan->eth0
为什么会出现这两种情况啦,实际上是硬件结构差异导致的。
使用情况一的配置,硬件结构一般是wan/lan口使用同一个交换芯片,交换芯片支持vlan功能,wan口vid = 1,而lan口vid = 0;
使用情况二的配置,硬件结构一般是wan口有独立的mac和phy,而lan口使用一个交换芯片。
采用情况一的硬件架构可以节约硬件成本,但是lan口的vlan号会有一个被wan口占用。
特殊说明下,如果要是用eth0.x的方式访问vlan口,需要编译组件
kernel modules
-> network devices
-> kmod-swconfig