Network Address Translation (NAT)
Các d ng NAT xem xét trong bài:
- Static NAT
- Dynamic NAT
- NAT Port (interface/pool)
- Static NAT + Port
1. Thi t l p h th ng m ng nh hình v
Trong ó:
- R1 t ng tr ng cho ISP 
- R0 là m t doanh nghi p thuê ng truy n c a ISP (mô hình này th  ng dùng
trong ki u k t n i lease line).
- Doanh nghi p ã mua 1 gói a ch g m 6 a ch IP public   203.162.2.8/29
Cu hình IP cho các thi t b :
R0:
R1:
Routing: Gi a doanh nghi p này và ISP s không ch y b t kì dynamic routing protocol
nào c . Doanh nghi p n thu n ch default route lên ISP và ISP dùng static route xu ơ ng
hng doanh nghip.
R0:
R1:
2. NAT T nh (Static NAT):
ây là hình th c NAT th công, t 1  a ch trong mng LAN thành 1 a ch public IP.
Cách này th NAT các server trong h th ng m ng nh Web server, FTP ng dùng 
server, Mail server…
Gi u: s ây chúng ta có yêu c
NAT t nh cho ip máy tính PC1 172.16.1.3 tr i v i m ng bên thành ip 203.162.2.9 
ngoài.
Câu l nh c n dùng:
ip nat inside source static
ip nat inside
ip nat outside
C th: Din ra hoàn toàn Router R0.
NAT t ng câu lnh 172.16.1.3 thành 203.162.2.9 b nh IP nat inside source static.
Sau ó lên c ng m (fa0/0) gõ câu l nh ; c ng m s1/0 gõ ng LAN ip nat inside ng WAN
câu lnh ip nat outside.
Ngay l p t c thao tác NAT c ghi nh n. 
Câu l nh
#show ip nat translation
Gi a:i thích ý ngh
Inside local: a ch trong m ng LAN tr c khi NAT  
Inside global: a ch trong m ng LAN sau khi ã c NAT, tr c khi truy n ra   
mng ngoài.
Global inside: a ch máy tính bên ngoài tr c khi NAT  
Global outside: a ch y tính bên ngoài sau khi NAT. 
các dng NAT trong bài này, global inside và global outside luôn nh nhau, vì ta ch
nat inside (m ng LAN).
Theo câu l nh show bên trên, máy tính 172.16.1.3 tr c khi ra ngoài s c i thành   
203.162.2.9
Ta th ping t y tính này ra m ng ngoài:
Bt câu l nh debug ip nat l i l n n a, quan sát trên router: ping
Khi gói tin i ra ngoài (echo request), s c chuy n thành source ip = 172.16.X.3 
203.162.2.9
Khi gói tin i vào (echo reply), s c chuy n tr l i thành dest ip = 203.162.2.9 
172.16.X.3 a vào m ng LAN. 
Lúc này, ISP không h bi t có s t n t i c a network . ! 172.29.X.0/24
T PC bên ngoài ( ) c ng d dàng liên l c vào máy tính trên theo a ch ip 50.50.50.2 " # 
203.162.2.9
Lúc này, ta có 1 gi a ánh x 1-1 172.29.X.3 <-> 203.162.2.9
Loi NAT này không ti t ki m c a ch public IP, vì 1 a ch private s t    ơng ng 1
a ch public.
3. NAT ng (Dynamic NAT): 
NAT t nh ta ph i t thi t l p ánh x cho t ng c p. ! private <-> public $
Ta có th a t t c ip private và t t c ip public trên router. Khi 1 gói tin private nh ngh
ip n router, nó s t l a 1 a ch public ip còn r NAT.  ! !  nh 
Cu hình: Câu l nh ip nat inside và ip nat outside trên fa0/0 và s1/0 v n gi nguyên %
trong su t bài h &c.
Các a ch m ng LAN cho phép ra ngoài: b ng  access-list
Các a ch public IP dùng NAT: câu l  nh ip nat pool < a ch u> < a ch   
cui> netmask <subnet mask>
Câu l nh nat: ip nat inside source list … pool …
Ví d: Cho phép các máy trong LAN 172.16.X.0/24 ra ngoài internet, các a ch này s 
  c nat bng range 203.162.2.10 -> 203.162.2.14 ( a ch 203.162.2.9 ã dùng NAT
tnh, m c dù ta v n có th i a ch này). dùng l 
c im ca dynamic nat:
Khi ch a có gói tin i ra, quá trình NAT ch a th c thi. Do ó b ng NAT ch a t n t i các !
record m i này, ch t n t i record static nat b c tr c.  
Ly máy tính 172.16.1.4 ping ra ngoài và debug:
Xem l i b ng NAT: ã t n t i record này.
Ly ti p 1 máy khác, 2 máy ping song song ra m ng ngoài:
Bng NAT: Router t ng l y thêm a ch 203.162.2.11 cho máy 172.16.1.5 !  
Có th xem các th ng kê v NAT:
NAT ng th ng không th nat các server vì:   dùng 
- Ch khi nào có gói tin bên trong i ra m i xu t hi n giao tác, và ch duy trì 1
khong th i gian ng n.
- Do tính ch t ng, ta không bi t private ip address s c nat thành public ip 
address nào. u này hoàn toàn do router quy t nh. i 
Ngoài ra, d ng NAT này c ng ch a ti t ki m a ch ip, . Khi pool "  1 private <-> 1 public
có 5 a ch public, ch có 5 máy tính trong m ng LAN có th ra internet cùng lúc. 
4. NAT overload trên interface:
ây là d ng NAT dùng nhi u nht mô hình ADSL. Overload ây có ngha là khái
nim NAT . kèm theo port
Ví d:
Gi s router dùng ip 203.162.2.10 NAT 
ng dng trên máy 172.16.1.4, s dng port (t10000 gi v sau s vit là
172.16.1.4:10000) khi n Router s c NAT thành 203.162.2.10: và ra internet.   10000
Cùng lúc ó, gói tin 172.16.1.5: n router s c NAT thành 10001  
203.162.2.10:10001  ra internet.
Khi có gói tin t internet tr v router, router s xem xét Destination port: n u là
203.162.2.10:10000 s chuy n thành 172.16.1.4:10000 và tr v m ng LAN; n u là
203.162.2.10:10001 s chuy n thành 172.16.1.5:10001 và tr v m ng LAN.
Vi cách th c này, dù ch a ch public IP router có th NAT c cùng lúc cho dùng 1  
nhiu máy khác nhau.
Port trong h th ng m ng là s 2 byte : 0 -> 65535
Trong tr ng h p s d ng IP ng (ADSL), ta không bi t tr c IP c a c ng m ng WAN.  '  
Ta s khóa interface. Tùy vào lúc ch y, ip c a c ng WAN c th là bao nhiêu s dùng t '
 c dùng NAT.
