Wybrane zagadnienia administrowania sieciami

Transkrypt

Wybrane zagadnienia administrowania sieciami
Wybrane zagadnienia administrowania sieciami
Translacja adresów sieciowych
1. Wstęp teoretyczny
Network Address Translation (NAT) - technika translacji adresów sieciowych.
Wraz ze wzrostem ilości komputerów w Internecie, pojawiła się groźba wyczerpania puli dostępnych
adresów internetowych IPv4. Udostępnianie połączenia do Internetu z wykorzystaniem mechanizmu NAT.
Aby temu zaradzić, lokalne sieci komputerowe, korzystające z tzw. adresów prywatnych (specjalna pula
adresów tylko dla sieci lokalnych), mogą zostać podłączone do Internetu przez jeden komputer (lub
router), posiadający mniej adresów internetowych niż komputerów w tej sieci. Router ten, gdy
komputery z sieci lokalnej komunikują się ze światem, dynamicznie tłumaczy adresy prywatne na adresy
zewnętrzne, umożliwiając użytkowanie Internetu przez większą liczbę komputerów niż posiadana liczba
adresów zewnętrznych. NAT jest często stosowany w sieciach korporacyjnych oraz osiedlowych.
Rys 5. Udostępnianie połączenia do Internetu z wykorzystaniem mechanizmu NAT
W zależności od miejsca podjęcia decyzji wyróżnia się dwie podstawowe grupy mechanizmów NAT:


akcja translacji podejmowana jest przed podjęciem decyzji routingu PREROUTING, grupa obemuje
wszelkie mechanizmy przekierowania DNAT,
akcja translacji podejmowana jest po podjęciu decyzji routingu POSTROUTING, grupa obejmuje
wszelkie mechanizmy translacji SNAT, Masquerade.
Obrazuje to poniższy rysunek:
1
Rys 6. Klasyfikacja mechanizmów NAT
Source Network Address Translation (SNAT) jest techniką polegającą na zmianie adresu źródłowego
pakietu IP na inny. Stosowana jest często w przypadku podłączenia sieci dysponującej adresami
prywatnymi do sieci Internet. Wówczas router, przez którego podłączono sieć, podmienia adres źródłowy
prywatny na adres publiczny (najczęściej swój własny). Szczególnym przypadkiem SNAT jest maskarada
(Masquerade) mająca miejsce, gdy router ma zmienny adres IP (np. otrzymuje go w przypadku połączenia
modemowego wdzwanianego). Wówczas router zmienia adres źródłowy na taki, jak adres interfejsu,
przez który pakiet opuszcza router.
Rys 7. Funkcjonowanie mechanizmu SNAT
Destination Network Address Translation (DNAT) jest techniką polegającą na zmianie adresu
docelowego pakietu IP na jakiś inny. Stosowana jest często w przypadku, gdy serwer mający być dostępny
z Internetu ma tylko adres prywatny. W tym przypadku router dokonuje translacji adresu docelowego
pakietów IP z Internetu na adres tego serwera.
2
Rys 8. Funkcjonowanie mechanizmu DNAT
Następstwem korzystania z mechanizmów NAT są:


większe bezpieczeństwo komputerów znajdujących się za NAT-em,
problematyka uruchomienia zewnętrznie dostępnych serwisów na komputerach w sieci
wewnętrznej - konieczność stosowania mechanizmów przekierowywania portów.
Source NAT, Masquerade
Zarządzanie regułami filtracji, translacji i modyfikacji pakietów w systemie Linux można zrealizować za
pomocą mechanizmu iptables.
Praca programu opiera się na trzech podstawowych tablicach gromadzących odpowiednie reguły: filter tablica filtracji i reguł firewalla, nat - tablica translacji (wykorzystywana w ramach omawianych zagadnień)
oraz mangle - tablica zawierająca reguły modyfikacji zawartości pakietów. Tworzenie reguł odbywa się w
sposób bardzo prosty i zaczyna się od wyboru mechanizmu, jakim będziemy się posługiwali (PRE- oraz
POSTROUTING) oraz tabeli, do której będziemy dodawali reguły (nat). Kolejnym krokiem jest
zdefiniowanie akcji, która ma być podejmowana oraz adresów oraz ewentualnych filtrów, których ma
dotyczyć. Składnia polecenia iptables przedstawia się następująco:
iptables -L - polecenie listuje wszystkie zdefiniowane reguły,
iptables -t [tablica] ... - polecenie wykonuje odpowiednie akcje na konkretnej tablicy, przykładowo:
iptables -t nat -L - listuje wszystkie reguły utworzone dla tabeli nat,
iptables -i | -o [nazwa interfejsu] ... - polecenie dotyczy odpowiedniego interfejsu wychodzącego (-o)
bądź wchodzącego (-i), nazwy interfejsów, zgodnie z konwencją Linuxową rozpoczynają się od
deskryptora eth oraz numeru karty począwszy od 0,
iptables -t nat -A [nazwa łańcucha] - skojarzenie reguł z odpowiednim łańcuchem (PREROUTING bądź
POSTROUTING),
3
iptables -s | -d [adres IP] ... - zakres polecenia jest ograniczany do konkretnych adresów źródła (-s) bądź
celu (-d),
iptables -p [protokół] ... - zakres polecenia ograniczony do konkretnego protokołu,
iptables -p tcp | udp -sport | -dport [numer portu] - reguła dotycząca konkretnego portu źródłowego (sport) bądź docelowego (-dport) w ramach protokołów tcp lub udp,
iptables ...-j MASQUERADE - skojarzenie z regułą akcji maskowania,
iptables ...-j SNAT -to [adres IP] - skojarzenie z regułą akcji SNAT na konkretny adres IP bądź zakres
adresów IP,
iptables -t [nazwa tablicy] -f - wyczyszczenie wszystkich reguł z konkretnej tablicy (w przypadku braku
argumentu -t - wyczyszczenie wszystkich reguł,
iptables -t [nazwa tablicy] -X [numer reguły] - usunięcie reguły o konkretnym numerze z podanej tablicy
reguł,
iptables-save > [nazwa pliku] - utworzenie kopii reguł w zewnętrznym pliku,
iptables-restore < [nazwa pliku] - przywrócenie kopii reguł z zewnętrznego pliku.
4

Podobne dokumenty