Portál AbcLinuxu, 23. května 2025 11:52
V blogpostu Jak skamarádit openvswitch a systemd jsem uvedl ukázkový příklad konfigurace virtuálního portu switche se zapojeným síťovým rozhraním eth0. Tento zápis rozšiřuje téma o volby nezbytné pro správné nastavení VLAN.
Na síťové rozhraní eth0 je přiveden trunk, ze kterého se na portech bridge využijí pouze vybrané vlan - 5, 19 a 212.
Pro předání volby "trunks" se seznamem vybraných vlan na portu se použije parametr ovs_options
Tímto parametrem lze nastavovat také příslušné tagy u jednotlivých portů. Stejnojmenný interní port bridge main
na kterém má viset IP adresa stroje se automaticky přidá ihned po založení bridge. Proto je třeba pro nastavení tagu příslušné vlan, využít parametru ovs_extra
, který provede nastavení tagu příslušného portu ihned po jeho zavedení.
root@stroj:~# cat /etc/network/interfaces allow-ovs main iface main inet static address 10.0.0.214 gateway 255.255.255.0 netmask 255.255.255.0 ovs_type OVSBridge ovs_ports eth0 ovs_extra set port ${IFACE} tag=5 allow-main eth0 iface eth0 inet manual ovs_bridge main ovs_type OVSPort ovs_options trunks=5,19,212
Pozor! Pokud máte nastaveno více bridgů pro různá rozhraní, dávejte zvýšený pozor na správné nastavení závislostí portů a bridgů v konfiguraci. Obzvláště pokud modifikujete stejnou konfiguraci na více strojích.
A nyní již lze přikročit k vlastnímu nahození síťového rozhraní main
s IP adresou 10.0.0.214
root@stroj:~# ovs-vsctl show 67279f1f-42c7-4f32-91aa-0946e7e8ee48 ovs_version: "2.3.0" root@stroj:~# ifup main root@stroj:~# ovs-vsctl show 67279f1f-42c7-4f32-91aa-0946e7e8ee48 Bridge main Port main tag: 5 Interface main type: internal Port "eth0" trunks: [5, 19, 212] Interface "eth0" ovs_version: "2.3.0"
Podobným způsobem lze řešit i nastavení dalších voleb. Pro výpis aktuálních parametrů je k dispozici příkaz ovs-vsctl list
, kterému se jako parametr předává klíčové slovo bridge, port nebo interface, případně upřesněné jménem toho co nás zajímá. Viz ukázkový výpis interního portu bridge main
z výše uvedeného příkladu:
root@stroj:~# ovs-vsctl list port main _uuid : 7c1bf44b-4e50-4b2b-a66f-18fc5c69e5e4 bond_downdelay : 0 bond_fake_iface : false bond_mode : [] bond_updelay : 0 external_ids : {} fake_bridge : false interfaces : [18c87c4b-38a0-46bf-871a-8e4ead9b946f] lacp : [] mac : [] name : main other_config : {} qos : [] statistics : {} status : {} tag : 5 trunks : [] vlan_mode : []
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.