2018. november 5., hétfő

A NAT és PAT

 https://www.youtube.com/watch?v=n29QIBOybHY





A NAT a Network Address Translation rövidítése, magyarul címfordítás.

Háromféle NAT:

statikus NAT

dinamikus NAT

kiterjesztett NAT (PAT)

Statikus NAT
Adott a következő hálózat:

        Külső hálózat                  privát hálózat
                                                    IP: 192.168.10.2
1.1.1.2/8          1.1.1.1/8   192.168.10.1     Átjáró: 192.168.10.1
PC0-------------------------<R1>------------------Server
                         g0/0   g0/1
Célunk, hogy a külső hálózatról elérjük a belső hálózaton lévő webszervert.

A következőket kell beállítani:

interface GigabitEthernet0/0
 ip address 1.1.1.1 255.0.0.0
 ip nat outside

interface GigabitEthernet0/1
 ip address 192.168.10.1 255.255.255.0
 ip nat inside

ip nat inside source static 192.168.10.2 1.1.1.1  
R1#sh ip nat translations 
Pro  Inside global     Inside local       Outside local      Outside global
---  1.1.1.1           192.168.10.2       ---                ---
tcp 1.1.1.1:80         192.168.10.2:80    1.1.1.2:1026       1.1.1.2:1026

R1#
Statikus NAT 2
Adott a következő hálózat:

        Külső hálózat                  privát hálózat
                                             Virtuális: 1.1.1.3
                                                    IP: 192.168.10.2/24
1.1.1.2/8          1.1.1.1/8   192.168.10.1     Átjáró: 192.168.10.1
PC0-------------------------<R1>------------------Server0
                         g0/0   g0/1
Célunk újra az, hogy a külső hálózatról elérjük a belső hálózaton lévő webszervert, de most a router külső címétől eltérő címen érhető majd el a szerver.

A következőket kell beállítani:

interface GigabitEthernet0/0
 ip address 1.1.1.1 255.0.0.0
 ip nat outside

interface GigabitEthernet0/1
 ip address 192.168.10.1 255.255.255.0
 ip nat inside

ip nat inside source static 192.168.10.2 1.1.1.3
Statikus NAT 3
Legyen a következő topológia:

              belső                      külső
      .2                    .1     .1                .3
    f0/0                   f0/0  f0/1               f0/0
<Host-R>--------------------<NAT-R>-----------------<Telnet-R>
          192.168.10.0/24           192.168.20.0/24
Három routert használunk, amelyeket Host-R, NAT-R és Telent-R-nek nevezünk. A belső hálózatunkon (LAN) van a Host-R gép, az Interneten a Telnet-R nevű telnet kiszolgáló.

Ez egy jó trükk az forgalomirányítók használatának bemutatásához. A forgalomirányítókon letiltható a forgalomirányítás, így a viselkedése olyan lesz mint egy végponti eszközé, amelynek alapértelmezett átjáróra van szüksége.

Állítsuk be a fenti ábra alapján az IP címeket, neveket. A Telnet-R forgalomirányítóra beállíthatunk telnet hozzáférést is.

Most kapcsoljuk ki a forgalomirányítást:

Host-R(config)# no ip routing
Telnet-R(config)# no ip routing
A no ip routing parancs kikapcsolja a forgalomirányítási képességet. Nézzük meg most a forgalomirányító-táblát.

Host-R(config)# show ip route
Ehhez hasonlót kell látnunk:

Host-R#show ip route
Default gateway is 192.168.12.2

Host               Gateway           Last Use    Total Uses  Interface
ICMP redirect cache is empty

Host-R#
Nézzük meg a telnetes forgalomirányítón is:

Telnet-R#show ip route
Ehhez hasonló választ látunk:

Telnet-R#show ip route
Default gateway is 192.168.23.2

Host               Gateway           Last Use    Total Uses  Interface
ICMP redirect cache is empty

Telnet-R#
Most állítsuk be az alapértelmezett átjárót, mindkét végponton.

Host-R# ip default-gateway 192.168.10.1
Telnet-R# ip default-gateway 192.168.20.1
Mindkét forgalomirányító tudja használni a NAT forgalomirányítót. Teszteljük:

Host-R#ping 192.168.20.3
Hogy lássuk pontosan mi történik, kapcsoljuk be a debug-ot, a telnetes ponton:

Telent-R# debug ip packet
Így láthatjuk a Telnet-R milyen csomagokat fogad.

