: Эта страница предполагает что вы знаете “что это ? ” и “зачем это надо?”.
Если ваше устройство имеет более чем 1 LAN порт, это значит что существует специальное подключение между различными портами, называемое коммутатором. Скорее всего, схема внутренних портов будет такая (на примере ASUS WL-500g):
Если вы хотите изменить настройки подключения портов, нужно настроить коммутатор вашего роутера(читаем network.interfaces)
swconfig для настройки коммутатора eth1 (Большинство на eth0),и так же на чипе типа rtl8366svlan0 все внешние порты кроме последнегоvlan1 только последний внешний портvlan0 стандартный vlan, т.е. если пакет не имеет тэгов, то он относиться к vlan0
В файле /etc/config/network
config 'switch' 'eth1' option 'enable' '1' option 'enable_vlan' '1' option 'reset' '1'
В файле /etc/config/network
Здесь eth1 — название интерфейса куда подключен коммутатор. В первой секции включаем коммутатор и включаем поддержку теггированного(трафика с вланом) трафика. Каждая секция switch_vlan отвечает за определенный VLAN указанный в опции vlan. Этот тег будет использоваться для добавления метки для портов указанных в секции ports. Буква t у порта обозначает что трафик в этот порт должен быть передан теггированным(с меткой), в остальные перечисленные порты он попадет без метки. Запись '0 1 2 5t' нужно читать так: передай нетегированный трафик с портов 0, 1, 2 в порт 5 с меткой 0. Так как VLAN с меткой 0 это тоже самое что трафик без метки, то на нашем порту eth0 мы получим трафик с портов 0, 1, 2 без всяких вланов. В следующей секции написано: ports='3 5t', vlan=1. Это значит что нетегированный трафик с порта 3 придет на eth0 с vlan-id=1(не рекомендую использовать vlan-id=1).
В документе, который описывает стандарт 801.2q, говорится, что значения VID 0 и 4095 не могут использоваться для теггированного трафика, так как эти значения зарезервированы: VID 0 'родной' vlan по умолчанию - оставляя диапазон из 4094 доступных значений, хотя VID 1 обычно зарезервирован для управления сетью (например, как у Dell 2708). Это означает, что vlan0 можно использовать как VLAN внутри или между устройствами, но им нельзя тегировать пакеты.
config 'switch_vlan'
option 'vlan' '0'
option 'device' 'eth1'
option 'ports' '0 1 2 5t'
config 'switch_vlan'
option 'vlan' '1'
option 'device' 'eth1'
option 'ports' '3 5t'
config 'switch_port'
option 'port' '3'
option 'pvid' '1'
Разделы интерфейса VLAN выглядят как обычные разделы интерфейсов, кроме того что вместо eth1 (или eth0, или как угодно ещё), указано eth1.0, eth1.1, и так далее, где цифра после . является номером VLAN. (это верно для ядра версии 2.6; в ядре 2.4 сделано по-другому).
Следующий пример описывает двух-интерфейсный роутер, где eth0 отведён под WAN и eth1 работает как пяти портовый свитч, сконфигурированный, как указано выше. Это находится в /etc/config/network
например
config 'interface' 'lan'
option 'ifname' 'eth1.0'
option 'proto' 'static'
option 'ipaddr' '192.168.1.1'
option 'netmask' '255.255.255.0'
option 'defaultroute' '0'
option 'peerdns' '0'
option 'nat' '1'
config 'interface' 'extranet'
option 'ifname' 'eth1.1'
option 'proto' 'dhcp'
config 'interface' 'wan'
option 'ifname' 'eth0.2'
option 'proto' 'pppoe'
option 'username' 'szabozsolt-em'
option 'password' 'M3IuWBt4'
Конечно же, если у вас на eth0 лишь свитч на пять портов (и никаких других интерфейсов), вы можете сделать интерфейс wan в eth0.1 и lan eth0.0 соответственно совпадающей с switch, switch_vlan и switch_port разделами.
Также смотрите backplane.