Wprowadzenie do VLAN - jedna sieć czy wiele sieci?
Kiedy w sieci komputerowej przyrasta użytkowników i urządzeń końcowych, nie zawsze chcemy, aby wszyscy bez ograniczeń mogli komunikować się między sobą.
Często ze względu na różny charakter realizowanych zadań sieci (biurowa, laboratoryjna) wymagana jest inna konfiguracja samej sieci.
Naturalnym rozwiązaniem wydaje się budowa kilku oddzielnych sieci w oparciu o niezależne urządzenia. Oczywiście jest to możliwie, a czasem również konieczne. Czy to jedyne rozwiązanie? Z pomocą przychodzą przełączniki zarządzalne, które umożliwiają konfigurację wielu logicznych sieci.
Wirtualne sieci lokalne (Virtual Local Area Networks, VLAN) umożliwiają podział większej fizycznej sieci komputerowej na logiczne, odizolowane segmenty. Podział ten realizowany jest na poziomie drugiej warstwy sieci w modelu ISO/OSI. Technologia VLAN została opisana w standardzie 802.1Q.
VLAN-y są m.in. wykorzystywane do:
- segmentacji sieci,
- odizolowania użytkowników od siebie,
- oddzielenia różnego rodzaju ruchu.
Na poniższym rysunku przedstawiono ideę VLAN. Na przełączniku SW, który umożliwia konfigurowanie VLAN-ów, wykonano logiczny podział sieci, który obrazowo odpowiada konfiguracji sieci na dwóch niezależnych przełącznikach (SW1 i SW2).
Tylko urządzenia należące do tej samej sieci VLAN mogą komunikować się ze sobą, każda sieć VLAN tworzy bowiem niezależną domenę rozgłoszeniową. Jeden VLAN jest równy jednej domenie rozgłoszeniowej, zatem wszelkiego rodzaju ruch przepływający w obrębie jednego VLAN-u (unicast, multicast, broadcast) nie będzie widoczny w pozostałych VLAN-ach.
Poza izolacją segmentów sieci podejście to pozwala też ograniczyć zalewanie portów przełącznika rozgłoszeniami z protokołów ARP i DHCP, które nigdy nie przekraczają granic sieci VLAN. Dla każdego VLAN-u przełącznik tworzy odrębną tablicę adresów fizycznych urządzeń.
Konfiguracja VLAN odbywa się na przełącznikach sieciowych warstwy drugiej (L2). Bardzo ogólnie mówiąc, polega na stworzeniu na przełączniku obiektu „vlan” i przypisaniu do niego określonych portów fizycznych przełącznika. W ten sposób na jednym fizycznym przełączniku (lub wielu przełącznikach sieciowych niezależnie od ich położenia) można utworzyć odizolowane od siebie sieci lokalne.
Oznaczanie ramek należących do VLAN-u
W sytuacji, kiedy przełącznik obsługuje ruch do kilku logicznych sieci, musi otrzymywać informacje, do której sieci dany ruch powinien być skierowany.
W zależności od typu portu, jaki został zdefiniowany, przełącznik dodaje, nie dodaje bądź usuwa tzw. VLAN Tag w ramce ethernetowej (ramka to najmniejsza porcja transmisji danych w sieci ethernet, która posiada określone pola w celu obsługi transmisji, a właściwe dane, np. fragmenty pliku będącego filmem, przesyła w polu Data).
VLAN Tag umożliwia przełącznikowi „odnalezienie” VLAN-u, a co za tym idzie urządzenia końcowego (stacji roboczej, drukarki), do którego mają być dostarczone dane (przenoszone w polu Data ramki ethernetowej z określonym VLAN ID).
VLAN Tag jest umiejscowiony w ramce Ethernet między adresem źródłowym i polem typ/długość. Składa się z 4 bajtów, w skład których wchodzą:
- Tag Protocol Identifier (TPID) – pozwala na rozróżnienie ramek nietagowanych, tagowanych pojedynczo i podwójnie tagowanych;
- Priority – bity przeznaczone do definiowania priorytetów jakościowych przesyłanej transmisji;
- Drop Eligible Indicator (DEI) – bit wykorzystywany razem z bitami Priority służy do oznaczania ramek, które mogą być odrzucone w przypadku wykorzystania całkowitej przepustowości na łączu;
- VLAN ID – 12 bitów definiujących numer przenoszonego VLAN-u. Pozwala na zdefiniowanie 4094 VLAN-ów do wykorzystania w sieci (od 1 do 4094). VLAN 0 i 4095 są zarezerwowane i nie można ich używać.
Dodanie 4-bajtowego taga do ramki Ethernet powoduje zmianę maksymalnej wielkości ramki z 1518 na 1522 bajtów. Na portach trunk lub hybrid wysyłane ramki są oznaczone VLAN Tag zgodnie z numerem VLAN (VLAN ID), z którego pochodzą.
Na portach typu access wysyłane ramki zawsze są nietagowane (nie zawierają VLAN Tag). Możliwe jest dodanie do ramki drugiego tagu – taką ramkę nazywa się podwójnie tagowaną, ale o tym w kolejnym artykule.
Porty na przełączniku
Już wcześniej zostało wprowadzone pojęcie „typ portu” na przełączniku. Co to oznacza, skoro fizycznie wszystkie gniazda wyglądają identycznie? Można powiedzieć, że typ portu zależy od rodzaju ruchu, jaki jest przez niego obsługiwany. Takie określenie wydaje się dosyć intuicyjne, gdyż porty dzielimy na:
- Access
- Trunk
- Hybrid
Port Access (często nazywany dostępowym) – służy do podłączania urządzeń końcowych i jest to port przypisany do określonego VLAN-u. Ruch wysyłany na tym porcie jest nietagowany (ramka nie posiada VLAN Tag). Wysyłany jest tylko ruch ze zdefiniowanego VLAN-u. Ruch wchodzący na ten port jest kierowany do zdefiniowanego VLAN-u, do którego port został przypisany.
Port Trunk – służy do łączenia przełączników między sobą (oraz przełączników z routerami) i przesyłania wielu VLAN-ów na pojedynczym łączu. Aby możliwe było przesyłanie wielu strumieni danych w jednym łączu, wszystkie ramki w łączu trunk pochodzące od wielu VLAN-ów zawierają odpowiednie tagi VLAN z różnymi VLAN ID. Jeden VLAN, określany jako VLAN natywny, jest przesyłany po łączu typu trunk jako nietagowany. Ruch wchodzący na ten port jest interpretowany na podstawie tagu VLAN nadanego przez urządzenie po drugiej stronie. Jeśli na port typu trunk wchodzi ruch nietagowany, to jest on kierowany do ustawionego VLAN-u natywnego.
Port Hybrid – łączy cechy portów access i trunk, pozwala na wysłanie na pojedynczym łączu zarówno VLAN-ów tagowanych, jak i nietagowanych innych niż VLAN natywny.
Przy opisie typów portów pojawiło się określenie VLAN natywny (ang. native VLAN). Jest to dodatkowy VLAN definiowany na łączu trunk i hybrid. Ruch wychodzący, jeśli należy do VLAN-u natywnego, na łączu trunk i hybrid jest wysyłany nietagowany.
Ruch nietagowany wchodzący na port trunk lub hybrid trafia właśnie do VLAN-u natywnego. Istotne jest to, że VLAN natywny ustawiamy osobno po obu stronach łącza. Dla poprawnej obsługi ruchu należy ustawić ten sam numer VLAN-u po obu stronach.
Praktyczne zastosowania
Technologia VLAN oferuje wiele możliwości konfiguracyjnych. Do najczęstszych zastosowań możemy zaliczyć:
- Logiczna organizacja sieci – komputery, które powinny pracować w jednej sieci, mogą być fizycznie podłączone do różnych przełączników.
- Segmentacja sieci – odizolowanie ruchu pomiędzy VLAN-ami, np. komputery w sieci biurowej nie powinny mieć dostępu do sieci wykorzystywanej do produkcji i testowania oprogramowania czy sterowania maszynami.
- Łatwiejsze wdrażanie „Quality of Service” – priorytetyzacja usług sieciowych – wydzielona sieć VLAN może obsługiwać ruch wymagający wyższego priorytetu, np. tylko ruch z telefonii VoIP.
- Zarządzanie bezpieczeństwem i uprawnieniami - użytkownicy o różnych uprawnieniach mogą być oddzieleni od siebie – oddzielny VLAN dla sieci Wi-Fi udostępnianej gościom, wydzielona sieć do zarządzania i konfiguracji urządzeń; dla różnych VLAN-ów można tworzyć oddzielne listy kontroli dostępu.
Aktualnie w projektowaniu rozleglejszych sieci jako podstawową zasadę organizacji i działania oraz dbania o bezpieczeństwo wykorzystuje się funkcjonalność podziału sieci na VLAN-y.
Możliwości takie dostępne są w większości przełączników sieciowych warstwy drugiej. Z powyższego wynikają dobre praktyki polegające na logicznym rozdzieleniu zarówno użytkowników końcow sieci.
Również z punktu widzenia zarządzania siecią oraz wdrażania polityk bezpieczeństwa, funkcjonalności przełączników zarządzalnych warstwy drugiej dają znacznie większe możliwości administratorom.