Végezzük el újra ping tesztet, majd nézzük meg Telnet-R forgalomirányító konzolját.

IP: tableid=0, s=192.168.10.2 (FastEthernet0/0), d=192.168.20.3 (FastEthernet0/0), routed via RIB

IP: s=192.168.10.2 (FastEthernet0/0), d=192.168.20.3 (FastEthernet0/0), len 128, rcvd 3
A debug ip packet parancs hatására láthatóvá válik milyen csomagok érkeztek a Telnet-R forgalomirányítóra. A s= mutatja, hogy honnan jöttek a csomagok:

s=192.168.10.2
Az d= mutatja, hogy mi volt a céljuk:

d=192.168.20.3
Most állítsuk be a NAT-ot a NAT forgalomirányítón:

NAT-R(config)#int f0/0
NAT-R(config-if)#ip nat inside
NAT-R(config)#int f0/1
NAT-R(config-if)#ip nat outside
Állítsuk be a NAT-ot:

NAT-R(config)# ip nat inside source static 192.168.10.2 192.168.20.1
Az „Telnet-R” forgalomirányítón ki is kapcsolhatjuk az alapértelmezett átjárót:

Telnet-R(config)# no ip default-gateway
Nézzük meg a milyen címfordítások vannak:

NAT#sh ip nat translations 
Pro  Inside global     Inside local       Outside local      Outside global
---  192.168.20.1      192.168.10.2       ---                ---
tcp 192.168.20.1:1025  192.168.10.2:1025  192.168.20.3:23    192.168.20.3:23

NAT#
Statikus NAT 4
A privát hálózatban szeretnénk elérni a szerver weboldalát.

             195.100.200.0/30
             .1          .2
         s0/0/0         s0/0/0
.1.1.1 <R2>----------------<R1>
   g0/0 |        Outside    | g0/0  .1
        |                   |   
        |                   |   Inside
        |                   |
.1.1.2  |                   |        .2
PC0----===                 ===-----Server0
     1.0.0.0/8            192.168.10.0/24
Beállítások:

R1(config)# int g0/0
R1(config-if)# ip address 192.168.10.1 255.255.255.0
R1(config-if)# ip nat inside
R1(config-if)# int s0/0/0
R1(config-if)# ip address 195.100.200.2 255.255.255.0
R1(config-if)# ip nat outside
R1(config-if)# exit
R1(config)# ip nat inside source static 192.168.10.2 195.100.200.2
R1(config)# router rip
R1(config-router)# ver 2
R1(config-router)# net 195.100.200.0
R1(config-router)# R1(config-router)# passive-interface g0/0
R2(config)# int g0/0
R2(config-if)# ip address 1.1.1.1 255.0.0.0
R2(config-if)# int s0/0/0
R2(config-if)# ip address 195.100.200.1 255.255.255.0

R2(config)# router rip
R2(config-router)#  ver 2
R2(config-router)#  net 1.0.0.0
R2(config-router)#  net 195.100.200.0
Az R1 router külső interfészét összekötjük a szerver IP címével:

195.100.200.2

192.168.10.2

Felhasznált:

http://www.omnisecu.com/cisco-certified-network-associate-ccna/how-to-configure-static-nat-in-cisco-router.php

Dinamikus NAT
A dinamikus NAt automatikus leképezést hoz létre egy vagy több belső és egy külső IP címek között. A dinamikus NAT-hoz több IP címre van szükség, ha a belső hálózatról több gép akar kifele látni.

Topológia:

     192.168.10.0/24             209.100.100.0/24

                    .1      .1
.10               g0/0    g0/1          .254
PC0-------===---------<R1>-------------Server0
A példában 4 IP címet rendelünk a dinamikus NAT számára.

Beállítás:

R1(config)# int g0/0
R1(config-if)# ip add 192.168.10.1 255.255.255.0
R1(config)# int g0/1
R1(config-if)# ip add 209.100.100.1 255.255.255.0
R1(config)# ip nat pool NATMEDENCE1 209.100.100.2 209.100.100.5 netmask 255.255.255.0
R1(config)# access-list 1 permit 192.168.10.0 0.0.0.255
R1(config)# ip nat inside source list 1 pool NATMEDENCE1
R1(config)# int g0/0
R1(config-if)# ip nat inside
R1(config)#int g0/1
R1(config-if)# ip nat outside
Ellenőrzés:

