Anda di halaman 1dari 13

Kuliah Umum IlmuKomputer.Com Copyright 2003 IlmuKomputer.

Com

Network Address Translation (NAT)


Mudji Basuki
mudjibasuki@telkom.net Lisensi Dokumen:
Copyright 2003 IlmuKomputer.Com Seluruh dokumen di IlmuKomputer.Com dapat digunakan, dimodifikasi dan disebarkan se ara bebas untuk tujuan bukan komersial !nonprofit", dengan syarat tidak menghapus atau merubah atribut penulis dan pernyataan opyright yang disertakan dalam setiap dokumen. #idak diperbolehkan melakukan penulisan ulang, ke uali mendapatkan ijin terlebih dahulu dari IlmuKomputer.Com.

Apakah Network Address Translation (NAT)?

Keterbatasan alamat IP .! merupakan masalah pada jaringan global atau Internet. Untuk memaksimalkan penggunakan alamat IP yang diberikan oleh Internet "er i#e Pro ider $I"P% dapat digunakan &et'ork (ddress )ranslation atau &(). Cis#o mengimplementasikan dengan menggunakan *+C ,-3,. &() membuat jaringan yang menggunakan alamat lokal $pri ate%. alamat yang tidak boleh ada dalam tabel routing Internet dan dikhususkan untuk jaringan lokal/intranet. dapat berkomunikasi ke Internet dengan jalan 0meminjam1 alamat IP Internet yang dialokasikan oleh I"P.

Dua Tipe NAT Statik

2ua tipe &() adalah "tati# dan 2inamik yang keduanya dapat digunakan se#ara terpisah maupun bersamaan.

)ranslasi "tati# terjadi ketika sebuah alamat lokal $inside% di petakan ke sebuah alamat global/internet $outside%. (lamat lokal dan global dipetakan satu la'an satu se#ara "tatik.

Kuliah Umum IlmuKomputer.Com Copyright 2003 IlmuKomputer.Com

Dinamik
NAT dengan Pool (kelompok)
)ranslasi 2inamik terjadi ketika router &() diset untuk memahami alamat lokal yang harus ditranslasikan. dan kelompok $pool% alamat global yang akan digunakan untuk terhubung ke internet. Proses &() 2inamik ini dapat memetakan bebarapa kelompok alamat lokal ke beberapa kelompok alamat global.

NAT Overload "ejumlah IP lokal/internal dapat ditranslasikan ke satu alamat IP global/outside. 3al ini sangat menghemat penggunakan alokasi IP dari I"P. "haring/pemakaian bersama satu alamat IP ini menggunakan metoda port multiple4ing. atau perubahan port ke pa#ket outbound.

