NAT (Network Address Translation)


NAT adalah pengalihan suatu alamat IP ke alamat yang lain. Dan apabila suatu paket dialihkan dengan NAT pada suatu link, maka pada saat ada paket kembali dari tujuan maka link ini akan mengingat darimana asal dari paket itu, sehingga komunikasi akan berjalan seperti biasa.

Kenapa orang-orang menggunakan NAT ?

  1. Koneksi Modem ke Internet.
    Kebanyakan ISP akan memberikan satu alamat IP pada saat anda melakukan dial up ke internet. Anda dapat mengirim paket ke alamat mana saja yang anda inginkan tetapi balasannya hanya akan diterima oleh satu alamat IP yang anda miliki.Apabila anda ingin menggunakan banyak komputer seperti jaringan dalam rumah anda untuk terhubung dengan internet dengan hanya satu kink ini, maka anda membutuhkan NAT.
    Cara ini adalah NAT yang paling umum digunakan sekarang ini, sering disebut sebagai masqurading.
  2. Banyak Server
    Terkadang anda ingin mengubah arah paket yang datang ke jaringan anda. Hal ini disebabkan anda hanya memiliki satu alamat IP, tapi anda ingin semua orang dapat mengakses komputer yang berada di belakang komputer yang memiliki alamat IP yang asli. Apabila anda dapat mengubah tujuan dari paket yang masuk, anda dapat melakukan ini.
    Tipe NAT seperti ini disebut port-forwarding.
  3. Transparent Proxy
    Terkadang anda ingin seakan-akan setiap paket yang melewati komputer anda hanya ditujukan untuk komputer anda sendiri. Hal ini digunakan untuk membuat transparent proxy : Proxy adalah program yang berada di antara jaringan anda dan dunia luar, dan membuat keduanya dapat saling berkomunikasi. Bagian transparannya dikarenakan jaringan anda tidak akan mengetahui bahwa dia menggunakan proxy kecuali proxynya tidak bekerja.
    Program squid dapat dikonfiguraasi untuk bekerja seperti ini, dan hal ini disebut redirection atau transparent proxy.

Dua Tipe NAT

NAT terdiri atas dua macam tipe: Source NAT (SNAT) dan Destination NAT (DNAT) Source NAT adalah ketika anda mengubah alamat asal dari paket pertama dengan kata lain anda merubah dari mana koneksi terjadi. Source NAT selalu dilakukan setelah routing, sebelum paket keluar ke jaringan. Masquerading adalah contoh dari SNAT.
Destination NAT adalah ketika anda mengubah alamat tujuan dari paket pertama dengan kata lain anda merubah ke mana komunikasi terjadi. Destination NAT selalu dilakukan sebelum routing, ketika paket masuk dari jaringan. Port forwarding, load sharing dan transparent proxy semuanya adalah bentuk dari DNAT.

Menggunakan NAT di Linux

Untuk membuat NAt anda harus membuat aturan NAT yang akan memberitahu kernel koneksi apa yang harus diubah. Untuk ini kita menggunakan tool iptables dan membuatnya untuk mengubah tabel NAT dengan memberikan option “-t nat”.
Tabel aturan NAT berisi 3 bagian yang disebut “chain”, setiap aturan akan diperiksa secara berurutan sampai ada satu yang tepat. Kedua chain disebut PREROUTING (untuk Destination NAT, ketika paket pertama kali masuk), dan POSTROUTING (untuk Source NAT, ketika paket pergi). Yang ketiga, OUTPUT akan diabaikan. Tabel di bawah akan menggambarkannya :
_____                                     _____
     /     \                                   /     \
   PREROUTING -->[Routing ]----------------->POSTROUTING----->
     \D-NAT/     [Decision]                    \S-NAT/
                     |                            ^
                     |                            |
                     |                            |
                     |                            |
                     |                            |
                     |                            |
                     |                            |
                     --------> Local Process ------
Pada setiap node di atas, ketika paket melewati kita melihat koneksi apa yang diasosiasikan dengannya. Apabila hal itu adalah koneksi yang baru, kita melihat chain pada tabel nat yang berperan untuk mengetahui apa yang akan kita lakukan dengan paket tersebut.

