Sieci w Linuksie/vconfig
Narzędzie vconfig służy do tworzenia wirtualnych interfejsów sieciowych obsługujących tagi VLAN (IEEE 802.1Q). Narzędzie to jest przestarzałe - obecnie do tworzenia VLANów można użyć bezpośrednio narzędzia ip z pakietu iproute2 (patrz rozdział Sieci:Linux/iproute2/ip).
Aby móc korzystać z VLANów jądro musi je obsługiwać, w tym celu należy w menuconfig zaznaczyć opcję Networking support --> Networking options --> 802.1Q VLAN Support (VLAN_8021Q w .config). Prócz tego można włączyć również obsługę protokołu GVRP (ang. GARP VLAN Registration Protocol).
- Opcje przyjmowane przez program vconfig
- set_name_type VLAN_PLUS_VID|VLAN_PLUS_VID_NO_PAD|DEV_PLUS_VID|DEV_PLUS_VID_NO_PAD - ustawia politykę tworzenia nazw VLANów. Domyślną jest DEV_PLUS_VID.
- add interfejs numer VLANu - tworzy nowy interfejs VLANowy o nazwie zgodnej z jedną z powyższych opcji
- rem interfejsVLAN - usuwa interfejs
- set_egress_map interfejsVLAN skb_priority vlan_qos - tworzy mapowanie pomiędzy priorytetem pakietu w jądrze (skb->priority) a polem QoS wewnątrz tagu VLAN. Pozwala na nadanie priorytetu przetwarzania pakietowi na podstawie pola QoS VLAN.
- set_ingress_map interfejsVLAN skb_priority vlan_qos - tworzy mapowanie j.w. tylko dla pakietów wychodzących (mapuje skb->priority na odpowiednią wartość QoS w tagu VLAN).
- set_flag interfejsVLAN 0|1 - jeżeli ta opcja jest włączona tag VLAN jest usuwany z wnętrza ramki Ethernet. Potrzebne jest to tylko, jeżeli jakaś aplikacja przetwarzająca ramki Ethernet nie potrafi pracować na tagowanych ramkach. Domyślną wartością jest 0.
- set_bind_type PER_DEVICE|PER_KERNEL - ustawia poziom unikalności VLANów - w przypadku pierwszej opcji dany VLAN może być ustawiony dla dwóch różnych interfejsów sieciowych.
- Typy polityki nazw
- VLAN_PLUS_VID - nazwy interfejsów tworzone są zgodnie ze schematem vlan+id gdzie id jest uzupełniane zerami do 4 cyfr. Przykłady: vlan0005, vlan0125, vlan1259
- VLAN_PLUS_VID_NO_PAD - j.w., tylko nazwy nie są uzupełniane zerami. Przykłady: vlan5, vlan125, vlan1259.
- DEV_PLUS_VID - nazwy interfejsów tworzone są zgodnie ze schematem nazwa_interfejsu_rodzica+.id, gdzie id jest uzupełniane zerami do 4 cyfr. Przykłady: eth0.0005, eth1,0125, eth2.1259.
- DEV_PLUS_VID_NO_PAD - j.w., tylko nazwy nie są uzupełnianie zerami. Przykłady eth0.5, eth1.125, eth2.1259.
- Przykłady
vconfig set_name_type VLAN_PLUS_VID vconfig add eth0 2567 vcondif add eth1 7
- Tworzy interfejsy vlan2567 i vlan0007
vconfig set_name_type VLAN_PLUS_VID vconfig set_bind_type PER_DEVICE vconfig add eth0 12 vconfig add eth1 12
- Tworzy interfejsy eth0.0012 i eth1.0012