Cu hình:
Trc h t ta t t tính n ng NAT dynamic b c tr c ( )  
(config)# no ip nat inside source list 1 pool ADSL
Sau ó c u hình câu l nh nat overload:
Chú ý t interface và overload.
Ping t máy 172.16.1.4 và ki m tra:
debug:
Bng nat: Có thêm c th . port '
5. NAT Overload Pool:
Trong các t ch c l n, 1 a ch dùng NAT overload ôi khi không ph c v . Do ó    ' '
chúng ta s NAT overload trên m t POOL.
'ây chúng ta s s d ng li POOL ADSL ã nh ngha . phn 2
Trc h t b câu l nh NAT interface b c làm tr c. *  
Sau ó áp câu l nh nat pool và kèm theo t khóa Overload.
Ping t nhi u máy ra ngoài:
Bng NAT:
6. Static NAT + Port:
Nh chúng ta ã nói, static NAT là lo i NAT duy nh t phù h p cho vi c NAT các server
nh web, ftp, mail…
Tuy nhiên, n u chúng ta có 10 servers, v i hình th c static nat truy n th ng s c n n 10 
public ip addresses -> Quá lãng phí.
Ta có th k t h p NAT t ng ch theo 1 port c th . Do ó, cùng 1 a ch public IP nh nh ' 
có th NAT cho nhi u servers, d a theo s port khác nhau. !
Thay i mô hình thành nh sau: 
Ví d: dch v http (tcp: 80) nm trên máy tính 172.16.1.10; tftp (udp: 69) n m máy
tính 172.16.1.2.
Ta có th NAT 2 servers này thành cùng a ch IP 203.162.2.9 
Cu hình:
Trc h t b câu l nh static nat ã c . * u hình mc 1
Sau ó gõ câu l nh static nat k t h p port.
Bng NAT:
Kim tra:
Truy xu t th web server trên máy 172.16.1.10.
Do ta ch NAT udp 172.16.1.2:69 thành 203.162.2.9:69 và tcp 172.16.1.10:80 thành
203.162.2.9:80 nên t 203.162.2.9 không PC3 ping a ch c (ta không nat giao th c
ICMP).
Tuy nhiên, truy xu t http (web) v n thành công: %