Source NAT

Untuk melakukan Source NAT anda harus merubah asal dari koneksi. Hal ini dilakukan di chain POSTROUTING, pas sebelum keluar. Hal ini sangat penting, dikarenakan berarti tools lain yang di dalam router itu (routing, packet filtering) akan melihat paket itu tidak berubah. Hal ini juga berarti opsi ‘-o’ (outgoing interface) juga bisa digunakan.
Source dispesifikasikan dengan menggunakan ‘-j SNAT’, dan juga opsi ‘–to-source’ untuk menspesifikasikan sebuah alamat IP, range alamat IP dan port atau range port (hanya untuk protokol UDP dan TCP) yang sifatnya optional.
Mengubah alamat asal ke 1.2.3.4
# iptables -t nat -A POSTROUTING -o eth0 -j SNAT –to 1.2.3.4
Mengubah alamat asal ke 1.2.3.4, 1.2.3.5, or 1.2.3.6
# iptables -t nat -A POSTROUTING -o eth0 -j SNAT –to 1.2.3.4-1.2.3.6
Mengubah alamat asal ke 1.2.3.4, port 1-1023
# iptables -t nat -A POSTROUTING -p tcp -o eth0 -j SNAT –to 1.2.3.4:1-1023

Masquerading

Terdapat kasus yang khusus untuk Source NAT yang disebut masquerading, sebaiknya hanya digunakan untuk alamat IP yang dinamik, seperti menggunakan dialup secara standar (untuk alamat IP yang statis, gunakan SNAT si atas). Anda tidak perlu menempatkan alamat asal apabila anda menggunakan masquerading, dikarenakan alamat asal akan memakai alamat dari interface tempat paket itu keluar. Hal ini akan memudahkan apabila ada penggantian alamat IP dari interface tersebut, sehingga keslaahan da[at dihindari.
Masquerade semua paket yang keluar dari ppp0
# iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE

Destination NAT

Destination NAT dilakukan pada chain PREROUTING, pas ketika paket masuk, hal ini berarti semua tools di dalam router akan melihat paket akn pergi ke tujuan yang sebenarnya . Hal ini juga berarti bahwa opsi ‘-i’ (incoming interface) bisa digunakan.
Destination NAT dispesifikasikan dengan menggunakan ‘-j DNAT’ dan opsi ‘–to-destination’ menspesifikasikan sebuah alamat IP, range alamat IP dan range dari port (hanya untuk protokol UDP dan TCP) yang sifatnya optional.
Merubah alamat tujuan ke 5.6.7.8
# iptables -t nat -A PREROUTING -i eth0 -j DNAT –to 5.6.7.8
Merubah alamat tujuan ke 5.6.7.8, 5.6.7.9, or 5.6.7.10
# iptables -t nat -A PREROUTING -i eth0 -j DNAT –to 5.6.7.8-5.6.7.10
Merubah alamat tujuan dari lalu lintas web ke 5.6.7.8 port 8080
# iptables -t nat -A PREROUTING -p tcp –dport 80 -i eth0 -j DNAT –to 5.6.7.8:8080

Redirection

Terdapat kasus khusus dari Destination NAT yang disebut redirection. Redirection adalah pengarahan dari paket yang masuk dari posrt tertentu diarahkan ke port lain, dimana setiap port menandakan aplikasi jaringan yang berbeda.
Mengirim dari port 80 lalu lintas web ke squid (transparent) proxy
# iptables -t nat -A PREROUTING -i eth1 -p tcp –dport 80 -j REDIRECT –to-port 3128
Dalam hal ini squid harus dikonfigurasi sehingga dia tahu paket yang masuk adalah transparent proxy.

OSI Layer

Model referensi jaringan terbuka OSI atau OSI Reference Model for open networking adalah sebuah model arsitektural jaringan yang dikembangkan oleh badan International Organization for Standardization (ISO) di Eropa pada tahun 1977. OSI sendiri merupakan singkatan dari Open System Interconnection. Model ini disebut juga dengan model “Model tujuh lapis OSI” (OSI seven layer model).
Struktur tujuh lapis model OSI, bersamaan dengan protocol data unit pada setiap lapisan
OSI Reference Model memiliki tujuh lapis, yakni sebagai berikut
Lapisan ke-
Nama lapisan
Keterangan
7
Application layer
Berfungsi sebagai antarmuka dengan aplikasi dengan fungsionalitas jaringan, mengatur bagaimana aplikasi dapat mengakses jaringan, dan kemudian membuat pesan-pesan kesalahan. Protokol yang berada dalam lapisan ini adalah HTTP, FTP, SMTP, dan NFS.
6
Presentation layer
Berfungsi untuk mentranslasikan data yang hendak ditransmisikan oleh aplikasi ke dalam format yang dapat ditransmisikan melalui jaringan. Protokol yang berada dalam level ini adalah perangkat lunak redirektor (redirector software), seperti layanan Workstation (dalam Windows NT) dan juga Network shell (semacam Virtual Network Computing (VNC) atau Remote Desktop Protocol (RDP)).
5
Session layer
Berfungsi untuk mendefinisikan bagaimana koneksi dapat dibuat, dipelihara, atau dihancurkan. Selain itu, di level ini juga dilakukan resolusi nama.
4
Transport layer
Berfungsi untuk memecah data ke dalam paket-paket data serta memberikan nomor urut ke paket-paket tersebut sehingga dapat disusun kembali pada sisi tujuan setelah diterima. Selain itu, pada level ini juga membuat sebuah tanda bahwa paket diterima dengan sukses (acknowledgement), dan mentransmisikan ulang terhadp paket-paket yang hilang di tengah jalan.
3
Network layer
Berfungsi untuk mendefinisikan alamat-alamat IP, membuat header untuk paket-paket, dan kemudian melakukan routing melalui internetworking dengan menggunakan router dan switch layer-3.
2
Data-link layer
Befungsi untuk menentukan bagaimana bit-bit data dikelompokkan menjadi format yang disebut sebagai frame. Selain itu, pada level ini terjadi koreksi kesalahan, flow control, pengalamatan perangkat keras (seperti halnya Media Access Control Address (MAC Address)), dan menetukan bagaimana perangkat-perangkat jaringan seperti hub, bridge, repeater, dan switch layer 2 beroperasi. Spesifikasi IEEE 802, membagi level ini menjadi dua level anak, yaitu lapisan Logical Link Control (LLC) dan lapisan Media Access Control (MAC).
1
Physical layer
Berfungsi untuk mendefinisikan media transmisi jaringan, metode pensinyalan, sinkronisasi bit, arsitektur jaringan (seperti halnya Ethernet atau Token Ring), topologi jaringan dan pengabelan. Selain itu, level ini juga mendefinisikan bagaimana Network Interface Card (NIC) dapat berinteraksi dengan media kabel atau radio.
Tabel MODEL OSI
Layer-layer tersebut disusun sedemikian sehingga perubahan pada satu layer tidak membutuhkan perubahan pada layer lain. Layer teratas (5, 6 and 7) adalah lebih cerdas dibandingkan dengan layer yang lebih rendah; Layer Application dapat menangani protocol dan format data yang sama yang digunakan oleh layer lain, dan seterusnya. Jadi terdapat perbedaan yang besar antara layer Physical dan layer Application.
II. FUNGSI LAYER
1. Layer Physical
Ini adalah layer yang paling sederhana; berkaitan dengan electrical (dan optical) koneksi antar peralatan. Data biner dikodekan dalam bentuk yang dapat ditransmisi melalui media jaringan, sebagai contoh kabel, transceiver dan konektor yang berkaitan dengan layer Physical. Peralatan seperti repeater, hub dan network card adalah berada pada layer ini.
2. Layer Data-link
Layer ini sedikit lebih “cerdas” dibandingkan dengan layer physical, karena menyediakan transfer data yang lebih nyata. Sebagai penghubung antara media network dan layer protocol yang lebih high-level, layer data link bertanggung-jawab pada paket akhir dari data binari yang berasal dari level yang lebih tinggi ke paket diskrit sebelum ke layer physical. Akan mengirimkan frame (blok dari data) melalui suatu network. Ethernet (802.2 & 802.3), Tokenbus (802.4) dan Tokenring (802.5) adalah protocol pada layer Data-link.
3. Layer Network
Tugas utama dari layer network adalah menyediakan fungsi routing sehingga paket dapat dikirim keluar dari segment network lokal ke suatu tujuan yang berada pada suatu network lain. IP, Internet Protocol, umumnya digunakan untuk tugas ini. Protocol lainnya seperti IPX, Internet Packet eXchange. Perusahaan Novell telah memprogram protokol menjadi beberapa, seperti SPX (Sequence Packet Exchange) & NCP (Netware Core Protocol). Protokol ini telah dimasukkan ke sistem operasi Netware. Beberapa fungsi yang mungkin dilakukan oleh Layer Network
Membagi aliran data biner ke paket diskrit dengan panjang tertentu
Mendeteksi Error
Memperbaiki error dengan mengirim ulang paket yang rusak
Mengendalikan aliran
4. Layer Transport
Layer transport data, menggunakan protocol seperti UDP, TCP dan/atau SPX (Sequence Packet eXchange, yang satu ini digunakan oleh NetWare, tetapi khusus untuk koneksi berorientasi IPX). Layer transport adalah pusat dari mode-OSI. Layer ini menyediakan transfer yang reliable dan transparan antara kedua titik akhir, layer ini juga menyediakan multiplexing, kendali aliran dan pemeriksaan error serta memperbaikinya.
5. Layer Session
Layer Session, sesuai dengan namanya, sering disalah artikan sebagai prosedur logon pada network dan berkaitan dengan keamanan. Layer ini menyediakan layanan ke dua layer diatasnya, Melakukan koordinasi komunikasi antara entiti layer yang diwakilinya. Beberapa protocol pada layer ini: NETBIOS: suatu session interface dan protocol, dikembangkan oleh IBM, yang menyediakan layanan ke layer presentation dan layer application. NETBEUI, (NETBIOS Extended User Interface), suatu pengembangan dari NETBIOS yang digunakan pada produk Microsoft networking, seperti Windows NT dan LAN Manager. ADSP (AppleTalk Data Stream Protocol). PAP (Printer Access Protocol), yang terdapat pada printer Postscript untuk akses pada jaringan AppleTalk.
6. Layer Presentation
Layer presentation dari model OSI melakukan hanya suatu fungsi tunggal: translasi dari berbagai tipe pada syntax sistem. Sebagai contoh, suatu koneksi antara PC dan mainframe membutuhkan konversi dari EBCDIC character-encoding format ke ASCII dan banyak faktor yang perlu dipertimbangkan. Kompresi data (dan enkripsi yang mungkin) ditangani oleh layer ini.
7. Layer ApplicationLayer
ini adalah yang paling “cerdas”, gateway berada pada layer ini. Gateway melakukan pekerjaan yang sama seperti sebuah router, tetapi ada perbedaan diantara mereka. Layer Application adalah penghubung utama antara aplikasi yang berjalan pada satu komputer dan resources network yang membutuhkan akses padanya. Layer Application adalah layer dimana user akan beroperasi padanya, protocol seperti FTP, telnet, SMTP, HTTP, POP3 berada pada layer Application.

Pengertian dan Cara Kerja DNS


DNS adalah Domain Name Server,yaitu server yang digunakan untuk mengetahui IP Address suatu hostlewat host name-nya. Dalam dunia internet, komputer berkomunikasi satusama lain dengan mengenali IP Address-nya.Namun bagi manusia tidakmungkin menghafalkan IP address tersebut, manusia lebih mudahmenghapalkan kata-kata seperti http://nstars.net, www.google.com, atau http://bentang.at.ua/. Jadi ,DNS berfungsi untuk mengkonversi nama yang bisa terbaca olehmanusia ke dalam IP addresshost yang bersangkutan untuk dihubungi.


Cara kerja DNS adalah sebagai berikut:

Ketika kita merequest suatu alamat, misalnya http://nstars.net dari host kita (124.195.3.23), maka host kita akan mengontak name server lokal untuk menanyakan dimanakah http://nstars.netcom berada. Name server ITS (124.195.3.2) akan mencari request tersebutdi databasen lokal. Karena tidak ada, maka name server akan mengontakroot DNS servernya, siapa yang memegang domain untuk .com

Beberapa daftar Top Level Domain (TLD) yang ada sekarang adalah: com,net, org, biz, info, name, museum, dan tv. Sedangkan Country Code TopLevel Domain (ccTLD) adalah: us, uk, fr, es, de, it, jp, ie, dll.

Root server akan memberitahu IP address dari server DNS dariwww.friendster.com. Kemudian DNS server lokal akan mengontak server DNSyang mengelola www.friendster.com. Kemudian DNS server tersebut akanmemberitahu IP address dari www.friendster.com. baru host nirmaladewimerequest www.friendster.com dengan IP address tersebut.

Istilah-Istilah dalam DNS:

SOA MNAME – SOA: Start Of Authority
SOA MNAME adalah field yang menunjukkan master server pada puncak/rootdari zona authority. Hanya diperbolehkan terdapat satu master servertiap zona authority. Contohnya domain its.ac.id memiliki SOA MNAMEns1.its.ac.id


SOA RNAME

SOA RNAME adalah email address dari orang atau organisasi yangbertanggung jawab pada zona ini. Format field ini berbeda dengan formatemail biasa (yaitu memakai tanda ‘@’). Format yang digunakan dalamfield ini adalah mailbox-name.domain.tld. Misalnya itsnet.its.ac.idakan ekuivalen dengan itsnet@its.ac.id


SOA Serial Number

SOA Serial Number adalah field yang menunjukkan serial number dari DNSserver. Field ini berisi nilai unsigned 32 bit mulai dari 1 hingga4294967295 dengan jumlah increment maksimal 2147483647. Dalamimplementasi BIND (Berkeley Internet Name Daemon), field inididefiniskan dalam 10 digit. Format yang paling populer dalam penamaanserial number ini adalah yyyymmddss dengan yyyy adalah tahun, mm adalahbulan, dd adalah tanggal, dan ss adalah jumlah perubahan yang dilakukanpada hari itu. Nilai dari field ini harus diubah ketika terjadiperubahan pada zone file. Perubahan ini wajib dilakukan karena serverlain menyimpan informasi mengenai zona berdasarkan serial number.Selama serial number server tidak berubah, maka data di cache jugatidak akan berubah.


SOA REFRESH

SOA REFRESH adalah field yang menunjukkan waktu slave server akanmerefresh zona dari master server. Field ini dalam satuan detik dengannilai signed 32 bit. RFC1912 merekomendasikan 1200 hingga 43200 detik.1200 detik jika datanya cepat berubah dan 43200 detik jika data jarangberubah.


SOA RETRY

SOA RETRY adalah field yang menunjukkan berapa lama waktu jeda antarapercobaan slave server mengkontak master server jika kontak pertamamengalami kegagalan ketika slave master me-refresh cache dari masterserver. Field ini dalam satuan detik dengan nilai signed 32 bit. Nilaiyang ideal tergantung keadaan dan kecepatan network local. Biasanyanilainya adalah 180 (dua menit) hingga 900 (tiga belas menit) ataulebih tinggi.


SOA EXPIRE

SOA EXPIRE adalah field yang menunjukkan berapa lama zona-data masihauthoritative. Field ini hanya berlaku untuk slave atau secondaryserver. Ketika nilai ini telah expired, maka slave master akanmengontak master server untuk membaca SOA record pada zona danmerequest AXFR/IFXR jika serial number berubah. Jika slave gagalmengontak master, maka slave akan terus mencoba mengontak master danmasihmelayani query hingga waktu SOA EXPIRE habis. Setelah itu slaveakan berhenti melayani query hingga kontak ke master server berhasil.RFC 1912 merekomendasikan 1209600 hingga 2419200 (2-4 minggu).


SOA MINIMUM TTL

SOA MINIMUM TTL adalah nilai default TTL (Time To Live) untuk semuarecord pada zone file. Field ini dalam satuan detik. Implementasi BIND9mendefinisikan field ini dalam nilai negatif.


CNAME

CNAME, Canonical Name for Alias adalah record yang menjelaskan primaryname untuk owner. Nama ownernya disebutkan dalam alias. Formatnyaadalah: CNAME


MX

MX adalah record yang menjelaskan tentang domain mail exchange.Formatnya adalah sebagai berikut: [domain-name] IN MX [Preference][Exchange]
Dimana:


Preference adalah 16 bit integer yang menunjukkan preferences darisuatu domain dengan domain lainnya. Semakin kecil nilainya makapreferencesnya semakin bagus. Exchange adalah domain yang akanmenangani mail exchange untuk owner name (tertulis di paling kiri ituloooh ^x^)

A

A adalah field yang menunjukkan alamat Ipv4. Nama owner akan ekuivalen dengan IP address yang didefinisikan setelah record A.


PTR

PTR adalah domain name pointer, yaitu record yang menunjuk ke lokasi tertentu dalam domain name space


AAAA

AAAA adalah record seperti record A yang menunjukkan alamat classalamat IPv6 yang spesifik dengan data format 128 bit (sesuai denganformat bit Ipv6).


TXT

TXT adalah record yang menunjukkan text strings, digunakan untukmenangani teks yang berisi deskripsi suatu domain. Semantiknyatergantung dengan domain name dimana teks ditemukan.

Pengertian dan Cara Kerja DHCP

Pengertian DHCP
DHCP (Dynamic Host Configuration Protocol) adalah layanan yang secara otomatis memberikan nomor IP kepada komputer yang memintanya. Komputer yang memberikan nomor IP disebut sebagai DHCP server, sedangkan komputer yang meminta nomor IP disebut sebagai DHCP Client. Dengan demikian administrator tidak perlu lagi harus memberikan nomor IP secara manual pada saat konfigurasi TCP/IP, tapi cukup dengan memberikan referensi kepada DHCP Server.
Pada saat DHCP client dihidupkan , maka komputer tersebut melakukan request ke DHCP-Server untuk mendapatkan nomor IP. DHCP menjawab dengan memberikan nomor IP yang ada di database DHCP. DHCP Server setelah memberikan nomor IP, maka server meminjamkan (lease) nomor IP yang ada ke DHCP-Client dan mencoret nomor IP tersebut dari daftar pool. Nomor IP diberikan bersama dengan subnet mask dan default gateway. Jika tidak ada lagi nomor IP yang dapat diberikan, maka client tidak dapat menginisialisasi TCP/IP, dengan sendirinya tidak dapat tersambung pada jaringan tersebut.
Setelah periode waktu tertentu, maka pemakaian DHCP Client tersebut dinyatakan selesai dan client tidak memperbaharui permintaan kembali, maka nomor IP tersebut dikembalikan kepada DHCP Server, dan server dapat memberikan nomor IP tersebut kepada Client yang membutuhkan. Lama periode ini dapat ditentukan dalam menit, jam, bulan atau selamanya. Jangka waktu disebut leased period.
Cara Kerja DHCP
DHCP menggunakan 4 tahapan proses untuk memberikan konfigurasi nomor IP. (Jika Clietn punya NIC Card lebih dari satu dan perlu IP address lebih dari 1 maka proses DHCP dijalankan untuk setiap adaptor secara sendiri-sendiri) :
  • IP Least Request
    Client meminta nomor IP ke server (Broadcast mencari DHCP server).
  • IP Least Offer
    DHCP server (bisa satu atau lebih server jika memang ada 2 atau lebih DHCP server) yang mempunyai no IP memberikan penawaran ke client tersebut.
  • IP Lease Selection
    Client memilih penawaran DHCP Server yng pertama diterima dan kembali melakukan broadcast dengan message menyetujui peminjaman tersebut kepada DHCP Server.
  • IP Lease Acknowledge
    DHCP Server yang menang memberikan jawaban atas pesan tersebut berupa konfirmasi no IP dan informasi lain kepada Client dengan sebuah ACKnowledgment. Kemudian client melakukan inisialisasi dengan mengikat (binding) nomor IP tersebut dan client dapat bekerja pada jaringan tersebut. Sedangkan DHCP Server yang lain menarik tawarannya kembali.