Tento návod je platný pouze pro Turris 1.0 a 1.1
Pro nastavení VLAN na routeru Turris je nejprve zapotřebí porozumět hardwarovému návrhu a propojení jednotlivých komponent. Viz následující obrázek:
Procesor routeru Turris (SoC, P2020) má 3 síťová rozhraní. Z pohledu systému jde o eth0
, eth1
a eth2
. Zatímco eth2
je propojen přímo s konektorem WAN na zadní straně routeru, rozhraní eth0
a eth1
jsou připojena do switch-chipu, konkrétně do jeho portů 0 a 6, a jejich přiřazení fyzickým konektorům LAN1
– LAN5
lze konfigurovat.
Router je standardně dodáván v takové konfiguraci sítě, kdy konektor LAN1
je přiřazen rozhraní eth0
. Ostatní konektory (LAN2
– LAN5
) jsou spojeny s rozhraním eth1
. Viz následující soubor:
config interface 'loopback' option ifname 'lo' option proto 'static' option ipaddr '127.0.0.1' option netmask '255.0.0.0' config globals 'globals' option ula_prefix 'auto' config interface 'lan' option ifname 'eth0 eth1' option type 'bridge' option proto 'static' option ipaddr '192.168.1.1' option netmask '255.255.255.0' option ip6assign '60' config interface 'wan' option ifname 'eth2' option proto 'dhcp' config interface 'wan6' option ifname '@wan' option proto 'dhcpv6' config switch option name 'switch0' option reset '1' option enable_vlan '1' config switch_vlan option device 'switch0' option vlan '1' option ports '0 1 2 3 4 ' config switch_vlan option device 'switch0' option vlan '2' option ports '5 6'
Z posledních dvou bloků config switch_vlan
je patrné, že máme nastaveny dvě VLANy. V prvním bloku je definována VLAN1
jako spojení portů switch-chipu čísla 0 1 2 3 4
. Port0
dle obrázku výše náleží rozhraní eth1
, porty 1 až 4 pak přísluší fyzickým konektorům LAN2
až LAN5
, připojíme-li tedy do jednoho z nich ethernetový kabel, jsme schopni příslušný datový tok zachytit na rozhraní eth1
(a taktéž na rozhraní br-lan
, jelikož eth1
a eth2
jsou spojeny do bridge, viz blok config interface 'lan'
).
Analogicky lze číst další blok config switch_vlan
: VLAN2
náleží port6
(a tedy rozhraní eth0
) a port5
, který je připojen k fyzickému konektoru LAN1
.
Z předchozího odstavce je patrné, že eth1
a eth0
reprezentují VLANy s označením VLAN1
a VLAN2
. Chceme-li přidat další VLANy, je to možné. Viz následující příklad (zmíněny jsou pouze bloky config switch_vlan
):
config switch_vlan option device 'switch0' option vlan '1' option ports '0t 1 2' config switch_vlan option device 'switch0' option vlan '2' option ports '5 6' config switch_vlan option device 'switch0' option vlan '3' option ports '0t 3 4 '
VLAN2
zůstala stejná jako v předhozím případě (spojuje rozhraní eth0
a konektor LAN1
). VLAN1
nyní obsahuje port0
(rozhraní eth1
), port1
(a tedy konektor LAN5
) a port2
(odpovídá konektoru LAN4
). Všimněte si, že port0
je označen jako tagovaný (0t
), v tomto případě je to nunté, protože port0
(rozhraní eth1
) je použito jako linka mezi switch-chipem a procesorem jak pro VLAN1
tak pro VLAN3
.
Analogicky pak je možné číst i poslední blok.
Pro správnou funkci nastavených VLAN je ještě nutné pozměnit blok config interface 'lan'
. Např. takto:
config interface 'lan' option ifname 'eth0 eth1.1' option type 'bridge' option proto 'static' option ipaddr '192.168.1.1' option netmask '255.255.255.0' option ip6assign '60' config interface 'lan-2' option ifname 'eth1.3' option type 'bridge' option proto 'static' option ipaddr '10.0.0.1' option netmask '255.255.255.0'
Všimněte si, že v bloku 'lan'
jsme změnili eth1
na eth1.1
, což značí VLAN1
na rozhraní eth1
. Dále jsme si vytvořili novou síť 'lan-2'
se statickým adresováním do které máme přiřazenu VLAN3
a tedy fyzické konektory LAN2
a LAN3
(viz předchozí nastavení VLAN a diagram zapojení výše).