R1# show ip nat translations
Kiterjesztett NAT 1 vagy PAT
Kiterjesztett NAT vagy, ahogy a Cisconál hívják: PAT. Mivel portot is fordítunk.

Egy routeren áthaladó privát címeket szeretnénk nyilvános IP címekké fordítani. A privát címek nem juthatnak ki az Internetre, mivel azt az Internet más helyein is használják. Ilyenkor címfordítást használunk routeren, vagy szerveren.

                                          Internet
            192.168.10.0/24          195.100.100.0/24
                             .1     .1
   .11                      g0/0    g0/1             .2
  PC0-------------==------------<R1>---------------Server0
                                NAT
Beállítjuk a routereken az IP címeket:

R1(config)# int g0/0
R1(config-if)# ip address 192.168.10.1 255.255.255.0
R1(config-if)# no shutdown
R1(config-if)#
R1(config-if)# int g0/1
R1(config-if)#ip address 195.100.100.1 255.255.255.0
R1(config-if)#no shutdown
A teszteléshez mindenhol beállíthatjuk az átjárót. Ekkor minden mindent elér.

A továbbiakhoz gondoskodjunk a Server0 átjárójának törléséről, mivel a R1 router neki nem átjáró, mert abba az irányba egy véghálózat van. A PC0 ezek után már nem éri a szervert, amíg a NAT nincs beállítva.

A NAT beállítása:

R1(config)# int g0/0
R1(config-if)# ip nat inside
R1(config-if)# exit
R1(config)#
R1(config)# int g0/1
R1(config-if)# ip nat outside
R1(config-if)# exit
R1(config)# access-list 1 permit 192.168.10.0 0.0.0.255
R1(config)# ip nat inside source list 1 int g0/1 overload
Az access-list sor létrehoz egy ACL-listát, amelynek az azonosítója 1. Ezt felhasználjuk az ip nat kezdetű sorban.

Kiterjesztett NAT 2
A különbség a NAT 1-el szemben, hogy itt két rotuer van.

                                          Internet
            192.168.10.0/24          195.100.100.0/24
                             .1     .1          .2
   .11                      g0/0    g0/1        g0/0
  PC0-------------==------------<R1>---------------<R2>
                                NAT                 | g0/1
                                                    |  .1
                                                    |
                                                    | 197.100.100.0/24
                                                    |
                                                    |.5
                                                 Server1
A szerveren itt nyilván kell árjáró, mert ő is saját router mögött van.

NAT beállítása Cisco IOS-en
Beállítjuk a routereken az IP címeket:

R1(config)# int g0/0
R1(config-if)# ip address 192.168.10.1 255.255.255.0
R1(config-if)# no shutdown
R1(config-if)#
R1(config-if)# int g0/1
R1(config-if)#ip address 195.100.100.1 255.0.0.0
R1(config-if)#no shutdown
R2(config)# int g0/0
R2(config-if)# ip address 195.100.100.2 255.255.255.0
R2(config-if)# no shutdown
R2(config-if)#
R2(config-if)# int g0/1
R2(config-if)#ip address 197.100.100.5 255.255.255.0
R2(config-if)#no shutdown
Megmondjuk az R1 router számára hol található a 197.100.100.0/24-es hálózat:

ip route 197.100.100.0 255.255.255.0 g0/1
A NAT beállítása:

R1(config)# int g0/0
R1(config-if)# ip nat inside
R1(config-if)# exit
R1(config)#
R1(config)# int g0/1
R1(config-if)# ip nat outside
R1(config-if)# exit
R1(config)# access-list 100 permit ip any any
R1(config)# ip nat inside source list 100 int g0/1 overload
Az access-list sor létrehoz egy ACL-listát, amelynek az azonosítója 100. Ezt felhasználjuk az ip nat kezdetű sorban.

Ellenőrzés, monitorozás
Konfigurálás ellenőrzése show parancs segítségével




















Nézzük meg milyen címfordítások voltak:

R1(config)#do show ip nat translation
Pro  Inside global     Inside local       Outside local      Outside global
tcp 1.1.1.2:1025       192.168.8.2:1025   1.1.1.1:80         1.1.1.1:80

R1(config)#
Vagy röviden:

R1#sh ip nat tran
Debug:

R1#debug ip nat


Egy példa a NAT konfigurálására Packet Trackerben



Nincsenek megjegyzések:

Megjegyzés küldése