1. Network Interface
2.1.5.2.3 Penggunaan UDP
UDP sering digunakan dalam tugas sebagai berikut :
a. Protokol yang "ringan" (lightweight): Untuk menghemat sumber daya memori dan prosesor, beberapa protokol lapisan aplikasi membutuhkan penggunaan protokol yang ringan yang dapat melakukan fungsi-fungsi spesifik dengan saling bertukar pesan. Contoh dari protokol yang ringan adalah fungsi query nama dalam protokol lapisan aplikasi Domain Name System.
b. Protokol lapisan aplikasi yang mengimplementasikan layanan keandalan: Jika protokol lapisan aplikasi menyediakan layanan transfer data yang andal, maka kebutuhan terhadap keandalan yang ditawarkan oleh TCP pun menjadi tidak ada. Contoh dari protokol seperti ini adalah Trivial File Transfer Protocol (TFTP) dan Network
File System (NFS).
c. Protokol yang tidak membutuhkan keandalan. Contoh protokol ini adalah protokol Routing Information Protocol
(RIP).
d. Transmisi broadcast: Karena UDP merupakan protokol yang tidak perlu membuat koneksi terlebih dahulu dengan sebuah host tertentu, maka transmisi broadcast pun dimungkinkan. Sebuah protokol lapisan aplikasi dapat mengirimkan paket data ke beberapa tujuan dengan menggunakan alamat multicast atau broadcast. Hal ini kontras dengan protokol TCP yang hanya dapat mengirimkan transmisi one-to-one. Contoh: query nama dalam protokol NetBIOS Name Service.
2.1.5.3 IP (Internet Protocol)
Internet Protocol (IP) adalah protokol network layer (layer ke3
beberapa informasi kontrol yang membuat paket dapat diarahkan menuju tujuan dalam sebuah jaringan. IP merupakan protokol network layer yang utama dalam deretan protokol TCP/IP. (Dong,2007,p.255).
Alamat IP adalah representasi dari 32 bit bilangan biner, yang ditampilkan dalam bentuk desimal dengan titik. Contoh penulisan IP adalah 192.168.1.200.
Alamat IP versi 4 umumnya diekspresikan dalam notasi desimal bertitik (dotted-decimal notation), yang dibagi ke dalam empat buah oktet berukuran 8-bit. Dalam beberapa buku referensi, format bentuknya adalah
w.x.y.z. Karena setiap oktet berukuran 8-bit, maka nilainya berkisar antara
0 hingga 255 (meskipun begitu, terdapat beberapa pengecualian nilai). Alamat IP yang dimiliki oleh sebuah host dapat dibagi dengan menggunakan subnet mask jaringan ke dalam dua buah bagian, yakni:
1. Network Identifier/NetID atau Network Address (alamat jaringan) yang digunakan khusus untuk mengidentifikasikan alamat jaringan di mana host berada. Dalam banyak kasus, sebuah alamat network identifier adalah sama dengan segmen jaringan fisik dengan batasan yang dibuat dan didefinisikan oleh router IP. Meskipun demikian, ada beberapa kasus di mana beberapa jaringan logis terdapat di dalam sebuah segmen jaringan fisik yang sama dengan menggunakan sebuah praktek yang disebut sebagai multinetting. Semua sistem di dalam sebuah jaringan fisik yang sama harus memiliki alamat
network identifier yang sama. Network identifier juga harus
bersifat unik dalam sebuah internetwork. Jika semua node di dalam jaringan logis yang sama tidak dikonfigurasikan dengan menggunakan network identifier yang sama, maka terjadilah masalah yang disebut dengan routing error. Alamat network
identifier tidak boleh bernilai 0 atau 255.
2. Host Identifier/HostID atau Host address (alamat host) yang digunakan khusus untuk mengidentifikasikan alamat host (dapat berupa workstation, server atau sistem lainnya yang berbasis teknologi TCP/IP) di dalam jaringan. Nilai host identifier tidak boleh bernilai 0 atau 255 dan harus bersifat unik di dalam network identifier / segmen jaringan di mana ia berada.
Jenis-jenis Alamat IP
Alamat IPv4 terbagi menjadi beberapa jenis, yakni sebagai berikut:
• Alamat Unicast, merupakan alamat IPv4 yang ditentukan untuk sebuah antarmuka jaringan yang dihubungkan ke sebuah
internetwork IP. Alamat unicast digunakan dalam komunikasi point-to-point atau one-to-one.
• Alamat Broadcast, merupakan alamat IPv4 yang didesain agar diproses oleh setiap node IP dalam segmen jaringan yang sama. Alamat broadcast digunakan dalam komunikasi one-to-everyone.
• Alamat Multicast, merupakan alamat IPv4 yang didesain agar diproses oleh satu atau beberapa node dalam segmen jaringan yang sama atau berbeda. Alamat multicast digunakan dalam komunikasi
one-to-many.
Pembagian Kelas IP Address
Dalam RFC 791, alamat IP versi 4 dibagi ke dalam beberapa kelas, dilihat dari oktet pertamanya, seperti terlihat pada tabel 2.1 . Sebenarnya yang menjadi pembeda kelas IP versi 4 adalah pola biner yang terdapat dalam oktet pertama (utamanya adalah bit-bit awal/high-order bit), tapi untuk lebih mudah mengingatnya, akan lebih cepat diingat dengan menggunakan representasi desimal.
Tabel 2.1 Tabel Pembagian kelas IP Address
Kelas Alamat IP Oktet Pertama (desimal) Oktet Pertama (Biner) Penggunaan
Kelas A 1-126 0xxx xxxx Alamat unicast untuk
jaringan skala besar
Kelas B 128-191 10xx xxxx Alamat unicast untuk
jaringan skala menengah hingga skala besar
jaringan skala kecil
Kelas D 224-239 1110 xxxx Alamat multicast (bukan alamat unicast)
Kelas E 240-255 1111 xxxx Direservasikan;umumnya digunakan sebagai alamat percobaan (eksperimen); (bukan alamat unicast)
1. Kelas A
Alamat-alamat kelas A diberikan untuk jaringan skala besar. Nomor urut bit tertinggi di dalam alamat IP kelas A selalu diset dengan nilai 0 (nol). Tujuh bit berikutnya—untuk melengkapi oktet pertama—akan membuat sebuah network identifier. 24 bit sisanya (atau tiga oktet terakhir) merepresentasikan host identifier. Ini mengizinkan kelas A memiliki hingga 126 jaringan, dan 16,777,214 host tiap jaringannya. Alamat dengan oktet awal 127 tidak diizinkan, karena digunakan untuk mekanisme Interprocess Communication (IPC) di dalam mesin yang bersangkutan.
2. Kelas B
Alamat-alamat kelas B dikhususkan untuk jaringan skala menengah hingga skala besar. Dua bit pertama di
dalam oktet pertama alamat IP kelas B selalu diset ke bilangan biner 10. 14 bit berikutnya (untuk melengkapi dua oktet pertama), akan membuat sebuah network identifier. 16 bit sisanya (dua oktet terakhir) merepresentasikan host identifier. Kelas B dapat memiliki 16,384 network, dan 65,534 host untuk setiap network-nya.
3. Kelas C
Alamat IP kelas C digunakan untuk jaringan berskala kecil. Tiga bit pertama di dalam oktet pertama alamat kelas C selalu diset ke nilai biner 110. 21 bit selanjutnya (untuk melengkapi tiga oktet pertama) akan membentuk sebuah network identifier. 8 bit sisanya (sebagai oktet terakhir) akan merepresentasikan host identifier. Ini memungkinkan pembuatan total 2,097,152 buah network, dan 254 host untuk setiap network-nya.
4. Kelas D
Alamat IP kelas D disediakan hanya untuk alamat-alamat IP multicast, sehingga berbeda dengan tiga kelas di atas. Empat bit pertama di dalam IP kelas D selalu diset ke bilangan biner 1110. 28 bit sisanya digunakan sebagai alamat yang dapat digunakan untuk
mengenali host. Untuk lebih jelas mengenal alamat ini, lihat pada bagian Alamat Multicast IPv4.
5. Kelas E
Alamat IP kelas E disediakan sebagai alamat yang bersifat "eksperimental" atau percobaan dan dicadangkan untuk digunakan pada masa depan. Empat bit pertama selalu diset kepada bilangan biner 1111. 28 bit sisanya digunakan sebagai alamat yang dapat digunakan untuk mengenali host.
2.1.6 NAT
Menurut Mudji Basuki (2003) keterbatasan alamat IPv.4 merupakan masalah pada jaringan global atau Internet. Untuk memaksimalkan penggunakan alamat IP yang diberikan oleh Internet
Service Provider (ISP) dapat digunakan Network Address Translation
atau NAT. NAT membuat jaringan yang menggunakan alamat lokal (private), alamat yang tidak boleh ada dalam tabel routing Internet dan dikhususkan untuk jaringan lokal/intranet, dapat berkomunikasi ke Internet dengan jalan ‘meminjam’ alamat IP Internet yang dialokasikan oleh ISP. Jadi NAT merupakan suatu metode untuk menghubungkan lebih dari satu komputer ke jaringan internet dengan menggunakan satu alamat IP.
Mekanisme NAT berdasarkan referensi Tito Sugiharta (2005) adalah ketika sebuah paket TCP yang terdiri dari header dan data yang memiliki MAC (Media Access Control) address asal dan tujuan, IP
address asal dan tujuan, dan nomor port asal dan tujuan. Saat mesin A
menghubungi mesin B, header paket berisi IP A sebagai IP address asal dan IP B sebagai IP address tujuan. Header ini juga berisi nomor port asal (biasanya dipilih oleh mesin pengirim dari sekumpulan nomor port) dan nomor port tujuan yang spesifik, misalnya port 80.
Kemudian B menerima paket pada port 80 dan memilih nomor
port balasan untuk digunakan sebagai nomor port asal menggantikan port
80 tadi. Mesin B lalu membalik IP address asal & tujuan dan nomor port asal & tujuan dalam header paket. Sehingga keadaan sekarang IP B adalah IP address asal dan IP A adalah IP address tujuan. Kemudian B mengirim paket itu kembali ke A. Selama session terbuka, paket data hilir mudik menggunakan nomor port yang dipilih.
Router (yang biasa – tanpa Natd) memodifikasi field MAC address asal & tujuan dalam header ketika me-route paket yang
melewatinya. IP address, nomor port, dan nomor sequence asal & tujuan tidak disentuh sama sekali.
NAT juga bekerja atas dasar ini. Dimulai dengan membuat tabel translasi internal untuk semua IP address jaringan internal yang mengirim paket melewatinya. Lalu men-set tabel nomor port yang akan digunakan
oleh IP address yang valid. Ketika paket dari jaringan internal dikirim ke Natd untuk disampaikan keluar, Natd melakukan hal-hal sebagai berikut:
1. Mencatat IP address dan port asal dalam tabel translasi
2. Menggantikan nomor IP asal paket dengan nomor IP dirinya yang valid
3. Menetapkan nomor port khusus untuk paket yang dikirim keluar, memasukkannya dalam tabel translasi dan menggantikan nomor port asal tersebut dengan nomor port khusus ini.
Ketika paket balasan datang kembali, Natd mengecek nomor port tujuannya. Jika ini cocok dengan nomor port yang khusus telah ditetapkan sebelumnya, maka dia akan melihat tabel translasi dan mencari mesin mana di jaringan internal yang sesuai. Setelah ditemukan, ia akan menulis kembali nomor port dan IP address tujuan dengan IP address dan nomor port asal yang asli yang digunakan dulu untuk memulai koneksi. Lalu mengirim paket ini ke mesin di jaringan internal yang dituju. Natd memelihara isi tabel translasi selama koneksi masih terbuka.
2.1.6.1 IP Masqurade
IP Masquerade adalah salah satu fasilitas yang menerapkan bentuk NAT di Linux yang memungkinkan komputer yang tidak memiliki nomor IP resmi dapat tersambung ke internet melewati komputer Linux.
Cara kerja IP Masquerade dapat digambarkan sebagai berikut :
1. Mesin klien diatur dengan menempatkan mesin Linux sebagai gatewaynya.
2. Jika ada paket dari klien ke mesin Linux, IP
Masquerade akan membuat nomor port baru,
header IP baru berdasarkan IP mesin Linux, dan menyimpan paket aslinya. Paket tersebut kemudian diteruskan ke internet..
3. Jika ada paket baru dari Internet, IP Masquerade akan mencocokkan dengan nomor port. Jika sesuai dengan nomor port yang telah dibuat sebelumnya, maka paket tersebut dibungkus kembali dengan header yang telah disimpan sebelumnya, dan diteruskan kepada klien.
4. Baik klien maupun host di Internet yang mengirimkan paket tidak pernah merasakan perbedaannya.