NAT - Wprowadzenie
NAT
Network Address Translation
Na podstawie materiałów szkoleniowych Cisco
CCNP 2 Remote Access Networks version 3.0 " Technologia translacji adresów NAT (RFC 1631) została utworzona
głównie w celu zapobiegnięcia szybkiemu wyczerpaniu adresów
dostępnych w protokole IP
" Polega na zamianie adresów IP i/lub numerów portów TCP w
wysyłanych i odbieranych pakietach zgodnie z ustalonymi zasadami
" Dodatkową zaletą zastosowania NAT jest zwiększenie zabezpieczenia
sieci poprzez ukrycie jej wewnętrznej struktury
2
Adresy prywatne Adresy prywatne
" 172.16.0.0 172.31.255.255: 172.16.0.0/12
SkÄ…d wynika maska /12 w tym zakresie adresowym?
12 wspólnych (jednakowych) bitów
" RFC 1918 określa powyższe trzy bloki adresów IP jako
adresy prywatne 10101100 . 00010000 . 00000000 . 00000000 172.16.0.0
" W odróżnieniu od adresów publicznych mogą one
10101100 . 00011111 . 11111111 . 11111111 172.31.255.255
występować wielokrotnie w różnych częściach sieci i ich
-------------------------------------------------------------
przydział nie jest rejestrowany w bazach takich jaki RIPE i
10101100 . 00010000 . 00000000 . 00000000 172.16.0.0/12
ARIN
3 4
NAT - terminologia NAT terminologia
" Wewnętrzny adres lokalny (inside local address) adres IP
" Adresy wewnętrzne (inside addresses) jest to zakres adresów,
przypisany do hosta i używany tylko wewnątrz danej sieci lokalnej.
które podlegają translacji.
Może to być unikalny adres publiczny (nawet oficjalnie przyznany innej
Typowo adresy wewnętrzne są adresami prywatnymi (RFC 1918), organizacji!) lub prywatny (z puli RFC 1918).
ale mogą być także zwykłymi adresami IP.
" Wewnętrzny adres globalny (inside global address) adres IP
" Adresy zewnętrzne (outside addresses) są to pozostałe adresy hosta wewnętrznego, który pojawia się na zewnątrz sieci. Jest to adres
używane w danej sieci. przetłumaczony przez NAT. Typowo są to unikalne adresy publiczne
przyznawane przez dostawców Internetu.
Zwykle są to publiczne adresy używane w Internecie.
5 6
1
NAT - terminologia NAT - funkcje
" Translacja wewnętrznych adresów lokalnych
NAT
" Współużytkowanie wewnętrznych adresów globalnych
Outside local and Outside global address PAT (określany też jako NAT jeden do wielu lub przeciążony)
" Rozkład (podział) obciążenia TCP
" Zewnętrzny adres lokalny (outside local address) adres IP Dla wybranego ruchu od sieci zewnętrznej do wewnętrznej może
zewnętrznego hosta jaki widziany jest przez hosty w sieci wewnętrznej. być zastosowana dynamiczna translacja przeznaczenia na
podstawie algorytmu round-robin
jeżeli jest taka potrzeba, to może on być alokowany z przestrzeni
RFC 1918. " Obsługa sieci z nakładającymi się adresami IP
" Zewnętrzny adres globalny (outside global address) adres IP NAT może być użyty do rozwiązania problemu adresowania
ustawiony w konfiguracji hosta zewnętrznego. pojawiającego się przy zachodzeniu na siebie adresów z części
wewnętrznej i zewnętrznej
7 8
NAT - rodzaje NAT - lokalizacja
" Statyczny NAT umożliwia stałe mapowanie jeden do jednego " Protokół NAT zazwyczaj implementowany jest w urządzeniu
adresów wewnętrznych i zewnętrznych.
(np. routerze) znajdujÄ…cym siÄ™ na brzegu sieci i Å‚Ä…czÄ…cym tÄ™
" Dynamiczny NAT pozwala na mapowanie zakresu adresów
sieć z sieciami zewnętrznymi.
wewnętrznych na zakres adresów zewnętrznych.
Outside Network
Inside Network
9 10
NAT - przykłady NAT - przykłady
12 12
DA SA DA SA
128.23.2.2 10.0.0.3 .... Data 128.23.2.2 179.9.8.80 .... Data
IP Header IP Header
12
" Translacja prywatnego zródłowego adresu IP na publiczny zródłowy
adres IP.
11 12
2
NAT - przykłady NAT korzyści i ograniczenia
3 4
DA SA DA SA
" NAT pozwala na użytkowanie większej liczby adresów niż przyznane
10.0.0.3 128.23.2.2 .... Data od dostawcy łącza poprzez użycie adresów prywatnych (RFC 1918)
179.9.8.80 128.23.2.2 .... Data
" Jakkolwiek klasyczny NAT (nie PAT!) nadal ogranicza liczbę hostów w
IP Header
IP Header
3 4
sieci wewnętrznej, które będą mogły mieć jednocześnie dostęp do
" Translacja wsteczna (przy odbiorze) publicznego adresu docelowego Internetu (zależnie od liczby adresów publicznych)
na prywatny adres docelowy.
13 14
Statyczny NAT Konfigurowanie statycznego NAT
" Translacja statyczna jest wykonywana gdy dany adres znajduje siÄ™ w
tabeli NAT
" Wyspecyfikowany w tabeli wewnętrzny adres lokalny jest mapowany
na predefiniowany wewnętrzny adres globalny
" Adresy wewnętrzne lokalny i globalny są statycznie mapowane jeden
do jednego
" Oznacza to, że dla każdego wewnętrznego adresu lokalnego NAT
wymaga wewnętrznego adresu globalnego
15 16
Konfigurowanie statycznego NAT Konfigurowanie dynamicznego NAT
17 18
3
Konfigurowanie dynamicznego NAT
Od ISP lub RIPE uzyskany został
zakres adresów 179.9.8.0/24
W tabeli routingu ISP musi
PAT
być wpis:
179.9.8.0/24 via 192.168.1.1
Port Address Translation
ISP
NAT overload lub NAT jeden do wielu
Translacja na
podane tu adresy
Adresy zródłowe
muszą pasować do
0.0.255.255 wzorca w tej liście
19
PAT Port Address Translation PAT Port Address Translation
" PAT umożliwia translację wielu prywatnych adresów IP na pojedynczy
" PAT (Port Address Translation) pozwala na używanie jednego
adres publiczny (translacja jeden do wielu)
publicznego adresu IP i przypisanie do niego nawet do 65536 hostów
" Likwiduje to ograniczenia NAT realizujÄ…cego translacjÄ™ jeden do
wewnętrznych
jednego
" PAT modyfikuje numery portów zródłowych TCP/UDP w celu
identyfikacji adresów hostów wewnętrznych
" PAT śledzi i wykonuje translacje wartości SA, DA i SP (które
21 22
jednoznacznie identyfikują połączenie) dla każdego strumienia danych
PAT - przykłady
PAT - cechy
" PAT używa unikalnych numerów portów zródłowych TCP lub UDP
przypisanych do jednego wewnętrznego adresu globalnego i w ten sposób
rozróżnia poszczególne połączenia
Tabela NAT/PAT
obsługuje translacje
DA, SA, SP
DA SA DP SP
DA SA DP SP
128.23.2.2 10.0.0.3 80 1331 Data
128.23.2.2 179.9.8.80 80 3333 Data
TCP/UDP
IP Header TCP/UDP
IP Header
Header
Header
12
DA SA DP SP
DA SA DP SP
128.23.2.2 10.0.0.2 80 1555 Data
128.23.2.2 179.9.8.80 80 2222 Data
TCP/UDP
IP Header TCP/UDP
IP Header
Header
Header
23 24
4
PAT - przykłady Konfigurowanie PAT
179.9.8.20 jest adresem przypisanym przez ISP
179.9.8.20
179.9.8.20
Tabela NAT/PAT obsługuje
translacje:
10.1.0.0
SA (DA), DA (SA), DP (SP)
DA SA DP SP DA SA DP SP
10.0.0.3 128.23.2.2 1331 80 Data 179.9.8.80 128.23.2.2 3333 80 Data
TCP/UDP TCP/UDP
IP Header IP Header
Header Header
43
DA SA DP SP DA SA DP SP
10.0.0.2 128.23.2.2 1555 80 Data 179.9.8.80 128.23.2.2 2222 80 Data
" W powyższym przykładzie publicznym adresem IP jest adres 179.9.8.20
TCP/UDP TCP/UDP
IP Header IP Header
Header Header
25 26
Konfigurowanie PAT
Podział obciążenia TCP
W tym przykładzie
zamiast jawnie
podanego
wewnętrznego
globalnego adresu IP
użyta jest nazwa
interfejsu zewnętrznego
27
Podział Podział
obciążenia TCP obciążenia TCP
Z użyciem Bez użycia
translacji NAT adresów
prywatnych
" Routery Cisco realizują podział obciążenia TCP jako rozszerzenie
statycznego mapowania adresów
" Podział obciążenia TCP może być także zrealizowany bez
" Funkcja ta pozwala na mapowanie jednego zewnętrznego adresu na
wykonywania translacji NAT pomiędzy adresami prywatnymi i
wiele adresów wewnętrznych w celu podziału ruchu na wiele hostów publicznymi
" Router RTA został skonfigurowany aby mapować wewnętrzne lokalne
" Na powyższym rysunku proces NAT w routerze przekazuje połączenia
adresy serwerów www1 (171.70.2.3) i www2 (171.70.2.4) na jeden
TCP do dwóch wewnętrznych serwerów WWW (10.1.1.6 i 10.1.1.7)
wewnętrzny adres globalny 171.70.2.10
widzianych pod wspólnym adresem zewnętrznym 171.70.2.10
" Wszystkie wymienione adresy sÄ… adresami publicznymi w tej samej
podsieci (171.70.2.0/24). W takiej konfiguracji adres 171.70.2.10 jest
określany jako adres hosta wirtualnego.
29 30
5
Konfigurowanie podziału obciążenia TCP
Konfigurowanie podziału obciążenia TCP
przykład
" RTA jest skonfigurowany do translacji
adresów które odpowiadają ACL 46 na
adresy określone przez zakres webservers
" Ponieważ zakres adresów webservers
został zdefiniowany z użyciem opcji rotary ,
pierwsza translacja zostanie wykonana na
adres 171.70.2.3, druga na adres
171.70.2.4, trzecia ponownie na adres
171.70.2.3 itd.
" W ten sposób ruch na łączu zewnętrznym
zostaje zostaje rozłożony na wiele serwerów
wewnętrznych
" Konfiguracja jest zbliżona do zwykłego NAT, ale użyta
RTA(config)#ip nat pool webservers 171.70.2.3 171.70.2.4 netmask
została opcja type rotary
255.255.255.0 type rotary
" Zakres wewnętrznych adresów docelowych został RTA(config)#access-list 46 permit host 171.70.2.10
RTA(config)#ip nat inside destination list 46 pool webservers
określony poprzez listę dostępu (ACL)
RTA(config)#interface e0
RTA(config-if)#ip nat inside
RTA(config-if)#interface s0
RTA(config-if)#ip nat outside
31 32
Sieci
zachodzÄ…ce
Obsługa sieci z nakładającymi
siÄ™ adresami IP
(tzw. sieci zachodzÄ…ce)
Host A chce nawiązać połączenie IP z hostem Z, ale nie może bezpośrednio użyć adresu IP
hosta Z (10.1.1.6) ponieważ adres ten należy do sieci w której znajduje się host A.
" Z sieciami zachodzÄ…cymi (overlapped) mamy do czynienia, gdy adres
IP przydzielony urządzeniu w sieci lokalnej jest jednocześnie
przypisany innemu urządzeniu w sieci zewnętrznej
" Sytuacja taka występuje szczególnie wtedy, gdy w obu sieciach
używane są adresy prywatne (RFC 1918)
" Celem jest uzyskanie komunikacji bez zmiany adresów przypisanych
urzÄ…dzeniom
34
Sieci
Sieci zachodzÄ…ce
zachodzÄ…ce
192.168.3.6 10.1.1.6
" Serwer DNS zwraca odpowiedz z aktualnym adresem IP hosta Z (czyli
" W takim przypadku jedyną możliwością komunikacji hosta A
10.1.1.6)
z hostem Z jest użycie DNS i NAT
" Router RTA wykonuje wówczas translację zawartości odpowiedzi DNS
" Zamiast używania adresu IP hosta Z, host A będzie używać nazwy
(jest to działanie w warstwie aplikacyjnej, zaimplementowane w
hosta Z
Cisco IOS)
" Przykładowo jeżeli użytkownik hosta A wykona komendę
" RTA utworzy w tabeli translacji wpis dotyczÄ…cy mapowania
ping HostZ, wysłane zostanie odpowiednie zapytanie do serwera
zewnętrznego adresu globalnego 10.1.1.6 na zewnętrzny adres lokalny
DNS
192.168.3.6 (pod takim adresem będzie widziany host Z w sieci
" Pakiet IP z zapytaniem DNS zostanie poddany translacji NAT i
wewnętrznej, czyli jest to adres typu outside local )
zapytanie to będzie odebrane przez serwer DNS jako pochodzące z
" Host A otrzyma odpowiedz DNS dotyczÄ…cÄ… nazwy HostZ i zawierajÄ…cÄ…
adresu 192.168.1.7
adres 192.168.3.6
35 36
6
Sieci
zachodzÄ…ce
Sieci zachodzÄ…ce -
konfiguracja
" Host A może wówczas nawiązać połączenie z hostem Z
" Gdy host A wysyła pakiet do hosta Z, router RTA tworzy kolejny wpis w
tabeli NAT dotyczący translacji pomiędzy wewnętrznymi adresami
10.1.1.7 i 192.168.1.7
" Ponieważ router RTA wykonuje zarówno translację wewnętrznego
lokalnego adresu zródłowego (10.1.1.7) na wewnętrzny adres globalny
192.168.1.7 jak i zewnętrznego lokalnego adresu docelowego
" Router RTA używa zakresu adresów inGlobal, na które zamienia
(192.168.3.6) na zewnętrzny adres globalny 10.1.1.6, host Z traktuje
zródłowe lokalne adresy wewnętrzne (np. 10.1.1.7)
komunikację z hostem A jako połączenie pomiędzy adresami 10.1.1.6 i
192.168.1.7 " Router RTA używa zakresu adresów outLocal, na które zamienia
adresy zródłowe zawarte w odbieranych z zewnątrz pakietach
37 38
Sieci zachodzące - przykład
Kontrolowanie pracy NAT
" Dla komunikacji pomiędzy hostem A i hostem Z zostały utworzone w
tabeli NAT trzy wpisy
" Pierwszy wpis został utworzony po wysłaniu przez hosta A zapytania
DNS i dotyczy on zwykłej translacji adresów IP w nagłówkach pakietów
" Drugi wpis został utworzony w momencie odebrania przez router RTA
odpowiedzi DNS i wykonania translacji zawartości tej odpowiedzi
(10.1.1.6 na 192.168.3.6)
" Trzeci wpis został utworzony po wysłaniu pakietu z hosta A do hosta Z
" Trzeci wpis stanowi połączenie dwóch pierwszych i zapewnia bardziej
efektywnÄ… translacjÄ™
39
Kontrolowanie pracy NAT NAT - rozwiązywanie problemów
" Dodanie słowa verbose pozwala uzyskać dodatkowe informacje m.in.
czas aktywności dla wpisu dynamicznego
41 42
7
Kasowanie translacji NAT
NAT zalety i wady
43
NAT - zalety NAT - wady
" Pozwala na zaoszczędzenie publicznych adresów IP poprzez użycie w " Duża liczba translacji może spowodować spadek wydajności
sieciach wewnętrznych adresów prywatnych
jest to szczególnie ważne w przypadku aplikacji, które wymagają
" Redukuje przypadki zachodzenia adresów wysyłania informacji związanych z adresem IP poza nagłówkiem IP
(np. FTP!)
" Umożliwia zwiększenie elastyczności połączenia z siecią publiczną
" Zastosowanie translacji zwiększa opóznienia w przesyle pakietów
adresy zapasowe, równoważenie i podział obciążenia
" Utracenie pełnej symetryczności połączenia
" Pozwala na zachowanie schematu adresowania w danej sieci przy
zmianach w adresowaniu w sieci zewnętrznej niektóre aplikacje mogą nie pracować poprawnie w sieci z
aktywnym NAT
45 46
NAT wadozalety Jð ObsÅ‚uga aplikacji w Cisco NAT
Cisco IOS NAT obsługuje następujące typy ruchu:
" Z technicznego punktu widzenia wadą NAT jest utrata jednorodności
" Dowolny ruch korzystający z portów TCP/UDP, który nie zawiera w
sieci.
strumieniu danych informacji o zródłowych lub docelowych
utrudnia to lub nawet często praktycznie uniemożliwia śledzenie adresach IP:
tras pakietów które podlegają translacjom
Hypertext Transfer Protocol (HTTP)
" Prowadzi to jednak do zwiększenia bezpieczeństwa sieci wewnętrznej
Trivial File Transfer Protocol (TFTP)
" Znaczne utrudnienie poznania prawdziwego adresu zródłowego chroni
Telnet
prywatność użytkownika
Archie
" Nawet po poznaniu wewnętrznego adresu hosta, nie ma możliwości
Finger
bezpośredniego nawiązania połączenia z tym hostem z sieci
Network Timing Protocol (NTP)
zewnętrznej.
Network File System (NFS)
Oferowanie usług przez komputery z sieci wewnętrznej wymaga
rlogin, rsh, rcp
zmian konfiguracji NAT
Nie jest możliwy bezpośredni atak na komputery wewnętrzne z
sieci zewnętrznych
47 48
8
Obsługa aplikacji w Cisco NAT
" Cisco IOS NAT obsługuje także następujący ruch, który nie korzysta z
portów TCP/IP i/lub zawiera informacje adresowe w strumieniu danych:
ICMP
File Transfer Protocol (FTP), (komendy PORT oraz PASV )
NetBIOS over TCP/IP dla usług datagram , name i session
Progressive Networks' RealAudio
White Pines' CuSeeMe
Xing Technologies' Streamworks
DNS "A" and "PTR" queries
H.323/NetMeeting versions 12.0(1)/12.0(1)T and later
VDOLive versions 11.3(4)11.3(4)T and later
Vxtreme versions 11.3(4)11.3(4)T and later
IP multicast version 12.0(1)T (tylko do translacji adresów
zródłowych)
49 50
Obsługa aplikacji w Cisco NAT
" Cisco IOS NAT nie obsługuje następujących typów ruchu:
Protokoły routingu dynamicznego
Transfery stref DNS
BOOTP
talk, ntalk
Simple Network Management Protocol (SNMP)
NetShow
51
9
Wyszukiwarka
Podobne podstrony:
TI1 NAT pol?zpSieci komputerowe I ACL NAT v2NATTI1 XMLTI1 WSLinux 2 4 NAT HOWTO27 Hairpin NATTI1 AjaxTI1 VLAN 2SKM NAT wejsciowkaNATtranslacja adresów natNat s Cat książeczkaPorown ekosyst roln i nat 2011krzywa nat przeplywuj nat prod 66 703 salvinorinsMat SP 4 6 Mat w nas kl 6 Kartkowki 1 Działania na liczbach nat (1)więcej podobnych podstron