Wraz ze wzrostem liczby użytkowników w sieci wzrasta ilość pakietów
rozgłoszeniowych.
Np. każde urządzenie wysyła co jakiś czas pakiety ARP z pytaniem "jaki
MAC ma podane IP", drukarki rozgłaszają że istnieją, switche sprawdzają czy nie
ma pętli, urządzenia i programy od Apple szukają siebie nawzajem, klienci
Dropboksa szuka innych klientów Dropboksa w lokalnej sieci.
Duża ilość takich pakietów (dostarczanych do każdego, niezależnie od tego czy
go te pakiety interesują czy nie) może negatywnie wpłynąć na działanie sieci,
szczególnie bezprzewodowej.
Żeby zmniejszyć ruch rozgłoszeniowy, można podzielić domeny rozgłoszeniowe przez
podzielenie użytkowników na osobne sieci.
Zauważ że na warstwie łącza danych ramki wysyłane na adres rozgłoszeniowy
trafiają do wszystkich – nawet jeśli urządzenia należą do innych sieci IP,
więc potrzeba osobnych urządzeń warstwy łącza danych (switchy).
Dla bezpieczeństwa w sieci użytkownicy powinni mieć dostęp tylko do wybranych
zasobów.
Np. użytkownicy korzystający z WiFi dla gości mają mieć dostęp jedynie do
internetu i nie powinni mieć dostępu do żadnych zasobów, pracownicy (poza
wskazanymi działami) nie mają mieć dostępu do serwerów kadrowo-płacowych,
tylko administratorzy mają mieć dostęp do zarządzania sprzętem.
Do egzekwowanie takich zasad służą firewalle (o których będzie później w
semestrze).
Gdzie umieścić taki firewall jeśli pracownicy i punkty dostępu do WiFi dla gości
są w całym budynku, pracownicy działu kadr, płac i księgowości siedzi w kilku
miejscach a każdym sprzętem musi zarządzać administrator?
Żeby móc w jednym miejscu zarządzać firewallem, można dla każdej z grup których mają dotyczyć inne reguły (np. goście, pracownicy, kadry-płace, administratorzy sieci) stworzyć oddzielną sieć złożoną z osobnych urządzeń. Potem wszystkie sieci podłącza się do urządzenia pełniącego rolę firewalla i na nim – w jednym miejscu – wykonuje potrzebną konfigurację.
W sieciach może pojawić się potrzeba "lepszego" traktowania wybranego ruchu – np. rozmów telefonicznych (VoIP). Zwykły Ethernet nie daje takiej możliwości, ale można stworzyć osobne sieci np. dla ruchu który ma być obsługiwany w pierwszej kolejności, a potem na routerch priorytetowo traktować wybrany ruch (NB: pakiety IP mają pole DiffServ określające priorytety).
Technologia VLAN pozwala skonfigurować jeden (fizyczny) switch tak by zmienił się w kilka (wirtualnych) switchy, które zachowują się tak jakby były zupełnie odrębnymi urządzeniami.
Aby połączyć switch na którym jest kilka VLANów z innym urządzeniem (i nie musieć używać po jednym porcie z każdego VLANu) można skonfigurować wybrane porty tak, by przesyłały ruch z wielu VLANów po jednym porcie, oznaczając odpowiednio każdą ramkę numerem VLANu z którego pochodzi (ang. VLAN tagging). Taką możliwość daje standard 802.1Q i jest ona powszechnie wspierana przez urządzenia sieciowe. Cisco nazywa port na który mogą pojawiać się ramki z wielu VLANów trunkiem.
W ramce Ethernet II znacznik (tag) dodaje się między adresy MAC a pole EtherType, ustawiając w miejscu tego pola stałą wartość (
0x8100
)
która pozwala odróżniać tagowane ramki od nietagowanych.
Ilustracja z wikipedii
RS-232 - standard szeregowej transmisji danych. Dawniej łączono terminal z komputerem po RS-232, potem używano go do łączenia komputerów ze sobą i z urządzeniami zewnętrznymi (np. myszą). Został zastąpiony przez standard USB, jednak w tej chwili wciąż wiele urządzeń wciąż korzysta / wspiera ten protokół. Na jego bazie powstało wiele nowych i powiązanych protokołów.
Cisco (i inni producenci sprzętu sieciowego) używa części standardu RS-232 do łączenia swoich produktów przez port zwany konsolą (console) z komputerami. Cisco nie używa standardowych gniazd, port konsoli jest gniazdem 8P8C vel RJ-45 (szczegóły).
W wielu komputerach i laptopach nie montuje się portów RS-232, w razie potrzeby należy użyć z konwertera USB ↔ RS-232.
Obsługa portu szeregowego RS-232 (w Windowsie nazywanego portem COM) możliwa jest przy pomocy następujących narzędzi:
picocom [-b<baud>] /dev/tty<reszta_nazwy_pliku_portu>
(wyjście z picocom: ctrl+a ctrl+q
) picocom -b115200 /dev/ttyS0
minicom [-s]
putty
Do prawidłowej pracy portu szeregowego należy z obu stron ustawić identyczne parametry – ilość bitów danych, stopu i parzystość (np. 8N1), prędkość (np. 9600, 115200), sterowanie przepływem (np. wyłączone).
! |
Switche serii Cisco Business 350 używane na zajęciach oczekują znaku
ASCII 'delete' do usunięcia znaku spod kursora i znaku ASCII 'backspace' do
usunięcia znaku przed kursorem. Choć to oczekiwanie brzmi to rozsądnie,
normalnie naciśnięcie klawisza ← generuje znak ASCII 'delete', a naciśnięcie
klawisza Delete generuje sekwencję '\e[3~'.
W konsoli Cisco Business 350, żeby wymazać znak spod kursora, naciśnij Poza switchami serii Cisco Business 350 pozostały sprzęt Cisco z laboratorium działa normalnie. |
Większość urządzeń Cisco pracuje pod kontrolą systemu IOS.
Na stronach Cisco można znaleźć instrukcję obsługi linii poleceń.
Autouzupełnianie, poruszanie się po różnych trybach:
?
podpowiada możliwe komendy i ich składnietab
autouzupełnia komendyexit
wychodzi o jeden tryb w górę, działa do trybu uprzywilejowanegodisable
wychodzi z trybu uprzywilejowanego (porównaj: enable
)end
/ ctrl+z
cofa się do trybu uprzywilejowanegodo <komenda>
pozwala wykonać komendę z wcześniejszego poziomu - np. komendę show vlan
w trybie konfiguracji configure terminal
wystarczy conf t
no …
odwraca działanie komendy
Tryb użytkownika - prompt >
show …
pozwala na pokazanie (w tym trybie tylko części) stanu i ustawień enable
przechodzi do trybu uprzywilejowanego (i zwykle wymaga podania hasła)Tryb uprzywilejowany - prompt
#
show …
pozwala na pokazanie stanu i ustawień show interfaces status
podsumowanie interface'ów switchashow interfaces [switchport [GigabitEthernet 1]]
(długa) informacja o interface'achshow vlan
pokazanie przypisanie portów do VLANów show vlan tag <numer>
/ show vlan name <nazwa>
- pokazanie porty przypisane do wybranego VLANaconfigure terminal
przechodzi do trybu konfiguracjiTryb konfiguracji - prompt
(config) #
hostname <nazwa>
ustawienia nazwy urządzeniavlan <numer> [name <nazwa>]
konfiguruje nowy VLAN, ewentualnie nadając mu nazwęinterface <nazwa interface'u>
- wejście w tryb ustawień podanego interface'u - prompt (config-if) #
, np: interface Gi 1
– GigaEthernet (ethernet 1Gbit) interface Vlan 4
– ustawienia wspólne dla całego VLANu switchport access vlan <nr_vlana>
dołącza port do wybranego vlanu vlan…
konfiguracja może1) nie działaćswitchport mode access
ustawia port jako zwykły port należący do wybranego vlanu (domyślne zachowanie portu)switchport mode trunk
ustawia port by był trunkiem (portem przekazującym ruch z wielu vlanów, ze znacznikami)switchport trunk native vlan {<num>|none}
wybiera jeden vlan dla którego ramki nie będą tagowane w trybie trunkinterface range <lista interfejsów>
– konfiguracja wielu interfejsów naraz, np. interface range GigabitEthernet 1-5, GigabitEthernet 11-15
Dodatkowo:
show running-config
- konfiguracja (dostępna w trybie uprzywilejowanym)show mac address-table
- informacje o tym, jaki adres MAC był widziany na którym porcieshow cdp neighbors
- pokazuje sąsiednie urządzenia Cisco używając Cisco Discovery Protocolshow ip interface
- pokazuje adresy IP ustawione dla interfejsów vlan, pozwalające na zdalna administrację switchem ip address <ip> /<maska>
- wykonane z trybu konfiguracji interfejsu vlan (uwaga na spację między IP i maską!)ping <ip>
Do prawidłowego skonfigurowania w Linuksie połączenia na którym pojawiają się
ramki z oznaczeniem VLANów, należy dla każdego z takich vlanów dodać nowy
wirtualny interfejs komendą:
ip link add link <nazwa_istniejącego_interfejsu> <nazwa_nowego_interfejsu> type vlan id <numer_vlan>
np. ip link add link eth0 eth0.2 type vlan id 2
Taki interfejs można usunąć komendą ip link del <nazwa>
.
W wynikach szczegółowej listy interfejsów – ip --detail link show
– są
wyświetlane numery VLANów dla interfejsów vlan.
Pamiętaj o włączeniu przekazywania pakietów komendami:
sysctl net.ipv4.conf.all.forwarding=1
sysctl net.ipv6.conf.all.forwarding=1
Firewall będzie omawiany później. Tutaj podaję gotowe komendy na potrzeby ćwiczeń
Wprowadzenie konfiguracji:
echo '
table inet intervlan {
chain filterforward {
type filter hook forward priority filter; policy drop;
oifname "br0" accept;
iifname "eth0.2" oifname "eth0.3" counter accept;
iifname "eth0.3" ct state established counter accept;
counter;
};
}
' | nft -f -
nft list ruleset
Usunięcie konfiguracji: nft delete table inet intervlan
Wprowadzenie konfiguracji:
iptables -P FORWARD DROP
ip6tables -P FORWARD DROP
iptables -A FORWARD -o br0 -j ACCEPT
ip6tables -A FORWARD -o br0 -j ACCEPT
iptables -A FORWARD -i eth0.2 -o eth0.3 -j ACCEPT
ip6tables -A FORWARD -i eth0.2 -o eth0.3 -j ACCEPT
iptables -A FORWARD -i eth0.3 -m conntrack --ctstate ESTABLISHED -j ACCEPT
ip6tables -A FORWARD -i eth0.3 -m conntrack --ctstate ESTABLISHED -j ACCEPT
iptables -vL
i ip6tables -vL
Usunięcie konfiguracji:
iptables -P FORWARD ACCEPT
ip6tables -P FORWARD ACCEPT
iptables -F FORWARD
ip6tables -F FORWARD