Preview text:

Network Address Translation (NAT)
Các dng NAT xem xét trong bài: - Static NAT - Dynamic NAT - NAT Port (interface/pool) - Static NAT + Port
1. Thit lp h thng mng nh hình v Trong ó:
- R1 tng trng cho ISP
- R0 là mt doanh nghip thuê ng truyn ca ISP (mô hình này thng dùng
trong kiu kt ni lease line).
- Doanh nghip ã mua 1 gói a ch gm 6 a ch IP public 203.162.2.8/29
Cu hình IP cho các thit b: R0: R1:
Routing: Gia doanh nghip này và ISP s không chy bt kì dynamic routing protocol
nào c. Doanh nghip ơn thun ch default route lên ISP và ISP dùng static route xung hng doanh nghip. R0: R1: 2. NAT Tnh (Static NAT):
ây là hình thc NAT th công, t 1 a ch trong mng LAN thành 1 a ch public IP.
Cách này thng dùng  NAT các server trong h thng mng nh Web server, FTP server, Mail server…
Gi s  ây chúng ta có yêu cu:
NAT tnh cho ip máy tính PC1 172.16.1.3 tr thành ip 203.162.2.9 i vi mng bên ngoài. Câu lnh cn dùng:
• ip nat inside source static • ip nat inside • ip nat outside
C th: Din ra hoàn toàn Router R0.
NAT tnh 172.16.1.3 thành 203.162.2.9 bng câu lnh IP nat inside source static.
Sau ó lên cng mng LAN (fa0/0) gõ câu lnh ip nat inside; cng mng WAN s1/0 gõ câu lnh ip nat outside.
Ngay lp tc thao tác NAT c ghi nhn. Câu lnh #show ip nat translation Gii thích ý ngha:
• Inside local: a ch trong mng LAN trc khi NAT
• Inside global: a ch trong mng LAN sau khi ã c NAT, trc khi truyn ra mng ngoài.
• Global inside: a ch máy tính bên ngoài trc khi NAT
• Global outside: a ch máy tính bên ngoài sau khi NAT.
 các dng NAT trong bài này, global inside và global outside luôn nh nhau, vì ta ch nat inside (mng LAN).
