Subnet IP ada untuk memungkinkan router memilih tujuan yang sesuai untuk paket. Anda dapat menggunakan subnet IP untuk memecah jaringan yang lebih besar karena alasan logis (firewall, dll), atau kebutuhan fisik (domain siaran yang lebih kecil, dll).
Sederhananya, router IP menggunakan subnet IP Anda untuk membuat keputusan routing. Pahami cara kerja keputusan itu, dan Anda bisa memahami cara merencanakan subnet IP.
Menghitung 1
Jika Anda sudah lancar dalam notasi biner (basis 2), Anda dapat melewati bagian ini.
Bagi Anda yang tertinggal: Malu pada Anda karena tidak lancar dalam notasi biner!
Ya - itu mungkin agak kasar. Sangat mudah untuk belajar menghitung dalam biner, dan mempelajari cara pintas untuk mengubah biner menjadi desimal dan kembali. Anda benar-benar harus tahu bagaimana melakukannya.
Menghitung dalam biner sangat sederhana karena Anda hanya perlu tahu cara menghitung ke 1!
Pikirkan "odometer" mobil, kecuali bahwa tidak seperti odometer tradisional, setiap digit hanya dapat menghitung hingga 1 dari 0. Ketika mobil baru dari pabrik, odometer berbunyi "00000000".
Saat Anda mengemudi mil pertama Anda, odometer berbunyi "00000001". Sejauh ini bagus.
Ketika Anda mengendarai mil kedua Anda, digit pertama odometer berguling kembali ke "0" (karena nilai maksimumnya adalah "1") dan digit kedua odometer bergulir ke "1", membuat odometer membaca " 00000010 ". Ini terlihat seperti angka 10 dalam notasi desimal, tetapi sebenarnya 2 (jumlah mil yang Anda kendarai sejauh ini) dalam notasi biner.
Saat Anda mengemudi mil ketiga odometer bertuliskan "00000011", karena digit pertama dari odometer berubah lagi. Angka "11", dalam notasi biner, sama dengan angka desimal 3.
Akhirnya, ketika Anda mengendarai mil keempat Anda, kedua digit (yang bertuliskan "1" pada akhir mil ketiga) berguling kembali ke posisi nol, dan digit ketiga menggulung ke posisi "1", memberi kami " 00000100 ". Itu representasi biner dari angka desimal 4.
Anda dapat menghafal semua itu jika Anda mau, tetapi Anda benar-benar hanya perlu memahami bagaimana odometer kecil "berguling" karena jumlah yang dihitungnya semakin besar. Ini persis sama dengan operasi odometer desimal tradisional, kecuali bahwa setiap digit hanya dapat "0" atau "1" pada "biner odometer" fiksi kami.
Untuk mengonversi angka desimal menjadi biner, Anda dapat menggulung odometer ke depan, centang demi centang, menghitung dengan keras sampai Anda menggulirkannya beberapa kali sama dengan angka desimal yang ingin dikonversi menjadi biner. Apa pun yang ditampilkan pada odometer setelah semua couting dan rolling itu akan menjadi representasi biner dari angka desimal yang Anda hitung.
Karena Anda memahami bagaimana odometer berputar ke depan, Anda juga akan memahami bagaimana odometer berputar ke belakang. Untuk mengonversi angka biner yang ditampilkan pada odometer kembali ke desimal, Anda dapat mengembalikan odometer satu per satu, menghitung dengan keras sampai odometer berbunyi "00000000". Ketika semua penghitungan dan pengguliran itu dilakukan, angka terakhir yang Anda ucapkan dengan keras akan menjadi representasi desimal dari angka biner yang diawali dengan odometer.
Mengonversi nilai antara biner dan desimal dengan cara ini akan sangat membosankan. Anda bisa melakukannya, tetapi itu tidak akan sangat efisien. Lebih mudah mempelajari sedikit algoritme untuk melakukannya lebih cepat.
Samping cepat: Setiap digit dalam angka biner dikenal sebagai "bit". Itu "b" dari "binary" dan "it" dari "digit". Bit adalah digit biner.
Mengonversi angka biner seperti, katakanlah, "1101011" menjadi desimal adalah proses sederhana dengan algoritme kecil yang praktis.
Mulailah dengan menghitung jumlah bit dalam angka biner. Dalam hal ini, ada 7. Buat 7 divisi pada selembar kertas (dalam pikiran Anda, dalam file teks, dll) dan mulai mengisinya dari kanan ke kiri. Di slot paling kanan, masukkan angka "1", karena kita akan selalu mulai dengan "1". Di slot berikutnya ke kiri masukkan dua kali lipat nilai dalam slot ke kanan (jadi, "2" di slot berikutnya, "4" di slot berikutnya) dan lanjutkan sampai semua slot penuh. (Anda akan akhirnya menghafal angka-angka ini, yang merupakan kekuatan 2, saat Anda melakukan ini semakin banyak. Saya baik-baik saja hingga 131.072 di kepala saya, tetapi saya biasanya memerlukan kalkulator atau kertas setelah itu).
Jadi, Anda harus memiliki yang berikut di kertas Anda di slot kecil Anda.
64 | 32 | 16 | 8 | 4 | 2 | 1 |
Transkripsikan bit dari nomor biner di bawah slot, seperti:
64 | 32 | 16 | 8 | 4 | 2 | 1 |
1 1 0 1 0 1 1
Sekarang, tambahkan beberapa simbol dan hitung jawaban untuk masalahnya:
64 | 32 | 16 | 8 | 4 | 2 | 1 |
x 1 x 1 x 0 x 1 x 0 x 1 x 1
--- --- --- --- --- --- ---
+ + + + + + =
Melakukan semua perhitungan, Anda harus membuat:
64 | 32 | 16 | 8 | 4 | 2 | 1 |
x 1 x 1 x 0 x 1 x 0 x 1 x 1
--- --- --- --- --- --- ---
64 + 32 + 0 + 8 + 0 + 2 + 1 = 107
Itu dia. "1101011" dalam desimal adalah 107. Itu hanya langkah sederhana dan matematika mudah.
Mengonversi desimal ke biner sama mudahnya dan merupakan algoritma dasar yang sama, dijalankan secara terbalik.
Katakanlah kita ingin mengonversi angka 218 menjadi biner. Mulai di sebelah kanan selembar kertas, tulis angka "1". Di sebelah kiri, gandakan nilai itu (jadi, "2") dan terus bergerak ke kiri kertas menggandakan nilai terakhir. Jika angka yang akan Anda tulis lebih besar dari angka yang dikonversi, berhenti menulis. jika tidak, lanjutkan menggandakan nomor sebelumnya dan menulis. (Mengkonversi angka besar, seperti 34.157.216.092, menjadi biner menggunakan algoritma ini bisa sedikit membosankan tetapi tentu saja mungkin.)
Jadi, Anda harus memiliki di atas kertas Anda:
128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
Anda berhenti menulis angka di 128 karena menggandakan 128, yang akan memberi Anda 256, akan lebih besar dari angka yang dikonversi (218).
Mulai dari angka paling kiri, tulis "218" di atasnya (128) dan tanyakan pada diri sendiri: "Apakah 218 lebih besar atau sama dengan 128?" Jika jawabannya ya, goreskan angka "1" di bawah "128". Di atas "64", tulis hasil 218 minus 128 (90).
Melihat "64", tanyakan pada diri sendiri: "Apakah 90 lebih besar atau sama dengan 64?" Ya, jadi Anda akan menulis "1" di bawah "64", lalu kurangi 64 dari 90 dan tulis di atas "32" (26).
Ketika Anda mencapai "32", Anda menemukan bahwa 32 tidak lebih besar dari atau sama dengan 26. Dalam hal ini, tulis "0" di bawah "32", salin nomor (26) dari di atas 32 "ke atas" 16 "dan kemudian terus bertanya pada diri sendiri pertanyaan yang sama dengan sisa angka.
Setelah selesai, Anda harus memiliki:
218 90 26 26 10 2 2 0
128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
1 1 0 1 1 0 1 0
Angka-angka di atas hanyalah catatan yang digunakan dalam perhitungan dan tidak terlalu berarti bagi kami. Namun di bagian bawah, Anda melihat angka biner "11011010". Benar saja, 218, dikonversi ke biner, adalah "11011010".
Dengan mengikuti prosedur yang sangat sederhana ini, Anda dapat mengonversi biner ke desimal dan kembali lagi dengan kalkulator. Matematika itu sangat sederhana dan aturannya bisa dihafalkan hanya dengan sedikit latihan.
Membagi Alamat
Pikirkan routing IP seperti pengiriman pizza.
Ketika Anda diminta untuk mengirimkan pizza ke "123 Main Street", sangat jelas bagi Anda, sebagai manusia, bahwa Anda ingin pergi ke gedung bernomor "123" di jalan yang bernama "Main Street". Sangat mudah untuk mengetahui bahwa Anda perlu pergi ke 100-blok Main Street karena jumlah bangunan antara 100 dan 199 dan sebagian besar blok kota diberi nomor ratusan. Anda "hanya tahu" cara membagi alamat.
Router mengirimkan paket, bukan pizza. Pekerjaan mereka sama dengan seorang pengemudi pizza: Untuk mendapatkan kargo (paket) sedekat mungkin dengan tujuan. Router terhubung ke dua atau lebih subnet IP (sama sekali berguna). Router harus memeriksa alamat IP tujuan dari paket dan memecah alamat tujuan menjadi komponen "nama jalan" dan "nomor bangunan", seperti driver pizza, untuk membuat keputusan tentang pengiriman.
Setiap komputer (atau "host") pada jaringan IP dikonfigurasikan dengan alamat IP dan subnet mask yang unik. Alamat IP itu dapat dibagi menjadi komponen "nomor gedung" (seperti "123" pada contoh di atas) yang disebut komponen "host ID" dan komponen "nama jalan" (seperti "Jalan Utama" pada contoh di atas) yang disebut "ID jaringan". Untuk mata manusia kita, mudah untuk melihat di mana nomor bangunan dan nama jalan berada di "123 Main Street", tetapi lebih sulit untuk melihat pembagian itu di "10.13.216.41 dengan subnet mask dari 255.255.192.0".
Router IP "hanya tahu" cara membagi alamat IP menjadi bagian-bagian komponen ini untuk membuat keputusan routing. Karena memahami bagaimana paket IP dialihkan bergantung pada pemahaman proses ini, kita juga perlu tahu cara memecah alamat IP. Untungnya, mengekstraksi ID host dan ID jaringan dari alamat IP dan subnet mask sebenarnya cukup mudah.
Mulailah dengan menuliskan alamat IP dalam biner (gunakan kalkulator jika Anda belum belajar melakukan ini di kepala Anda dulu, tetapi buat catatan pelajari bagaimana melakukannya - itu benar-benar mudah dan mengesankan lawan jenis di Para Pihak):
10. 13. 216. 41
00001010.00001101.11011000.00101001
Tulis juga subnet mask dalam biner:
255. 255. 192. 0
11111111.11111111.11000000.00000000
Ditulis berdampingan, Anda dapat melihat titik di subnet mask tempat "1" berhenti "berbaris" ke titik di alamat IP. Itulah titik yang memisahkan ID jaringan dan ID host. Jadi, dalam hal ini:
10. 13. 216. 41
00001010.00001101.11011000.00101001 - IP address
11111111.11111111.11000000.00000000 - subnet mask
00001010.00001101.11000000.00000000 - Portion of IP address covered by 1's in subnet mask, remaining bits set to 0
00000000.00000000.00011000.00101001 - Portion of IP address covered by 0's in subnet mask, remaining bits set to 0
Router menggunakan subnet mask untuk "menutupi" bit yang dicakup oleh 1 di alamat IP (mengganti bit yang tidak "ditutup" dengan 0) untuk mengekstrak ID jaringan:
10. 13. 192. 0
00001010.00001101.11000000.00000000 - Network ID
Demikian juga, dengan menggunakan subnet mask untuk "menutupi" bit yang ditutupi oleh 0 di alamat IP (mengganti bit yang tidak "ditutup" dengan 0 lagi) router dapat mengekstraksi host ID:
0. 0. 24. 41
00000000.00000000.00011000.00101001 - Portion of IP address covered by 0's in subnet mask, remaining bits set to 0
Tidak mudah bagi mata manusia kita untuk melihat "jeda" antara ID jaringan dan ID host seperti halnya antara "nomor gedung" dan "nama jalan" dalam alamat fisik selama pengiriman pizza, tetapi efek utamanya adalah sama.
Sekarang Anda dapat membagi alamat IP dan subnet mask menjadi ID host dan ID jaringan, Anda dapat merutekan IP seperti halnya router.
Terminologi Lainnya
Anda akan melihat topeng subnet ditulis di seluruh Internet dan sepanjang sisa jawaban ini sebagai (IP / nomor). Notasi ini dikenal sebagai notasi "Classless Inter-Domain Routing" (CIDR). "255.255.255.0" terdiri dari 24 bit 1 di awal, dan lebih cepat untuk menuliskannya sebagai "/ 24" daripada "255.255.255.0". Untuk mengonversi angka CIDR (seperti "/ 16") menjadi subnet mask bertitik-desimal, cukup tulis angka 1 itu, pisahkan menjadi kelompok-kelompok 8 bit, dan ubah menjadi desimal. (A "/ 16" adalah "255.255.0.0", misalnya.)
Kembali ke "masa lalu", subnet mask tidak ditentukan, melainkan diturunkan dengan melihat bit alamat IP tertentu. Alamat IP yang dimulai dengan 0 - 127, misalnya, memiliki subnet mask tersirat 255.0.0.0 (disebut alamat IP "kelas A").
Topeng subnet tersirat ini tidak digunakan hari ini dan saya tidak merekomendasikan untuk mempelajarinya lagi kecuali jika Anda memiliki kesialan berurusan dengan peralatan yang sangat lama atau protokol lama (seperti RIPv1) yang tidak mendukung pengalamatan IP tanpa kelas. Saya tidak akan menyebutkan "kelas" alamat ini lebih jauh karena ini tidak dapat diterapkan hari ini dan dapat membingungkan.
Beberapa perangkat menggunakan notasi yang disebut "wildcard mask". "Masker wildcard" tidak lebih dari subnet mask dengan semua 0 di mana akan ada 1, dan 1 di mana akan ada 0. "Topeng wildcard" dari a / 26 adalah:
11111111.11111111.11111111.11000000 - /26 subnet mask
00000000.00000000.00000000.00111111 - /26 "wildcard mask"
Biasanya Anda melihat "topeng karakter" yang digunakan untuk mencocokkan ID host dalam daftar kontrol akses atau aturan firewall. Kami tidak akan membahasnya lebih lanjut di sini.
Bagaimana Router Bekerja
Seperti yang telah saya katakan sebelumnya, router IP memiliki pekerjaan yang mirip dengan driver pengiriman pizza dalam hal mereka perlu mendapatkan kargo (paket) ke tujuannya. Ketika disajikan dengan paket terikat untuk alamat 192.168.10.2, router IP perlu menentukan antarmuka jaringan mana yang terbaik untuk mendapatkan paket itu lebih dekat ke tujuannya.
Katakanlah Anda adalah router IP, dan Anda memiliki antarmuka yang terhubung dengan nomor Anda:
- Ethernet0 - 192.168.20.1, subnet mask / 24
- Ethernet1 - 192.168.10.1, subnet mask / 24
Jika Anda menerima paket untuk dikirimkan dengan alamat tujuan "192.168.10.2", cukup mudah untuk mengetahui (dengan mata manusia Anda) bahwa paket tersebut harus dikirim keluar dari antarmuka Ethernet1, karena alamat antarmuka Ethernet1 sesuai dengan tujuan paket alamat. Semua komputer yang terhubung ke antarmuka Ethernet1 akan memiliki alamat IP yang dimulai dengan "192.168.10.", Karena ID jaringan dari alamat IP yang ditetapkan untuk antarmuka Anda Ethernet1 adalah "192.168.10.0".
Untuk router, proses pemilihan rute ini dilakukan dengan membuat tabel routing dan berkonsultasi dengan tabel setiap kali paket dikirimkan. Tabel perutean berisi ID jaringan dan nama antarmuka tujuan. Anda sudah tahu cara mendapatkan ID jaringan dari alamat IP dan subnet mask, sehingga Anda sedang dalam perjalanan membangun tabel routing. Inilah tabel perutean kami untuk router ini:
- ID Jaringan: 192.168.20.0 (11000000.10101000.00010100.00000000) - 24 bit subnet mask - Antarmuka Ethernet0
- ID Jaringan: 192.168.10.0 (11000000.10101000.00001010.00000000) - 24 bit subnet mask - Antarmuka Ethernet1
Untuk paket masuk kita yang menuju "192.168.10.2", kita hanya perlu mengonversi alamat paket itu menjadi biner (sebagai manusia - router mendapatkannya sebagai biner dari kawat untuk memulai) dan berusaha mencocokkannya dengan setiap alamat dalam perutean kami tabel (hingga jumlah bit dalam subnet mask) hingga kami mencocokkan entri.
- Tujuan paket masuk: 11000000.10101000.00001010.00000010
Membandingkannya dengan entri dalam tabel perutean kami:
11000000.10101000.00001010.00000010 - Destination address for packet
11000000.10101000.00010100.00000000 - Interface Ethernet0
!!!!!!!!.!!!!!!!!.!!!????!.xxxxxxxx - ! indicates matched digits, ? indicates no match, x indicates not checked (beyond subnet mask)
11000000.10101000.00001010.00000010 - Destination address for packet
11000000.10101000.00001010.00000000 - Interface Ethernet1, 24 bit subnet mask
!!!!!!!!.!!!!!!!!.!!!!!!!!.xxxxxxxx - ! indicates matched digits, ? indicates no match, x indicates not checked (beyond subnet mask)
Entri untuk Ethernet0 cocok dengan 19 bit pertama, tetapi kemudian berhenti mencocokkan. Itu berarti itu bukan antarmuka tujuan yang tepat. Anda dapat melihat bahwa antarmuka Ethernet1 cocok dengan 24 bit dari alamat tujuan. Ah, ha! Paket terikat untuk antarmuka Ethernet1.
Dalam router kehidupan nyata, tabel routing diurutkan sedemikian rupa sehingga topeng subnet terpanjang diperiksa untuk pertandingan pertama (yaitu rute yang paling spesifik), dan secara numerik sehingga segera setelah pertandingan ditemukan paket dapat dirutekan dan tidak diperlukan upaya pencocokan lebih lanjut (artinya 192.168.10.0 akan didaftar pertama dan 192.168.20.0 tidak akan pernah diperiksa). Di sini, kami menyederhanakannya sedikit. Struktur dan algoritma data yang bagus membuat router IP lebih cepat, tetapi algoritma yang sederhana akan menghasilkan hasil yang sama.
Rute Statis
Hingga saat ini, kami telah membicarakan router hipotetis kami sebagai memiliki jaringan yang terhubung secara langsung. Jelas, itu bukan cara dunia bekerja. Dalam analogi mengemudi pizza, kadang-kadang pengemudi tidak diizinkan masuk lebih jauh ke dalam gedung daripada di meja depan, dan harus menyerahkan pizza kepada orang lain untuk pengiriman ke penerima akhir (tunda ketidakpercayaan Anda dan tahan bersamaku sementara Saya meregangkan analogi saya,).
Mari kita mulai dengan memanggil router kita dari contoh sebelumnya "Router A". Anda sudah tahu tabel routing RouterA sebagai:
- ID Jaringan: 192.168.20.0 (11000000.10101000.00010100.00000000) - subnet mask / 24 - Antarmuka RouterA-Ethernet0
- ID Jaringan: 192.168.10.0 (11000000.10101000.00001010.00000000) - subnet mask / 24 - Antarmuka RouterA-Ethernet1
Misalkan ada router lain, "Router B", dengan alamat IP 192.168.10.254/24 dan 192.168.30.1/24 yang ditugaskan untuk antarmuka Ethernet0 dan Ethernet1. Ini memiliki tabel routing berikut:
- ID Jaringan: 192.168.10.0 (11000000.10101000.00001010.00000000) - subnet mask / 24 - Antarmuka RouterB-Ethernet0
- ID Jaringan: 192.168.30.0 (11000000.10101000.00011110.00000000) - subnet mask / 24 - Antarmuka RouterB-Ethernet1
Dalam seni ASCII yang cantik, jaringannya terlihat seperti ini:
Interface Interface
Ethernet1 Ethernet1
192.168.10.1/24 192.168.30.254/24
__________ V __________ V
| | V | | V
----| ROUTER A |------- /// -------| ROUTER B |----
^ |__________| ^ |__________|
^ ^
Interface Interface
Ethernet0 Ethernet0
192.168.20.1/24 192.168.10.254/24
Anda dapat melihat bahwa Router B tahu cara "sampai ke" jaringan, 192.168.30.0/24, yang tidak diketahui oleh Router A.
Misalkan PC dengan alamat IP 192.168.20.13 yang terhubung ke jaringan yang terhubung ke antarmuka Ethernet0 router mengirimkan paket ke Router A untuk pengiriman. Paket hipotetis kami ditujukan untuk alamat IP 192.168.30.46, yang merupakan perangkat yang terhubung ke jaringan yang terhubung ke antarmuka Ethernet1 dari Router B.
Dengan tabel perutean yang ditunjukkan di atas, entri di tabel perutean Router A tidak cocok dengan tujuan 192.168.30.46, sehingga Router A akan mengembalikan paket ke PC pengirim dengan pesan "Destination network unreachable".
Untuk membuat Router A "sadar" akan keberadaan jaringan 192.168.30.0/24, kami menambahkan entri berikut ke tabel routing pada Router A:
- ID Jaringan: 192.168.30.0 (11000000.10101000.00011110.00000000) - subnet mask / 24 - Dapat diakses melalui 192.168.10.254
Dengan cara ini, Router A memiliki entri tabel routing yang cocok dengan tujuan 192.168.30.46 dari paket contoh kami. Entri tabel routing ini secara efektif mengatakan "Jika Anda mendapatkan paket terikat untuk 192.168.30.0/24, kirimkan ke 192.168.10.254 karena dia tahu bagaimana menghadapinya." Ini adalah aksi analogi "hand-off the pizza at the front desk" yang saya sebutkan sebelumnya - meneruskan paket itu kepada orang lain yang tahu cara mendekatkannya ke tujuannya.
Menambahkan entri ke tabel routing "dengan tangan" dikenal sebagai menambahkan "rute statis".
Jika Router B ingin mengirimkan paket ke jaringan subnet mask 192.168.20.0 255.255.255.0, ia juga akan memerlukan entri dalam tabel peruteannya:
- ID Jaringan: 192.168.20.0 (11000000.10101000.00010100.0000000000) - subnet mask / 24 - Dapat diakses melalui: 192.168.10.1 (Alamat IP Router A di jaringan 192.168.10.0)
Ini akan membuat jalur untuk pengiriman antara jaringan 192.168.30.0/24 dan jaringan 192.168.20.0/24 di seluruh jaringan 192.168.10.0/24 antara router-router ini.
Anda selalu ingin memastikan bahwa router di kedua sisi "jaringan interstitial" memiliki entri tabel routing untuk jaringan "ujung". Jika router B dalam contoh kita tidak memiliki entri tabel routing untuk jaringan "ujung" 192.168.20.0/24 terpasang ke router A paket hipotetis kita dari PC di 192.168.20.13 akan sampai ke perangkat tujuan di 192.168.30.46, tetapi setiap balasan yang coba dikirim kembali oleh 192.168.30.46 akan dikembalikan oleh router B sebagai "Jaringan tujuan tidak dapat dijangkau." Komunikasi satu arah umumnya tidak diinginkan. Selalu pastikan Anda berpikir tentang lalu lintas yang mengalir di kedua arah ketika Anda berpikir tentang komunikasi di jaringan komputer.
Anda bisa mendapatkan banyak jarak tempuh dari rute statis. Protokol routing dinamis seperti EIGRP, RIP, dll, sebenarnya tidak lebih dari sebuah cara bagi router untuk bertukar informasi routing antara satu sama lain yang, pada kenyataannya, dapat dikonfigurasi dengan rute statis. Satu keuntungan besar untuk menggunakan protokol routing dinamis melalui rute statis, bagaimanapun, adalah bahwa protokol routing dinamis dapat secara dinamis mengubah tabel routing berdasarkan kondisi jaringan (pemanfaatan bandwidth, antarmuka "turun", dll) dan, dengan demikian, menggunakan dinamis protokol routing dapat menghasilkan konfigurasi yang "merutekan" kegagalan atau hambatan dalam infrastruktur jaringan. (Protokol routing dinamis WAY di luar ruang lingkup dari jawaban ini, meskipun.)
Anda Tidak Dapat Dari Sana Dari Sini
Dalam contoh kita Router A, apa yang terjadi ketika paket menuju "172.16.31.92" masuk?
Melihat tabel perutean Router A, baik antarmuka tujuan atau rute statis tidak cocok dengan 24 bit pertama 172.18.31.92 (yaitu 10101100.00010000.00011111.01011100, BTW).
Seperti yang sudah kita ketahui, Router A akan mengembalikan paket ke pengirim melalui pesan "Destination network unreachable".
Katakanlah ada router lain (Router C) yang duduk di alamat "192.168.20.254". Router C memiliki koneksi ke Internet!
Interface Interface Interface
Ethernet1 Ethernet1 Ethernet1
192.168.20.254/24 192.168.10.1/24 192.168.30.254/24
__________ V __________ V __________ V
(( heap o )) | | V | | V | | V
(( internet )) ----| ROUTER C |------- /// -------| ROUTER A |------- /// -------| ROUTER B |----
(( w00t! )) ^ |__________| ^ |__________| ^ |__________|
^ ^ ^
Interface Interface Interface
Ethernet0 Ethernet0 Ethernet0
10.35.1.1/30 192.168.20.1/24 192.168.10.254/24
Alangkah baiknya jika Router A dapat merutekan paket yang tidak cocok dengan antarmuka lokal apa pun hingga Router C sehingga Router C dapat mengirimkannya ke Internet. Masukkan rute "gateway default".
Tambahkan entri di akhir tabel perutean kami seperti ini:
- ID Jaringan: 0.0.0.0 (00000000.00000000.00000000.00000000) - subnet mask / 0 - Router tujuan: 192.168.20.254
Ketika kami mencoba mencocokkan "172.16.31.92" dengan setiap entri dalam tabel routing, kami akhirnya mengenai entri baru ini. Awalnya agak membingungkan. Kami mencari untuk mencocokkan nol bit dari alamat tujuan dengan ... tunggu ... apa? Mencocokkan nol bit? Jadi, kami sama sekali tidak mencari kecocokan. Entri tabel routing ini mengatakan, pada dasarnya, "Jika Anda sampai di sini, daripada menyerah pada pengiriman, kirim paket ke router di 192.168.20.254 dan biarkan dia menanganinya".
192.168.20.254 adalah tujuan yang kami TIDAK tahu cara mengirim paket. Ketika dihadapkan dengan paket terikat untuk tujuan yang kita tidak memiliki entri tabel routing tertentu, entri "default gateway" ini akan selalu cocok (karena cocok dengan nol bit dari alamat tujuan) dan memberi kita tempat "pilihan terakhir" yang kita bisa kirim paket untuk pengiriman. Terkadang Anda akan mendengar gateway default yang disebut "gateway of last resort."
Agar rute gateway default menjadi efektif, ia harus merujuk ke router yang dapat dijangkau menggunakan entri lain dalam tabel routing. Jika Anda mencoba menentukan gateway default 192.168.50.254 di Router A, misalnya, pengiriman ke gateway default akan gagal. 192.168.50.254 bukan alamat yang Router A tahu cara mengirim paket untuk menggunakan salah satu dari rute lain dalam tabel routingnya, sehingga alamat seperti itu tidak akan efektif sebagai gateway default. Ini dapat dinyatakan secara singkat: Gateway default harus ditetapkan ke alamat yang sudah dapat dijangkau dengan menggunakan rute lain di tabel routing.
Router nyata biasanya menyimpan gateway default sebagai rute terakhir dalam tabel peruteannya sehingga cocok dengan paket setelah gagal mencocokkan semua entri lain dalam tabel.
Perencanaan Kota dan Routing IP
Memecah subnet IP menjadi subnet IP yang lebih kecil adalah perencanaan perkotaan. Dalam perencanaan kota, zonasi digunakan untuk beradaptasi dengan fitur alami dari lanskap (sungai, danau, dll), untuk mempengaruhi aliran lalu lintas antara berbagai bagian kota, dan untuk memisahkan berbagai jenis penggunaan lahan (industri, perumahan, dll) . Subnetting IP benar-benar sama.
Ada tiga alasan utama mengapa Anda melakukan subnet jaringan:
Anda mungkin ingin berkomunikasi melalui media komunikasi yang berbeda. Jika Anda memiliki koneksi WAN T1 antara dua gedung, router IP dapat ditempatkan di ujung koneksi ini untuk memfasilitasi komunikasi di seluruh T1. Jaringan di setiap ujung (dan mungkin jaringan "interstitial" pada T1 itu sendiri) akan ditugaskan untuk subnet IP yang unik sehingga router dapat membuat keputusan tentang lalu lintas mana yang harus dikirim melintasi garis T1.
Di jaringan Ethernet, Anda mungkin menggunakan subnetting untuk membatasi jumlah lalu lintas siaran di bagian tertentu dari jaringan. Protokol lapisan aplikasi menggunakan kemampuan broadcast Ethernet untuk tujuan yang sangat berguna. Namun, saat Anda semakin banyak host yang dikemas ke dalam jaringan Ethernet yang sama, persentase lalu lintas siaran pada kabel (atau udara, dalam Ethernet nirkabel) dapat meningkat sedemikian rupa sehingga menimbulkan masalah untuk pengiriman lalu lintas non-siaran. (Di masa lalu, lalu lintas siaran dapat membanjiri CPU host dengan memaksa mereka untuk memeriksa setiap paket siaran. Itu kurang mungkin hari ini.) Lalu lintas yang berlebihan pada Ethernet yang diaktifkan juga dapat datang dalam bentuk "membanjirnya frame ke tujuan yang tidak diketahui". Kondisi ini disebabkan oleh switch Ethernet yang tidak dapat melacak setiap tujuan di jaringan dan merupakan alasan mengapa jaringan Ethernet yang diaktifkan tidak dapat menskala ke sejumlah host yang tak terbatas. Efek membanjiri frame ke tujuan yang tidak diketahui mirip dengan efek kelebihan lalu lintas siaran, untuk keperluan subnetting.
Anda mungkin ingin "mengawasi" jenis lalu lintas yang mengalir di antara kelompok host yang berbeda. Mungkin Anda memiliki perangkat server cetak dan Anda hanya ingin komputer server antrian cetak untuk mengirim pekerjaan kepada mereka. Dengan membatasi lalu lintas yang diizinkan mengalir ke subnet perangkat server cetak, pengguna tidak dapat mengonfigurasi PC mereka untuk berbicara langsung dengan perangkat server cetak untuk memintas akuntansi cetak. Anda dapat menempatkan perangkat server cetak ke dalam subnet untuk mereka sendiri dan membuat aturan di router atau firewall yang terhubung ke subnet itu untuk mengontrol daftar host yang diizinkan mengirim lalu lintas ke perangkat server cetak. (Baik router dan firewall biasanya dapat membuat keputusan tentang bagaimana atau apakah akan mengirimkan paket berdasarkan sumber dan alamat tujuan paket tersebut. Firewall biasanya merupakan sub-spesies router dengan kepribadian yang obsesif. Mereka bisa sangat, sangat khawatir tentang muatan paket, sedangkan router biasanya mengabaikan muatan dan hanya mengirimkan paket.)
Dalam merencanakan sebuah kota, Anda dapat merencanakan bagaimana jalan saling bersilangan, dan dapat menggunakan jalan belokan, satu arah, dan jalan buntu untuk memengaruhi arus lalu lintas. Anda mungkin ingin Main Street sepanjang 30 blok, dengan masing-masing blok memiliki hingga 99 bangunan. Cukup mudah untuk merencanakan penomoran jalan Anda sehingga setiap blok di Main Street memiliki kisaran nomor jalan yang bertambah 100 untuk setiap blok. Sangat mudah untuk mengetahui "angka awal" di setiap blok selanjutnya.
Dalam merencanakan subnet IP, Anda khawatir dengan membangun jumlah subnet (jalan) yang tepat dengan jumlah ID host yang tersedia (nomor bangunan), dan menggunakan router untuk menghubungkan subnet satu sama lain (persimpangan). Aturan tentang sumber dan alamat tujuan yang diizinkan yang ditentukan dalam router dapat lebih mengontrol aliran lalu lintas. Firewall dapat bertindak seperti polisi lalu lintas yang obsesif.
Untuk keperluan jawaban ini, membangun subnet kami adalah satu-satunya perhatian utama kami. Alih-alih bekerja dalam desimal, seperti yang Anda lakukan dengan perencanaan kota, Anda bekerja dalam biner untuk menggambarkan batas-batas setiap subnet.
Lanjutan: Bagaimana Cara Kerja Subnetting IPv4?
(Ya ... kami mencapai ukuran maksimum jawaban (30000 karakter).)