omponen!komponen NAT
&() dapat mele'atkan alamat jaringan lokal $0pri ate1% menuju jaringan 0publi#1 seperti Internet. (lamat 0pri ate1 yang berada pada jaringan lokal /5inside5. mengirim paket melalui router &(). yang kemudian dirubah oleh router &() menjadi alamat IP I"P sehingga paket tersebut dapat diteruskan mele'ati jaringan publik atau internet. ('alnya +itur ini hanya tersedia pada gate'ay pass6through 7ire'all saja. )api sekarang sudah tersedia di semua router Cis#o.

omponen "tama NAT hal berikutnya.....

Kuliah Umum IlmuKomputer.Com Copyright 2003 IlmuKomputer.Com

Gambar

Keterangan
#nside lo$al #P address 8 (lamat IP yang di set untuk sebuah host pada jaringan lokal $inside net'ork%. Pengalokasian alamat IP harus unik dan dalam satu subnet yang sama.

#nside glo%al #P address 8 "ebuah alamat IP legal $ditetapkan oleh &IC atau ser i#e pro ider% yang me'akili satu atau lebih alamat IP inside lokal ke dunia luar. (lamat IP ini dialokasikan dari kapasitas alamat global yang unik. 9iasanya disediakan oleh Internet "er i#e Pro ider $I"P%.
Outside global IP address Alamat IP yang ditetapkan untuk sebuah host pada jaringan luar (outside network).

Simple translation Sebuah translasi yang memetakan satu alamat IP ke satu alamat IP lain.

Kuliah Umum IlmuKomputer.Com Copyright 2003 IlmuKomputer.Com

Penggunaan NAT
apan se%aikn&a NAT Digunakan? :unakan &() ;ika<

(nda membutuhkan koneksi ke Internet dan hosts/komputer6komputer anda tidak mempunyai alamat IP global.

(nda berganti ke I"P baru dan anda diharuskan menggunakan alamat IP dari I"P baru tersebut untuk jaringan anda.

NAT digunakan untuk men&elesaikan masalah pengalamatan #P

)eknologi &() memungkinakan alamat IP lokal/1pri ate1 terhubung ke jaringan publik seperti Internet. "ebuah router &() ditempatkan antara jaringan lokal $inside net'ork% dan jaringan publik $outside net'ork%. dan mentranslasikan alamat lokal/internal menjadi alamat IP global yang unik sebelum mengirimkan paket ke jaringan luar seperti Internet.
Dengan NAT, jaringan internal/lokal, tidak akan terlihat oleh dunia luar/internet. IP lokal ang !ukup "an ak dapat dile#atkan ke Internet han a dengan melalui translasi ke satu IP pu"lik/glo"al. euntungan menggunakan NAT ;ika anda harus merubah alamat IP internal anda. dikarenakan anda berganti I"P atau dua intranet digabungkan $misalnya penggabungan dua perusahaan%. &() dapat digunakan untuk mentranslasikan alamat IP yang sesuai. &() memungkinkan anda menambah alamat IP. tanpa merubah alamat IP pada hosts atau komputer anda. 2engan demikian akan menghilangkan dupli#ate IP tanpa pengalamatan kembali host atau komputer anda.

Pertim%angan #mplementasi NAT


9erikut tabel keuntungan dan kerugian menggunakan &() euntungan =enghemat alamat IP legal $ditetapkan oleh &IC atau ser i#e pro ider% =engurangi terjadinya dupli#ate alamat jaringan IP. =eningkatkan 7leksibilitas untuk koneksi ke Internet =enghindarkan proses pengalamatan kembali $readdressing% pada saat jaringan berubah. erugian )ranslasi menimbulkan delay s'it#hing. =enghilangkan kemampuan 0tra#e1 $tra#eability% end6to6end IP. (plikasi tertentu tidak dapat berjalan jika menggunakan &().

Bagaimana Alamat #P #nside 'o$al ditranslasikan?


9erikut adalah ilustrasi &() yang digunakan untuk mentranslasikan alamat dari dalam $inside% jaringan ke tujuan $outside%.

Kuliah Umum IlmuKomputer.Com Copyright 2003 IlmuKomputer.Com

(am%ar

eterangan 'angkah )* Pengguna pada host ,0.,.,., membuat koneksi ke outside host 9.

'angkah +* Paket pertama yang diterima oleh router dari host ,0.,.,., di#o#okkan dengan tabel &() . ;ika translasi ada. $karena sudah diset statik%. maka router melanjutkan ke >angkah 3.

;ika translasi tidak ditemukan. *outer mengalokasikan sebuah alamat baru dan menset sebuah translasi dari inside lo#al ,0.,.,., ke sebuah alamat legal inside global dari kelompok $pool% alamat dinamik. 'angkah ,* *outer mengganti alamat ,0.,.,., inside lo#al IP dengan alamat inside global yang telah dipilih. ,?2.,-@.2.2. dan meneruskan paket data.

Kuliah Umum IlmuKomputer.Com Copyright 2003 IlmuKomputer.Com

'angkah -* 3ost 9 menerima paket dan merespon ke node yang menggunakan alamat IP inside global ,?2.,-@.2.2.

'angkah .* Ketika router menerima paket dengan alamat IP inside global. router membentuk tabel &() dengan alamat IP inside global sebagai re7erensi.

'angkah /* *outer kemudian mentranslasikan alamat tersebut ke ,0.,.,., yang merupakan alamat inside lo#al. dan meneruskan paket data ke ,0.,.,.,. 3ost ,0.,.,., menerima pa#ket dan memprosesnya. Catatan < $nda dapat menggunakan Stati atau %inamik &$# se ara terpisah atau bersamaan

Alamat #nside (lo%al Overload


Bagaimana proses Alamat (lo%al Overload?
:ambar berikut akan mengilustrasikan proses &() dengan satu buah alamat inside global yang merepresentasikan alamat inside lo#al yang berjumlah banyak se#ara terus6menerus. 2alam #ontoh ini. tabel translasi 0e4tended1 akan digunakan. 2alam tabel ini. kombinasi alamat dan port membuat setiap alamat global IP menjadi unik $tidak ada yang sama%. "ebenarnya. yang membuat alamat ini menjadi unik adalah Port (ddress )ranslation $P()%. yang merupakan bagian dari &().

Kuliah Umum IlmuKomputer.Com Copyright 2003 IlmuKomputer.Com

(am%ar

eterangan 'angkah )* Pengguna pada host ,0.,.,., membuat koneksi ke host 9.

'angkah +* *outer akan menerima paket dari ,0.,.,., dan menge#ek tabel &().

;ika translasi belum ada. router akan menentukan alamat ,0.,.,., yang harus ditranslasikan. *outer mengalokasikan alamat baru dan menset translasi dari alamat inside lo#al ,0.,.,., ke alamat global. ;ika o erload diakti7kan. dan translasi lain juga akti7. router akan menggunakan kembali alamat global tersebut dengan men#antumkan port yang berbeda untuk tiap translasi alamat IP. 'angkah ,* *outer mengganti alamat IP inside lo#al ,0.,.,., dengan alamat IP inside global ,?2.,-@.2.2. dan meneruskan paket data.

Kuliah Umum IlmuKomputer.Com Copyright 2003 IlmuKomputer.Com

'angkah -* 3ost 9 yang berada di luar $outside% menerima paket dan merespon node yang menggunakan alamat IP inside global ,?2.,-@.2.2.

'angkah .* Ketika router menerima paket dengan alamat IP inside global. router men#ari pada tabel &()6nya. dan menge#ek alamat inside global dan nomor port. (lamat 0outside1 $outside global IP address% dan nomor port6nya sebagai re7erensi. 'angkah /* Kemudian router mentranslasikan alamat IP tersebut ke alamat inside lo#al ,0.,.,., dan meneruskan paket ke ,0.,.,.,. 3ost ,0.,.,., menerima paket dan memprosesnya.

Mem%uat NAT pada 0outer 1is$o


Perintah!Perintah untuk mem%uat NAT Perintah6perintah berikut digunakan untuk membuat &() pada router Cis#o<

Kuliah Umum IlmuKomputer.Com Copyright 2003 IlmuKomputer.Com

Perintah a$$ess!list ip nat pool ip nat inside sour$e list pool ip nat outside sour$e pool ip nat inside sour$e stati$ ip nat Einside F outsideG

eterangan Perintah ini mende7inisikan a##ess list $urutan yang masuk dalam da7tar akses% untuk Cinside net'orkD. Perintah ini mende7inisikan sebuah kelompok $pool% IP &() untuk Cinside net'orkD. =emetakan a##ess list ke kelompok $pool% IP &(). =emetakan antara a##ess list dan kelompok $pool% outside lo#al. =ende7inisikan alamat yang menggunakan translasi alamat statik untuk alamat lokal. =engakti7kan &() pada sebuah inter7a#e $harus dipilih salah satu inside atau outside%.

ip nat inside destination list pool 2e7ines mapping bet'een the a##ess list and the real host pool "rutan Perintah ip nat pool *

Urutan perintah untuk ip nat pool sebagai berikut<


#ip nat pool pool-name start-ip end-ip {netmask length prefix-length} [type rotary]

netmask | prefix-

Parameter untuk perintah ip nat pool < Perintah ip nat pool name start'ip end'ip netmask netmask pre2i3!length prefi('length eterangan &ama kelompok $pool% (lamat IP a'al yang mende7iniskan jarak $range% dalam kelompok $pool% alamat IP. (lamat IP akhir yang mende7inisikan jarak $range% dalam kelompok $pool% alamat IP. &et'ork mask yang menentukan alamat IP masuk ke dalam suatu jaringan $net'ork% atau subjaringan $subnet'ork%. ;umlah yang menyatakan berapa banyak bit , dalam CnetmaskD $berapa banyak bit alamat yang menyatakan jaringan%. =enyatakan CnetmaskD jaringan yang masuk dalam kelompok $pool% alamat IP. $Hptional% =enyatakan jarak $range% alamat dalam kelompok $pool%. antara CinsideD host dan )CP >oad 2istribution yang akan terjadi.

t&pe rotar&

"rutan Perintah ip nat inside sour!e stati!


Urutan perintah untuk ip nat inside source static sebagai berikut: #ip nat inside source static

local-ip global-ip

Kuliah Umum IlmuKomputer.Com Copyright 2003 IlmuKomputer.Com

Parameters untuk perintah ip nat inside sour$e stati$ < Perintah ip nat inside sour!e stati! lo al'ip

Keterangan "et sebuah translasi statik tunggal. (lamat IP lokal ini adalah sebuah host pada jaringan lokal $inside net'ork%. (lamat IP lokal dapat dipilih sesuai keinginan. "et sebuah translasi statik tunggal. (lamat IP yang mun#ul di jaringan publik $outside% yang me'akili alamat IP lokal $inside lo#al%.

global'ip

Catatan < 3anya paket dari lokal menuju global $outside% yang ditranslasikan. sedangkan paket yang tidak ditujukan keluar $outside% tidak akan ditranslasikan.

Mem%uat NAT 4tatik


Prosedur mem%uat NAT 4tatik
9erikut prosedur membuat &() "tatik <

4tep
)5

Perintah
"et router untuk routing IP dan pengalamatan IP menggunakan perintah6perintah berikut<

Keterangan
Perintah ini mengakti7kan routing dan pengalamatan ip pada router. Perintah ini mende7inisikan alamat untuk Cinside lo#alD. (lamat ,0.0.0., ditranslasikan statik ke ,0@.BB.2.,

+5 Kon7igur router untuk &() statik menggunakan perintah< ip nat inside sour$e stati$5 0outer($on2ig)6 ip nat inside sour$e stati$ )757575) )785995+5) ,5 Inable &() on the inter7a#e using the ip nat :inside ; outside< #ommand. 0outer($on2ig)6 inter2a$e e7 0outer($on2ig!i2)6 ip nat inside atau 0outer($on2ig)6 inter2a$e s7 0outer($on2ig!i2)6 ip nat outside

Perintah ini mengakti7kan &() pada salah satu inter7a#e $pilih salah satu. inside atau outside%.

Mem%uat NAT Dinamik


Prosedur mem%uat NAT Dinamik
9erikut prosedur membuat &() 2inamik<

,0

Kuliah Umum IlmuKomputer.Com Copyright 2003 IlmuKomputer.Com

4tep )5

Perintah "et router untuk routing IP dan pengalamatan IP menggunakan perintah6perintah berikut<

Keterangan Perintah ini mengakti7kan routing dan pengalamatan ip pada router.

+5

9uat IP a##ess list standard untuk jaringan lokal Perintah ini membuat $inside net'ork% menggunakan perintah < sebuah Ca##ess listD untuk a$$ess!list a ess'list'number Epermit F denyG lo al' alamat IP. ip'address. *outer$#on7ig%J a$$ess!list + permit )75)5)5)7 757575+..

,5 =embuat IP &() pool untuk Cinside net'orkD menggunakan perintah < ip nat pool pool'name start'ip end'ip Enetwork netmask F pre2i3!length prefi('lengthG Kt&pe rotar&L *outer$#on7ig%J ip nat pool #lmukomputer )=.5)/.5+5) )=.5)/.5+5+.- netmask +..5+..5+..57 pre2i3!length +- t&pe rotar& -5 Pasang a##ess list pada IP &() pool menggunakan perintah< ip nat inside sour$e list a ess'list' number pool name overload *outer$#on7ig%J ip nat inside sour$e list + pool #lmukomputer overload .5 (kti7kan &() pada inter7a#e menggunakan perintah< ip nat Einside F outside G 0outer($on2ig)6 inter2a$e e7 0outer($on2ig!i2)6 ip nat inside atau 0outer($on2ig)6 inter2a$e s7 0outer($on2ig!i2)6 ip nat outside Perintah ini memetakan a##ess list ke IP &() pool. Penambahan o erload untuk memetakan antara a##ess list dan IP &() pool. Perintah ini mengakti7kan &() pada salah satu inter7a#e $pilih salah satu. inside atau outside%. Perintah ini menghasilkan kelompok $pool% IP &() untuk Cinside net'orkD. IP yang tersedia untuk mentranslasikan ip lokal adalah dari ,?2.,-@.2., sampai ,?2.,-@.2.2A!.

Menguji dan Trou%leshooting NAT


Perintah perintah untuk mengu!i NAT
erikut perintah yang digunakan dalam operasi !A":

Perintah
show ip nat translations [verbose] show ip nat statistics

Keterangan
Perintah yang menampilkan translasi yang sedang akti#. Perintah yang menampilkan statistik translasi.

,,

Kuliah Umum IlmuKomputer.Com Copyright 2003 IlmuKomputer.Com

Contoh IP &() "tatik


Router#show ip nat translation Pro Inside global Inside local Outside local Outside global --- 156.8.34.1 1 .15. .1 ------- 156.8.34.! 1 .15. .! ------- 156.8.34.3 1 .15. .3 ----Contoh IP &() 2inamik< Router#show ip nat translation Pro Inside global Inside local tc" 143.4.!3.1#1 $8 1 .1. .1#1 $8 tc" 143.4.!3.1#1345 1 .1. .!#1345 tc" 143.4.!3.1#1$8$ 1 .1. .3#1$8$ Contoh "tatistik &()<
Router#show ip nat statistics &otal translations# 1 ' static( 1 d)na*ic+ e,tendedOutside inter.aces# /erial Inside inter.aces# 0t1ernet 2its# 1 3isses# 0,"ired translations# !4)na*ic *a""ings#-- Inside /ource access-list 1 "ool Il*u5o*"uter re.count ! "ool Il*u5o*"uter# net*as5 !55.!55.!55. start 1$5.165.!.1 end 1$5.165.!.!54 t)"e generic( total addresses !54( allocated 1 '146-( *isses

Outside local %3.4.5.6#!3 %3.4.5.6#!3 %3.4.5.%#!1

Outside global %3.4.5.6#!3 %3.4.5.6#!3 %3.4.5.%#!1

Perintah Trou%leshooting NAT 9erikut perintah yang digunakan untuk troubleshooting &()

Perintah
debug ip nat7 list | detailed8

Keterangan
Perintah ini menampilkan setiap baris untuk tiap$tiap paket yang telah ditranslasikan.

%ontoh : Router#debug ip nat 9:&# s;1 .1. .1-<1!.1.3.!( d;155.5.5.5 718 9:&# s;155.5.5.5( d;1!.1.3.!-<1 .1. .1 718 9:&# s;1 .1. .1-<1!.1.3.!( d;155.5.5.5 7!8 9:&=# s;155.5.5.5( d;1!.1.3.!-<1 .1. .1 7!8 >:dditional out"ut o*itted?????

Untuk mela#ak atau melihat proses operasi &(). gunakan perintah de%ug ip nat Klist F detailedL. Pada #ontoh di atas dapat dijelaskan sebagai berikut <

)anda asterisk $M% menunjukkan translasi terjadi dengan C7ast pathD atau dengan menggunakan C#a#heD. Paket pertama akan selalu melalui jalur lambat/slo' path $pro#ess6 s'it#hed%. Paket berikutnya akan melalui jalur #epat $7ast path% jika dengan entri C#a#heD.

,2

Kuliah Umum IlmuKomputer.Com Copyright 2003 IlmuKomputer.Com

sN,0.,.0., adalah alamat asal $sour#e address%. dN,AA.A.A.A adalah alamat tujuan $destination address%. ,0.,.0.,6O,2.,.3.2 menunjukkan bah'a alamat ditranslasikan. &ilai dalam tanda kurung adalah nomor identi7ikasi IP. In7ormasi ini sangat berguna untuk men#o#okkan pasangan paket jika menggunakan alat ukur "ni77er. karena sangat banyak paket yang mun#ul dalam "ni77er.

Mem%ersihkan Translasi Ta%el NAT 9erikut perintah untuk membersihkan isi tabel &() pada *outer Cis#o<

Perintah
clear ip nat translation * clear ip nat translation inside global-ip local-ip 7outside local-ip global-ip8 clear ip nat translation outside local-ip

Keterangan
&embersihkan semua isi tabel !A" "anda (') berarti S(&UA. &embersihkan translasi yang berisi sebuah translasi lokal)inside* atau translasi inside dan outside bersamaan. &embersihkan sebuah translasi global)outside.

global-ip

clear ip nat translation protocol inside

&embersihkan sebuah +e,tended entry-.

Tip * ;ika &() telah dikon7igur dengan benar. tetapi translasi tidak terjadi. bersihkan isi tabel &() $#lear ip nat translation M%. kemudian #ek kembali translasi yang terjadi.

0>?>0>N4# ,. KCis#o Press. 200!L Pendel Hdom. 5CC&$ IC&% )(am Certifi ation *uide5. Indianapolis.
U"(.

,3