Theo câu lnh show bên trên, máy tính 172.16.1.3 trc khi ra ngoài s c i thành 203.162.2.9
Ta th ping t máy tính này ra mng ngoài:
Bt câu lnh debug ip nat và ping li ln na, quan sát trên router:
Khi gói tin i ra ngoài (echo request), source ip = 172.16.X.3 s c chuyn thành 203.162.2.9
Khi gói tin i vào (echo reply), dest ip = 203.162.2.9 s c chuyn tr li thành
172.16.X.3 và a vào mng LAN.
Lúc này, ISP không h bit có s! tn ti ca network 172.29.X.0/24.
T PC bên ngoài (50.50.50.2) c"ng d# dàng liên lc vào máy tính trên theo a ch ip 203.162.2.9
Lúc này, ta có 1 ánh x 1-1 gia 172.29.X.3 <-> 203.162.2.9
Loi NAT này không tit kim c a ch public IP, vì 1 a ch private s tơng ng 1
a ch public.
3. NAT ng (Dynamic NAT):
NAT tnh ta phi t! thit lp ánh x private <-> public cho tng c$p.
Ta có th nh ngha tt c ip private và tt c ip public trên router. Khi 1 gói tin private
ip n router, nó s t! l!a 1 a ch public ip còn rnh  NAT.
Cu hình: Câu lnh ip nat inside và ip nat outside trên fa0/0 và s1/0 v%n gi nguyên trong sut bài h&c.
• Các a ch mng LAN cho phép ra ngoài: bng access-list
• Các a ch public IP dùng  NAT: câu lnh ip nat pool <a ch u> <a ch cui> netmask
• Câu lnh nat: ip nat inside source list … pool …
Ví d: Cho phép các máy trong LAN 172.16.X.0/24 ra ngoài internet, các a ch này s
c nat bng range 203.162.2.10 -> 203.162.2.14 (a ch 203.162.2.9 ã dùng  NAT
t
nh, mc dù ta vn có th dùng li a ch này).
c im ca dynamic nat:
Khi cha có gói tin i ra, quá trình NAT cha th!c thi. Do ó bng NAT cha tn ti các
record mi này, ch tn ti record static nat bc trc.
Ly máy tính 172.16.1.4 ping ra ngoài và debug:
Xem li bng NAT: ã tn ti record này.
Ly tip 1 máy khác, 2 máy ping song song ra mng ngoài:
Bng NAT: Router t! ng ly thêm a ch 203.162.2.11 cho máy 172.16.1.5
Có th xem các thng kê v NAT:
NAT ng thng không th dùng  nat các server vì:
- Ch khi nào có gói tin bên trong i ra mi xut hin giao tác, và ch duy trì 1
khong thi gian ngn.
- Do tính cht ng, ta không bit private ip address s c nat thành public ip
address nào. iu này hoàn toàn do router quyt nh.
Ngoài ra, dng NAT này c"ng cha tit kim a ch ip, 1 private <-> 1 public. Khi pool
có 5 a ch public, ch có 5 máy tính trong mng LAN có th ra internet cùng lúc.
4. NAT overload trên interface:
ây là dng NAT dùng nhiu nht mô hình ADSL. Overload ây có ngha là khái nim NAT kèm theo port. Ví d:
Gi s router dùng ip 203.162.2.10  NAT
ng dng trên máy 172.16.1.4, s dng port 10000 (t gi v sau s vit là
172.16.1.4:10000) khi
n Router s c NAT thành 203.162.2.10:10000 và ra internet.
Cùng lúc
ó, gói tin 172.16.1.5:10001 n router s c NAT thành
203.162.2.10:
10001  ra internet.
Khi có gói tin t
internet tr v router, router s xem xét Destination port: nu là
203.162.2.10:10000 s
chuyn thành 172.16.1.4:10000 và tr v mng LAN; nu là
203.162.2.10:10001 s
chuyn thành 172.16.1.5:10001 và tr v mng LAN.
V
i cách thc này, dù ch dùng 1 a ch public IP router có th NAT c cùng lúc cho
nhi
u máy khác nhau.
Port trong h
thng mng là s 2 byte : 0 -> 65535
Trong trng hp s d'ng IP ng (ADSL), ta không bit trc IP ca cng mng WAN.
Ta s dùng t khóa interface. Tùy vào lúc chy, ip ca cng WAN c' th là bao nhiêu s c dùng  NAT. Cu hình:
Trc ht ta t(t tính n)ng NAT dynamic bc trc
(config)# no ip nat inside source list 1 pool ADSL
Sau ó cu hình câu lnh nat overload:
Chú ý t interface và overload.
Ping t máy 172.16.1.4 và kim tra: debug:
Bng nat: Có thêm port c' th. 5. NAT Overload Pool:
Trong các t chc ln, 1 a ch dùng  NAT overload ôi khi không  ph'c v'. Do ó
chúng ta s NAT overload trên mt POOL.
 ây chúng ta s s d'ng li POOL ADSL ã nh ngha phn 2.
Trc ht b* câu lnh NAT interface bc làm trc.
Sau ó áp câu lnh nat pool và kèm theo t khóa Overload.
Ping t nhiu máy ra ngoài: Bng NAT: 6. Static NAT + Port:
Nh chúng ta ã nói, static NAT là loi NAT duy nht phù hp cho vic NAT các server nh web, ftp, mail…
Tuy nhiên, nu chúng ta có 10 servers, vi hình thc static nat truyn thng s cn n 10
public ip addresses -> Quá lãng phí.
Ta có th kt hp NAT tnh nhng ch theo 1 port c' th. Do ó, cùng 1 a ch public IP
có th NAT cho nhiu servers, d!a theo s port khác nhau.
Thay i mô hình thành nh sau:
Ví d: dch v http (tcp: 80) nm trên máy tính 172.16.1.10; tftp (udp: 69) nm máy tính 172.16.1.2.
Ta có th NAT 2 servers này thành cùng a ch IP 203.162.2.9 Cu hình:
Trc ht b* câu lnh static nat ã cu hình mc 1.
Sau ó gõ câu lnh static nat kt hp port. Bng NAT: Kim tra:
Truy xut th web server trên máy 172.16.1.10.
Do ta ch NAT udp 172.16.1.2:69 thành 203.162.2.9:69 và tcp 172.16.1.10:80 thành
203.162.2.9:80 nên t
PC3 ping a ch 203.162.2.9 không c (ta không nat giao thc ICMP).
Tuy nhiên, truy xut http (web) v%n thành công: