__ __ /\ \ ___ ___ ___ __ __ __ ___ _ __ /\_\ \_\ \ / __`\ /' __` __`\ /'__`\ /'_ `\ /'__`\ / __`\/\`'__\ \/\ \ /'_` \ /\ \L\ \/\ \/\ \/\ \/\ __//\ \L\ \/\ \L\.\_ __/\ \L\ \ \ \/ __\ \ \/\ \L\ \ \ \____/\ \_\ \_\ \_\ \____\ \____ \ \__/.\_\/\_\ \____/\ \_\/\_\\ \_\ \___,_\ \/___/ \/_/\/_/\/_/\/____/\/___L\ \/__/\/_/\/_/\/___/ \/_/\/_/ \/_/\/__,_ / /\____/ \_/__/ OMEGA|ZINE RELEASE 03 Author: 5ynl0rd || voidnetworklabs[at]gmail[dot]com Online @ www.omega.or.id :: http://ezine.omega.or.id == Network Fundamental (phase 1) == || root@synl0rd-system:/Network Fundamental (phase 1)# tree || . || |-- 0x00 Tree || |-- 0x01 Mengenal Protokol || | |-- OSI model || | '-- TCP/IP model || |-- 0x02 IP (IPV4) || | |-- Pembagian kelas (IPV4) || | |-- Format pengalamatan (IPV4) || | |-- Subnetting (IPV4) || | |-- NAT (Network Address Translation) || | '-- Routing || | '-- IRP & ERP (In/Exterior Routing Protocol) || | |-- RIP || | '-- OSPF || '-- 0x03 Outro || ||\_0x01_____________________________Mengenal_Protokol____________________________________/ || || Protokol dapat dianalogikan ke kehidupan nyata sebagai suatu bahasa yang disepakati || bersama. bisa kita bayangkan jika ada 2 orang asing dari negara yang berbeda hendak || berkomunikasi. Apabila mereka menggunakan bahasa negaranya masing2, kemungkinan besar || kedua orang asing tersebut tidak mengerti bahasa yang digunakan lawan bicara mereka. || Oleh sebab itu perlu adanya bahasa standar yg dapat dimengerti oleh keduanya, yaitu || bahasa Internasional (bahasa Inggris). || || Sama halnya dengan 2 buah komputer dari pabrikan yang berbeda. Ketika akan || berkomunikasi pasti memerlukan sistem penyampaian yang telah disepakati bersama, || sistem inilah yang disebut protokol. || || Pada awal tahun 1990 banyak bermunculan berbagai jenis protokol yg menimbulkan suatu || masalah baru dimana jenis protokol dari sebuah pabrik tertentu tidak dapat saling || berkomunikasi terhadap protokol jenis lain. Pada akhirnya International Standard || Organization(ISO) membuat standarisasi protokol yang saat ini dikenal dengan protokol || model OSI. Tetapi dikarenakan model OSI ini adalah sebagai konsep dasar dan referensi || teori cara bekerja suatu protokol, maka protokol TCP/IP lah yg digunakan sebagai || standar de facto, yaitu standar yang diterima karena perkembangan pemakaiannya. || || OSI Model || ````````` || Open System Interconnection (OSI). Model OSI ini tidak membahas secara detail mengenai || cara kerja dari lapisan-lapisan OSI, melainkan hanya memberikan suatu konsep dalam || menentukan proses apa yang harus terjadi, dan protokol-protokol apa yang dapat dipakai || di suatu lapisan tertentu. || || Model OSI terdiri dari 7 lapisan/layer, ketujuh lapisan tersebut adalah: || 0x01. Physical Layer || Menangani koneksi fisik jaringan dan prosedur-prosedur teknis yang berhubungan || langsung dengan media transmisi fisik. || 0x02. Data Link Layer || Layer ini berwenang untuk mengendalikan lapisan fisik, mendeteksi serta || mengkoreksi kesalahan yang berupa gangguan sinyal pada media transmisi fisik. || 0x03. Network Layer || Berfungsi untuk menyediakan routing fisik, menentukan rute yang akan ditempuh. || 0x04. Transport layer || Layer ini menginisialisasi, memelihara, serta mengakhiri komunikasi antar || komputer,selain itu juga memastikan data yang dikirim benar serta memperbaiki || apabila terjadi kesalahan. || 0x05. Session Layer || Layer ini menginisialisasi, memelihara, serta mengakhiri komunikasi antar || komputer,selain itu juga memastikan data yang dikirim benar serta memperbaiki || apabila terjadi kesalahan. || 0x06. Presentation Layer || Berfungsi mengubah data dari layer diatasnya menjadi data yang bisa dipahami || oleh semua jenis hardware dalam jaringan. || 0x07. Application Layer || Merupakan interface pengguna dengan Layer OSI lainnya di layer inilah aplikasi- || aplikasi jaringan berada seperti e-mail,ftp, http,danlain sebagainya. Tujuan || dari layer ini adalah menampilkan data dari layer dibawahnya kepada pengguna. || || TCP/IP Model || ```````````` || Model ini hanya terdiri dari empat lapisan/layer, dimana fungsi-fungsinya memiliki || kesamaan dan perbedaan dengan model OSI, untuk lebih jelasnya perhatikan tabel || dibawah. || || .------------------------. || | Jaringan Fisik | || '------------------------' || A .-. || / \ | | || / \ \ / || | | \ / || '-' v || .---.------------------------------. || | | Network Interface Layer | || | 1 | (Ethernet,X25,SLIP,PPP) | || |---|------------------------------| || | | Internet Layer | || | 2 | (IP,ICMP,ARP,RARP) | || |---|------------------------------| || | | Host to host/Transport layer | || | 3 | (TCP,UDP) | || |---|------------------------------| || | | Application Layer | || | 4 | (HTTP,FTP,SMTP,POP3,Telnet) | || '---'------------------------------' || || ||\_0x02_________________________________IP_(IPV4)________________________________________/ || || Alamat IP (IPV4) merupakan sederetan bilangan biner sepanjang 32 bit yg dipakai untuk || mengidentifikasi host pada jaringan. Alamat IP ini diberikan secara unik pada masing- || masing komputer/host yang terhubung ke Internet. Prinsip kerjanya adalah paket yang || membawa data dimuati alamat IP dari komputer pengirim data kepada alamat IP pada || komputer yang akan dituju, kemudian data tersebut dikirim ke jaringan. Paket ini || kemudian dikirim dari router ke router dengan berpedoman pada alamat IP tersebut || menuju komputer yang dituju. Seluruh komputer atau host yang tersambung ke Internet, || dibedakan hanya berdasarkan alamat IP ini, oleh karena itu tidak boleh terjadi || duplikasi pada alamat IP untuk setiap komputer yang terhubung ke jaringa Internet || || Pembagian Kelas IP (IPV4) || ````````````````````````` || IPV4 dapat dibagi menjadi 3 kelas umum (meskipun sebenarnya ada 5) yg tergantung dari || besarnya bagian host, perhatikan gambar pembagian kelas IPV4 dibawah ini. || || || Bit 0 8 16 24 32 || |<--- Byte 1 --->|<--- Byte 2 --->|<--- Byte 3 --->|<--- Byte 4 --->| || V V V V V || .-----.----------.--------------------------------------------------. || Kelas A |0 | Net ID | Host ID | || '-----'----------'--------------------------------------------------' || Range 0-127 ; Network A ; Host B,C,D ; jaringan besar || .-----.---------------------------.---------------------------------. || Kelas B |10 | Net ID | Host ID | || '-----'---------------------------'---------------------------------' || Range 128-191 ; Network A,B ; Host C,D ; Jaringan menengah || .-----.--------------------------------------------.----------------. || Kelas C |110 | Net ID | Host ID | || '-----'--------------------------------------------'----------------' || Range 192-233 ; Network A,B,C ; Host D ; Jaringan kecil || .-----.-------------------------------------------------------------. || Kelas D |1110 | Multicast Address | || '-----'-------------------------------------------------------------' || Range 224-247 ; Network A,B,C ; Host D ; IP multicast || .-----.-------------------------------------------------------------. || Kelas E |11110| Digunakan untuk keperluan masa depan | || '-----'-------------------------------------------------------------' || Range 248-255 ; Network A,B,C ; Host D ; Keperluan masa depan/eksperimen || || || Pada kelas A, alamat yg dimulai dengan network ID 0 dan 127 tidak digunakan, karena || alamat network ID 0 digunakan untuk alamat broadcast, sedangkan alamat network ID 127 || digunakan untuk alamat loopback. Untuk tiap kelas A, B, dan C, alamat host 0 dan 255 || tidak dapat digunakan karena merupakan alamat broadcast. || || Untuk keperluan alokasi alamat IP yg digunakan untuk jaringan pribadi (private || network) dan tidak digunakan dalam Internet (public network), menurut RFC 1597 diatur || sebagai berikut. || || .-----------------------------------------------------------------------------------. || | The Internet Assigned Number Authority (IANA) has reserved the three blocks of | || | the IP Address space for private networks | || |-----------------------------------------------------------------------------------| || | 10.0.0.0 - 10.255.255.255 for class A | || | 172.16.0.0 - 172.31.255.255 for class B | || | 192.168.0.0 - 192.168.255.255 for class C | || '-----------------------------------------------------------------------------------' || || Format Pengalamatan (IPV4) || `````````````````````````` || Pemberian alamat dalam Internet mengikuti format alamat IP (RFC 1166). Alamat ini || dinyatakan dengan 32 bit (bilangan 0 dan 1) yang dibagi atas 4 bagian (setiap bagian || terdiri dari 8 bit atau oktet) dan tiap kelompok dipisahkan oleh sebuah tanda titik. || Untuk memudahkan pembacaan, penulisan alamat dilakukan dengan angka desimal, misalnya || alamat IP 131.107.12.200 yang jika dinyatakan dalam bilangan biner menjadi 10000011. || 11010111.00001100.11001000. Dari 32 bit ini berarti banyaknya jumlah maksimum alamat || yang dapat dituliskan adalah 2 pangkat 32, atau 4.294.967.296 alamat. || || <--------------------------- 32 bit ----------------------------> || .-------------------------------.-------------------------------. || | Network ID (Net ID) | Host ID | || | | | || | | | | | || |1|0|0|0|0|0|1|1|1|1|0|1|0|1|1|1|0|0|0|0|1|1|0|0|1|1|0|0|1|0|0|0| || '---------------------------------------------------------------' || biner 10000011 . 11010111 . 00001100 . 11001000 || desimal 131 . 107 . 12 . 200 || || format alamat IPV4 terdiri dari 2 bagian, networkID dan hostID menyatakan alamat lokal || (host/router). Akan tetapi dari 32 bit ini tidak boleh semuanya angka 0 atau 1 || (0.0.0.0 digunakan untuk jaringan yang tidak dikenal dan 255.255.255.255 digunakan || untuk broadcast) || || Subnetting (IPV4) || ````````````````` || Subnetmask ialah angka biner 32 bit yang digunakan untuk: || * Membedakan network ID dan Host ID || * Menentukan letak suatu host, apakah berada di jaringan lokal atau jaringan luar || .---------------------------------------------------------. || | Kelas A 255.0.0.0 FF.00.00.00 | || | Kelas B 255.255.0.0 FF.FF.00.00 | || | Kelas C 255.255.255.0 FF.FF.FF.00 | || '---------------------------------------------------------' || || Contoh subnetting || Suatu subnet C memiliki kebutuhan host ID terbesar yaitu 26 host-ID (ada 26 komputer || yang hendak dihubungkan dalam 1 segmen yang sama). Maka konversikan ke dalam bentuk || biner dari desimal 26, sehingga menjadi 11010, sehingga disini kita memerlukan 5 bit, || artinya untuk host ID 26 kita membutuhkan 5 bit sehingga subnetmask yang diperlukan || ialah: || || 11111111.11111111.11111111.11100000 = dalam biner || FF.FF.FF.E0 = dalam hexa || 255.255.255.224 = dalam desimal || || atau dapat ditulis dalam bentuk network prefix /27 dimana 27 adalah jumlah angka 1 || pada subnetmask. || || alokasi tersebut jika digunakan untuk kelas C maka: || * 192.168.0.1 - 192.168.0.30 = range IP yang dapat digunakan (192.168.0.0/27) || dengan 192.168.0.0 dan 192.168.0.31 tidak dpt dugunakan (NetID dan broadcast ID) || * 192.168.0.33 - 192.168.0.62 = range IP lain yang dapat digunakan(192.168.0.32/27) || dengan 192.168.0.32 dan 192.168.0.63 tidak dpt digunakan (NetID dan broadcast ID) || ..... || dst hingga || * 192.168.0.225 - 192.168.0.254 = range IP(192.168.0.224/27) || dengan 192.168.0.224 dan 192.168.0.255 tidak dapat digunakan (NetID dan broadcastID) || || jika subnetmask yang sering kita gunakan 255.255.255.0 maka: || * 192.168.0.1 - 192.168.0.254 = range IP (192.168.0.0/24) || dengan 192.168.0.0 dan 192.168.0.255 tidak dapat digunakan (NetID dan broadcast ID) || || "Subnet ID yg terendah (Subnet Address) dan subnet ID tertinggi (Broadcast Address) || tidak diperkenankan dipakai pada alamat IP host" || - RFC 950 || || NAT (Network Address Translation) || ````````````````````````````````` || Keterbatasan alamat pada IPV4 merupakan masalah pada jaringan global/Internet. Untuk || memaksimalkan alamat IPV4 tersebut maka kita dapat menggunakan teknologi NAT (Network || Address Translation). || || NAT berfungsi untuk mengizinakan alamat private yg seharusnya tidak berada pada tabel || routing di jaringan global/Internet sehingga dapat berkomunikasi di jaringan global/ || Internet, dengan cara mentranslasikan alamat IPV4 Private ke alamat IPV4 Publik. || NAT dibagi menjadi 2 yaitu: || * Static NAT || Translasi statik ini terjadi ketika private IP dipetakan ke sebuah Public IP. || Private IP dan Public IP tersebut dipetakan one to one. Contoh: || || NAT Router || .--------------. || Private IP: 192.168.1.1 ------->| Static NAT |---------> Public IP: 202.122.2.10 || '--------------' || || * Dynamic NAT || Pada dynamic NAT merupakan kebalikan dari Static NAT, jika pada static NAT pemetaan || dilakukan 1 to 1, maka pada dynamic NAT pemetaan dibagi menjadi 2 yaitu: || - Group NAT || Memetakan Private IP dalam suatu grup ke beberapa Public IP (many to many) || || NAT Router || .--------------. || Private IP: 192.168.1.0/24 ------->| Group NAT |---------> Public IP: 202.122.2.0/24 || 192.168.1.x ------->| |---------> 202.122.2.x || 192.168.1.x ------->| |---------> 202.122.2.x || ... '--------------' || || - NAT Overload || Memetakan Private IP dalam suatu grup ke satu Public IP (many to one) || || NAT Router || .--------------. || Private IP: 192.168.1.0/24 ------->| NAT Overload |---------> Public IP: 202.122.2.10 || 192.168.1.x ------->| | || 192.168.1.x ------->| | || ... '--------------' || || Keuntungan dan kerugian NAT: || .-----------------------------------------.-----------------------------------------. || | Keuntungan | Kerugian | || :-----------------------------------------'-----------------------------------------: || | Menghemat alamat IP legal yg ditetapkan | Transmisi menimbulkan delay/switching | || | oleh NIC atau service provider | | || |-----------------------------------------|-----------------------------------------| || | Mengurangi terjadinya duplikat alamat | Menghilangkan kemampuan trace | || | jaringan | (traceability) end to end IP | || |-----------------------------------------|-----------------------------------------| || | Meningkatkan fleksibilitas untuk koneksi| Aplikasi tertentu tidak dapat langsung | || | ke Internet | berjalan menggunakan NAT | || |-----------------------------------------|-----------------------------------------' || | Menhindari proses pengalamatan kembali | || | (readdressing) pada saat jaringan | || | berubah | || '-----------------------------------------' || || Routing || ``````` || Mekanisme routing bisa dilihat pada gambar dibawah: || || || System1 System2(Router) System3 || .--------------. .---------------------------------------. .--------------. || | .----------. | | .-----------. .------------. | | .----------. | || | | Client | | | | Client | | Server | | | | Client | | || | '----------' | | '-----------' '------------' | | '----------' | || | A | | A A | | A | || | | | | | | | | | | || | V | | V V | | V | || | .----------. | | .-----------------------------------. | | .----------. | || | | Protocol | | | | Protocol (routing) | | | | Protocol | | || | '----------' | | '-----------------------------------' | | '----------' | || | A | | A A | | A | || | | | | | | | | | | || | V | | V V | | V | || | .----------. | | .-----------. .------------. | | .----------. | || | | Network | | | | Network | | Network | | | | Network | | || | | Adapter | | | | Adapter | | Adapter | | | | Adapter | | || | '-----|----' | | '-----|-----' '------|-----' | | '-----|----' | || '-------|------' '-------|-----------------------|-------' '-------|------' || | | | | || .------|---------------------|--------. .---------|----------------------|-----. || () '----Network cable1---' ) () '----Network cable2----' ) || '-------------------------------------' '--------------------------------------' || || Mekanisme routing ini intinya menghubungkan 2 system segmen network yg berbeda,lain || halnya dgn mekanisme bridge, dimana pada bridge segmen yg dihubungkan tidaklah harus || berbeda (satu segmen). Dan jika diperhatikan dari gambar maka ciri utama router adalah || memiliki minimal 2 buah Network adapter dan minimal 2 buah IP yang berbeda segmen. || || >> IRP & ERP (In/Exterior Routing Protocol) || Masih dalam bahasan routing, Di Internet ini terdiri dari ribuan AS (Autonomous || System), setiap AS memiliki mekanisme pertukaran dan pengumpulan informasi routing || sendiri. Protokol yg digunakan untuk bertukar informasi routing "dalam" AS tersebut || digolongkan sebagai IRP (Interior Routing Protocol), sedangkan yg digunakan untuk || bertukar informasi routing "antar" AS digolongkan sebagai ERP (Exterior Routing || Protocol). || IRP yg dijadikan standar di Internet hingga saat ini adalah RIP (Routing || Information Protocol) dan OSPF (Open Shortest Path First). Selain 2 protokol ini || terdapat juga protokol lainnya yg bersifat proprietary dan banyak digunakan pula di || Internet, yaitu IGRP (Internet Gateway Routing Protocol) yg kemudian diperluas || menjadi EIGRP (Extended IGRP) dari cisco system. || >> RIP (Routing Information Protocol) || Pada intinya Protokol routing ini mengimplementasikan algoritma distance-vector || pada penentuan jalurnya. Pada waktu tertentu router yg menggunakan distance- || vector ini akan mengirimkan informasi lokal distance dan vector ke semua link || yg terhubung langsung dengannya, dan link yg menerima informasi tersebut || menambahkan distance-vector dengan metric link tempat informasi tersebut || diterima, kemudian memasukkannya ke dalam forwarding table jika dianggap || merupakan jalur terbaik. Pengertian distance-vector bisa dilihat pada gambar || dibawah. || || .---. .---. .---. .---. || ----V----| A |-------W------| B |-------X------| C |-------Y-------| D |-----Z---- || '---' '---' '---' '---' || || Router A hanya mengenal network V dan W, begitu pula router B yg hanya mengenal || network W dan X. Masing2 router memberikan informasi distance-vector ke router2 || yg berhubungan langsung. distance = cost, dan vector = jalur. Sehingga dapat || digambarkan ke tabel berkut. || .----------------.----------------.----------------.----------------. || | Router A | Router B | Router C | Router D | || |----------------|----------------|----------------|----------------| || | Net V = 1 hop | Net V = 2 hop | Net V = 3 hop | Net v = 4 hop | || | Net W = 1 hop | Net W = 1 hop | Net W = 2 hop | Net W = 3 hop | || | Net X = 2 hop | Net X = 1 hop | Net X = 1 hop | Net X = 2 hop | || | Net Y = 3 hop | Net Y = 2 hop | Net Y = 1 hop | Net Y = 1 hop | || | Net Z = 4 hop | Net Z = 3 hop | Net Z = 2 hop | Net Z = 1 hop | || '----------------'----------------'----------------'----------------' || || Distance Vector routing mempunyai prinsip2 berikut: || * Router mengirim update hanya kepada router tetangganya || * Router mengirim semua routing table yang diketahuinya kepada router || tetangganya || * Table ini dikirim dengan interval waktu tertentu, dimana setiap router || dikonfigurasi dengan interval update masing2 || * Router memodifikasi tabelnya berdasarkan informasi yang diterima dari router || tetangganya. || || Protokol ini memiliki kelemahan yg terlhat apabila dalam jaringan ada link yg || terputus, ada beberapa efek yg dapat terjadi diantaranya: || - Bouncing effect || Efek bouncing terjadi pada jaringan yg memiliki metric berbeda, sehingga jika || link terputus dapat menyebabkan routing loop (berputar2 antara 2 router) || hingga TTL (Time To Live) datagram habis. || || .---. || | X | X = Tujuan || /---\ || / \ || Link terputus ____/__ \_ || / |_| || cost=1 / \_ cost=3 || / |_| || / \ || .---/ .---. \---. || | C |------| A |-------| B | || '---' '---' '---' || ----> <---- || X,2 X,4 || || Gambar diatas menggambarkan kondisi terjadinya bounce effect. || * Koneksi C dengan X terputus. || * Karena update belum dilakukan, C memberi info bahwa cost dirinya ke X || adalah 1 (yg seharusnya adalah tidak ada vector ke X). || * Karena informasi tersebut maka A mengupdate cost untuk koneksi ke X = 2 || melalui C, dan cost menuju X melalui B adalah 4. || * Jika A akan memilih jalur tentunya akan memilih jalur C yg memiliki cost || paling kecil (X,2) dibandingkan jalur B (X,4). || * Ketika paket tiba di C, maka paket akan dikembalikan ke A dikarenakan jalur || terputus A (tidak di drop karena A memiliki jalur ke X meskipun costnya || tinggi). || * A menerima kembali paket yang sama dan tetap akan melewatkan jalur ke X || melalui C dikarenakan cost ke X melalui C tersedia dan lebih kecil || dibandingkan melalui B. || * Dengan kondisi seperti itu router A dan C mengalami kondisi blackhole, dan || paket akan mondar-mandir ke A dan C hingga TTL datagram habis. || || - Count to infinity || Menghitung hingga tak terhingga ini terjadi karena router terlambat || menginformasikan bahwa suatu link terputus. Keterlambatan dapat menyebabkan || router harus mengirim, menerima dan menghitung distance vector hingga batas || maksimum metric distance-vector tercapai. Pada saat menghitung ini terjadi || pula routing loop, bahkan bisa menjadi sangat lama daripada bouncing effect || || .---. C,2 --> .---. || A ke C melalui B | A |----------------------| B | || '-.-' '-.-' || | | || | ____|_____ Link terputus || | | || .-'-. .-'-. || | D | | C | Tujuan || '---' '---' || * A mengetahui bahwa hops untuk ke C melalui B adalah 2 hops || * B terhubung langsung ke C dan mengetahui bahwa link ke C terputus || * Karena B terlambat memberitahukan kepada A bahwa tidak ada jalur ke C, || A memberitahukan terlebih dahulu kepada B bahwa: || - untuk ke C adalah 2 hops || - B akan mempercayai A || * B akan memberitahukan kepada A, bahwa untuk ke C dari A memerlukan 3 hops || * Pada saat ini akan terjadi bounce effect yang berlebihan hingga hops || dihitung tak hingga karena saat TTL datagram habis paket masih melakukan || routing loop (ini disebabkan karena tidak ada sama sekali jalur lain ke C || jika dialihkan ke D) || >> OSPF (Open Shortest Path First) || Protocol ini menggunakan algoritma link-state, kelebihan utama dari protokol || ini adalah dapat dengan cepat mendeteksi perubahan dan mejadikan routing || kembali konvergen dalam waktu singkat dengan sedikit pertukaran data. || Routing ini membentuk peta jaringan dalam tiga tahap, tahap pertama setiap || router mengenali seluruh tetangganya, lalu router saling bertukar informasi dan || router akan menghitung jarak terpendek ke setiap tujuan. Peta jaringanya akan || disimpan dalam basis data sebagai hasil dari pertukaran informasi antar router. || || || mov al,13h || int 10h kritik && saran kirimkan ke voidnetworklabs[at]gmail[dot]com