Subnet mask adalah istilah teknologi informasi dalam bahasa
Inggris yang mengacu kepada angka biner 32 bit yang digunakan untuk membedakan
network ID dengan host ID, menunjukkan letak suatu host, apakah berada di
jaringan lokal atau jaringan luar.
Sebuah subnet mask biasanya diekspresikan di dalam notasi desimal bertitik (dotted decimal notation), seperti halnya alamat IP. Setelah semua bit diset sebagai bagian network identifier dan host identifier, hasil nilai 32-bit tersebut akan dikonversikan ke notasi desimal bertitik. Perlu dicatat, bahwa meskipun direpresentasikan sebagai notasi desimal bertitik, subnet mask bukanlah sebuah alamat IP.
Subnet mask default dibuat berdasarkan kelas-kelas alamat IP dan digunakan di dalam jaringan TCP/IP yang tidak dibagi ke alam beberapa subnet. Tabel di bawah ini menyebutkan beberapa subnet mask default dengan menggunakan notasi desimal bertitik.
Gateway adalah komputer yang memiliki minimal 2 buah network interface untuk menghubungkan 2 buah jaringan atau lebih. Di Internet suatu alamat bisa ditempuh lewat gateway-gateway yang memberikan jalan/rute ke arah mana yang harus dilalui supaya paket data sampai ke tujuan. Kebanyakan gateway menjalankan routing daemon (program yang meng-update secara dinamis tabel routing). Karena itu gateway juga biasanya berfungsi sebagai router. Gateway/router bisa berbentuk Router box seperti yang di produksi Cisco, 3COM, dll atau bisa juga berupa komputer yang menjalankan Network Operating System plus routing daemon. Misalkan PC yang dipasang Unix FreeBSD dan menjalankan program Routed atau Gated. Namun dalam pemakaian Natd, routing daemon tidak perlu dijalankan, jadi cukup dipasang gateway saja.
Karena gateway/router mengatur lalu lintas paket data antar jaringan, maka di dalamnya bisa dipasangi mekanisme pembatasan atau pengamanan (filtering) paket-paket data. Mekanisme ini disebut Firewall.
Sebenarnya Firewall adalah suatu program yang dijalankan di gateway/router yang bertugas memeriksa setiap paket data yang lewat kemudian membandingkannya dengan rule yang diterapkan dan akhirnya memutuskan apakah paket data tersebut boleh diteruskan atau ditolak. Tujuan dasarnya adalah sebagai security yang melindungi jaringan internal dari ancaman dari luar. Namun dalam tulisan ini Firewall digunakan sebagai basis untuk menjalankan Network Address Translation (NAT).
Dalam FreeBSD, program yang dijalankan sebagai Firewall adalah ipfw. Sebelum dapat menjalankan ipfw, kernel GENERIC harus dimodifikasi supaya mendukung fungsi firewall. Ipfw mengatur lalu lintas paket data berdasarkan IP asal, IP tujuan, nomor port, dan jenis protocol. Untuk menjalankan NAT, option IPDIVERT harus diaktifkan dalam kernel.
DIVERT (mekanisme diversi paket kernel)
Socket divert sebenarnya sama saja dengan socket IP biasa, kecuali bahwa socket divert bisa di bind ke port divert khusus lewat bind system call. IP address dalam bind tidak diperhatikan, hanya nomor port-nya yang diperhatikan. Sebuah socket divert yang dibind ke port divert akan menerima semua paket yang didiversikan pada port tersebut oleh mekanisme di kernel yang dijalankan oleh implementasi filtering dan program ipfw. Mekanisme ini yang dimanfaatkan nantinya oleh Network Address Translator.
Domain Name System (DNS) adalah distribute database system yang digunakan untuk pencarian nama komputer (name resolution) di jaringan yang mengunakan TCP/IP (Transmission Control Protocol/Internet Protocol). DNS biasa digunakan pada aplikasi yang terhubung ke Internet seperti web browser atau e-mail, dimana DNS membantu memetakan host name sebuah komputer ke IP address.
DNS dapat disamakan fungsinya dengan buku telepon. Dimana setiap komputer di jaringan Internet memiliki host name (nama komputer) dan Internet Protocol (IP) address. Secara umum, setiap client yang akan mengkoneksikan komputer yang satu ke komputer yang lain, akan menggunakan host name. Lalu komputer anda akan menghubungi DNS server untuk mencek host name yang anda minta tersebut berapa IP address-nya. IP address ini yang digunakan untuk mengkoneksikan komputer anda dengan komputer lainnya.
Sebuah subnet mask biasanya diekspresikan di dalam notasi desimal bertitik (dotted decimal notation), seperti halnya alamat IP. Setelah semua bit diset sebagai bagian network identifier dan host identifier, hasil nilai 32-bit tersebut akan dikonversikan ke notasi desimal bertitik. Perlu dicatat, bahwa meskipun direpresentasikan sebagai notasi desimal bertitik, subnet mask bukanlah sebuah alamat IP.
Subnet mask default dibuat berdasarkan kelas-kelas alamat IP dan digunakan di dalam jaringan TCP/IP yang tidak dibagi ke alam beberapa subnet. Tabel di bawah ini menyebutkan beberapa subnet mask default dengan menggunakan notasi desimal bertitik.
Gateway adalah komputer yang memiliki minimal 2 buah network interface untuk menghubungkan 2 buah jaringan atau lebih. Di Internet suatu alamat bisa ditempuh lewat gateway-gateway yang memberikan jalan/rute ke arah mana yang harus dilalui supaya paket data sampai ke tujuan. Kebanyakan gateway menjalankan routing daemon (program yang meng-update secara dinamis tabel routing). Karena itu gateway juga biasanya berfungsi sebagai router. Gateway/router bisa berbentuk Router box seperti yang di produksi Cisco, 3COM, dll atau bisa juga berupa komputer yang menjalankan Network Operating System plus routing daemon. Misalkan PC yang dipasang Unix FreeBSD dan menjalankan program Routed atau Gated. Namun dalam pemakaian Natd, routing daemon tidak perlu dijalankan, jadi cukup dipasang gateway saja.
Karena gateway/router mengatur lalu lintas paket data antar jaringan, maka di dalamnya bisa dipasangi mekanisme pembatasan atau pengamanan (filtering) paket-paket data. Mekanisme ini disebut Firewall.
Sebenarnya Firewall adalah suatu program yang dijalankan di gateway/router yang bertugas memeriksa setiap paket data yang lewat kemudian membandingkannya dengan rule yang diterapkan dan akhirnya memutuskan apakah paket data tersebut boleh diteruskan atau ditolak. Tujuan dasarnya adalah sebagai security yang melindungi jaringan internal dari ancaman dari luar. Namun dalam tulisan ini Firewall digunakan sebagai basis untuk menjalankan Network Address Translation (NAT).
Dalam FreeBSD, program yang dijalankan sebagai Firewall adalah ipfw. Sebelum dapat menjalankan ipfw, kernel GENERIC harus dimodifikasi supaya mendukung fungsi firewall. Ipfw mengatur lalu lintas paket data berdasarkan IP asal, IP tujuan, nomor port, dan jenis protocol. Untuk menjalankan NAT, option IPDIVERT harus diaktifkan dalam kernel.
DIVERT (mekanisme diversi paket kernel)
Socket divert sebenarnya sama saja dengan socket IP biasa, kecuali bahwa socket divert bisa di bind ke port divert khusus lewat bind system call. IP address dalam bind tidak diperhatikan, hanya nomor port-nya yang diperhatikan. Sebuah socket divert yang dibind ke port divert akan menerima semua paket yang didiversikan pada port tersebut oleh mekanisme di kernel yang dijalankan oleh implementasi filtering dan program ipfw. Mekanisme ini yang dimanfaatkan nantinya oleh Network Address Translator.
Domain Name System (DNS) adalah distribute database system yang digunakan untuk pencarian nama komputer (name resolution) di jaringan yang mengunakan TCP/IP (Transmission Control Protocol/Internet Protocol). DNS biasa digunakan pada aplikasi yang terhubung ke Internet seperti web browser atau e-mail, dimana DNS membantu memetakan host name sebuah komputer ke IP address.
DNS dapat disamakan fungsinya dengan buku telepon. Dimana setiap komputer di jaringan Internet memiliki host name (nama komputer) dan Internet Protocol (IP) address. Secara umum, setiap client yang akan mengkoneksikan komputer yang satu ke komputer yang lain, akan menggunakan host name. Lalu komputer anda akan menghubungi DNS server untuk mencek host name yang anda minta tersebut berapa IP address-nya. IP address ini yang digunakan untuk mengkoneksikan komputer anda dengan komputer lainnya.
#cara menghitung :
Subnet
mask adalah istilah teknologi informasi dalam bahasa Inggris yang mengacu
kepada angka biner 32 bit yang digunakan untuk membedakan network ID dengan
host ID, menunjukkan letak suatu host, apakah berada di jaringan lokal atau
jaringan luar.
RFC
950 mendefinisikan penggunaan sebuah subnet mask yang disebut juga sebagai
sebuah address mask sebagai sebuah nilai 32-bit yang digunakan untuk membedakan
network identifier dari host identifier di dalam sebuah alamat IP. Bit-bit
subnet mask yang didefinisikan, adalah sebagai berikut:
- Semua bit yang ditujukan agar digunakan oleh network identifier diset ke nilai 1.
- Semua bit yang ditujukan agar digunakan oleh host identifier diset ke nilai 0.
Setiap
host di dalam sebuah jaringan yang menggunakan TCP/IP membutuhkan sebuah subnet
mask meskipun berada di dalam sebuah jaringan dengan satu segmen saja. Entah
itu subnet mask default (yang digunakan ketika memakai network identifier
berbasis kelas) ataupun subnet mask yang dikustomisasi (yang digunakan ketika
membuat sebuah subnet atau supernet) harus dikonfigurasikan di dalam setiap
node TCP/IP.
Misalkan
anda memiliki IP adress 192.168.10.0 dan Subnet mask 255.255.255.128
Ubah angka 128 ke bilangan biner
dengan cara sebagai berikut
128 : 2 = 64 sisa 0
64 : 2 = 32 sisa 0
32 : 2 = 16 sisa 0
16 : 2 = 8 sisa 0
8 : 2 = 4 sisa 0
4 : 2 = 2 sisa 0
2 : 2 = 1 Sisa 0
64 : 2 = 32 sisa 0
32 : 2 = 16 sisa 0
16 : 2 = 8 sisa 0
8 : 2 = 4 sisa 0
4 : 2 = 2 sisa 0
2 : 2 = 1 Sisa 0
Hasil
akhir 1 tidak dapat dibagi menjadi 1
hasil bilangan binernya adalah 10000000
hasil bilangan binernya adalah 10000000
Banyaknya
subnet yang tersedia dari rumus 2^x
X adalah jumlah dari angka 1, karena berdasarkan angka binner yang ada jumlah 1=1
maka 2^1 = 2 maka jumlah subnet maksnya adalah 2
X adalah jumlah dari angka 1, karena berdasarkan angka binner yang ada jumlah 1=1
maka 2^1 = 2 maka jumlah subnet maksnya adalah 2
Nah
sekarang kita harus tau bila tersedia hanya 2 subnet maks maka kita harus
mencari berapa subnet maks tersebut?
Dari
Subnet maks yang terbesar adalah 256 maka dihasilkan 256 – 128 = 128.
Maka subnet masknya adalah 0 dan 128
Maka subnet masknya adalah 0 dan 128
Contoh lain, bila ditetapkan subnet
masknya 255.255.255.192
Jumlah subnet maks dapt dihitung
Jumlah subnet maks dapt dihitung
192 : 2 = 96 sisa 0
96 : 2 = 48 sisa 0
48 : 2 = 24 sisa 0
24 : 2 = 12 sisa 0
12 : 2 = 6 sisa 0
6 : 2 = 3 sisa 0
3 : 2 = 1 sisa 1
maka bilangan binnernya adalah 11000000
karena angka 1 ada 2 maka 2^2 = 4
96 : 2 = 48 sisa 0
48 : 2 = 24 sisa 0
24 : 2 = 12 sisa 0
12 : 2 = 6 sisa 0
6 : 2 = 3 sisa 0
3 : 2 = 1 sisa 1
maka bilangan binnernya adalah 11000000
karena angka 1 ada 2 maka 2^2 = 4
Dan
subnet yang dapat digunakan adalah 256 – 192 = 64, maka Subnetnya adalah 0, 64,
128, 192 artinya subnetnya adalah
255.255.255.0
255.255.255.64
255.255.255.128
255.255.255.192
255.255.255.0
255.255.255.64
255.255.255.128
255.255.255.192
Jumlah
Host per Subnet = 2^y – 2, dimana y adalah adalah kebalikan dari x yaitu
banyaknya binari 0 pada oktet terakhir subnet. Jadi jumlah host per subnet adalah
2^6 – 2 = 62 host
#Setelah
anda membaca artikel Konsep Subnetting dan
memahami konsep Subnetting dengan baik. Kali ini saatnya anda mempelajari
teknik penghitungan subnetting. Penghitungan subnetting bisa dilakukan dengan
dua cara, cara binary yang relatif lambat dan cara khusus yang lebih cepat.
Pada hakekatnya semua pertanyaan tentang subnetting akan berkisar di empat
masalah: Jumlah Subnet, Jumlah Host per Subnet, Blok Subnet, dan Alamat
Host- Broadcast.
Penulisan IP address umumnya adalah
dengan 192.168.1.2. Namun adakalanya ditulis dengan 192.168.1.2/24, apa ini
artinya? Artinya bahwa IP address 192.168.1.2 dengan subnet mask 255.255.255.0.
Lho kok bisa seperti itu? Ya, /24 diambil dari penghitungan bahwa 24 bit subnet
mask diselubung dengan binari 1. Atau dengan kata lain, subnet masknya adalah:
11111111.11111111.11111111.00000000 (255.255.255.0). Konsep ini yang disebut
dengan CIDR (Classless Inter-Domain Routing) yang diperkenalkan pertama kali
tahun 1992 oleh IEFT.
Pertanyaan berikutnya adalah Subnet
Mask berapa saja yang bisa digunakan untuk melakukan subnetting? Ini terjawab
dengan tabel di bawah:
|
|
SUBNETTING PADA IP ADDRESS CLASS C
Ok, sekarang mari langsung latihan
saja. Subnetting seperti apa yang terjadi dengan sebuah NETWORK ADDRESS 192.168.1.0/26 ?
Analisa: 192.168.1.0 berarti kelas C dengan Subnet Mask /26 berarti
11111111.11111111.11111111.11000000 (255.255.255.192).
Penghitungan: Seperti sudah saya sebutkan sebelumnya semua pertanyaan
tentang subnetting akan berpusat di 4 hal, jumlah subnet, jumlah host per
subnet, blok subnet, alamat host dan broadcast yang valid. Jadi kita selesaikan
dengan urutan seperti itu:
- Jumlah Subnet = 2x, dimana x adalah banyaknya binari 1 pada oktet terakhir subnet mask (2 oktet terakhir untuk kelas B, dan 3 oktet terakhir untuk kelas A). Jadi Jumlah Subnet adalah 22 = 4 subnet
- Jumlah Host per Subnet = 2y – 2, dimana y adalah adalah kebalikan dari x yaitu banyaknya binari 0 pada oktet terakhir subnet. Jadi jumlah host per subnet adalah 26 – 2 = 62 host
- Blok Subnet = 256 – 192 (nilai oktet terakhir subnet mask) = 64. Subnet berikutnya adalah 64 + 64 = 128, dan 128+64=192. Jadi subnet lengkapnya adalah 0, 64, 128, 192.
- Bagaimana dengan alamat host dan broadcast yang valid? Kita langsung buat tabelnya. Sebagai catatan, host pertama adalah 1 angka setelah subnet, dan broadcast adalah 1 angka sebelum subnet berikutnya.
Subnet
|
192.168.1.0
|
192.168.1.64
|
192.168.1.128
|
192.168.1.192
|
Host Pertama
|
192.168.1.1
|
192.168.1.65
|
192.168.1.129
|
192.168.1.193
|
Host Terakhir
|
192.168.1.62
|
192.168.1.126
|
192.168.1.190
|
192.168.1.254
|
Broadcast
|
192.168.1.63
|
192.168.1.127
|
192.168.1.191
|
192.168.1.255
|
Kita sudah selesaikan subnetting
untuk IP address Class C. Dan kita bisa melanjutkan lagi untuk subnet mask yang
lain, dengan konsep dan teknik yang sama. Subnet mask yang bisa digunakan untuk
subnetting class C adalah seperti di bawah. Silakan anda coba menghitung
seperti cara diatas untuk subnetmask lainnya.
Subnet Mask
|
Nilai CIDR
|
255.255.255.128
|
/25
|
255.255.255.192
|
/26
|
255.255.255.224
|
/27
|
255.255.255.240
|
/28
|
255.255.255.248
|
/29
|
255.255.255.252
|
/30
|
SUBNETTING PADA IP ADDRESS CLASS B
Berikutnya kita akan mencoba
melakukan subnetting untuk IP address class B. Pertama, subnet mask yang bisa
digunakan untuk subnetting class B adalah seperti dibawah. Sengaja saya
pisahkan jadi dua, blok sebelah kiri dan kanan karena masing-masing berbeda
teknik terutama untuk oktet yang “dimainkan” berdasarkan blok subnetnya. CIDR
/17 sampai /24 caranya sama persis dengan subnetting Class C, hanya blok
subnetnya kita masukkan langsung ke oktet ketiga, bukan seperti Class C yang
“dimainkan” di oktet keempat. Sedangkan CIDR /25 sampai /30 (kelipatan) blok
subnet kita “mainkan” di oktet keempat, tapi setelah selesai oktet ketiga
berjalan maju (coeunter) dari 0, 1, 2, 3, dst.
|
|
Ok, kita coba dua soal untuk kedua
teknik subnetting untuk Class B. Kita mulai dari yang menggunakan subnetmask
dengan CIDR /17 sampai /24. Contoh network address 172.16.0.0/18.
Analisa: 172.16.0.0 berarti kelas B, dengan Subnet Mask /18 berarti
11111111.11111111.11000000.00000000 (255.255.192.0).
Penghitungan:
- Jumlah Subnet = 2x, dimana x adalah banyaknya binari 1 pada 2 oktet terakhir. Jadi Jumlah Subnet adalah 22 = 4 subnet
- Jumlah Host per Subnet = 2y – 2, dimana y adalah adalah kebalikan dari x yaitu banyaknya binari 0 pada 2 oktet terakhir. Jadi jumlah host per subnet adalah 214 – 2 = 16.382 host
- Blok Subnet = 256 – 192 = 64. Subnet berikutnya adalah 64 + 64 = 128, dan 128+64=192. Jadi subnet lengkapnya adalah 0, 64, 128, 192.
- Alamat host dan broadcast yang valid?
Subnet
|
172.16.0.0
|
172.16.64.0
|
172.16.128.0
|
172.16.192.0
|
Host Pertama
|
172.16.0.1
|
172.16.64.1
|
172.16.128.1
|
172.16.192.1
|
Host Terakhir
|
172.16.63.254
|
172.16.127.254
|
172.16.191.254
|
172.16.255.254
|
Broadcast
|
172.16.63.255
|
172.16.127.255
|
172.16.191.255
|
172.16..255.255
|
Berikutnya kita coba satu lagi untuk
Class B khususnya untuk yang menggunakan subnetmask CIDR /25 sampai /30. Contoh
network address 172.16.0.0/25.
Analisa: 172.16.0.0 berarti kelas B, dengan Subnet Mask /25 berarti
11111111.11111111.11111111.10000000 (255.255.255.128).
Penghitungan:
- Jumlah Subnet = 29 = 512 subnet
- Jumlah Host per Subnet = 27 – 2 = 126 host
- Blok Subnet = 256 – 128 = 128. Jadi lengkapnya adalah (0, 128)
- Alamat host dan broadcast yang valid?
Subnet
|
172.16.0.0
|
172.16.0.128
|
172.16.1.0
|
…
|
172.16.255.128
|
Host Pertama
|
172.16.0.1
|
172.16.0.129
|
172.16.1.1
|
…
|
172.16.255.129
|
Host Terakhir
|
172.16.0.126
|
172.16.0.254
|
172.16.1.126
|
…
|
172.16.255.254
|
Broadcast
|
172.16.0.127
|
172.16.0.255
|
172.16.1.127
|
…
|
172.16.255.255
|
Masih bingung juga? Ok sebelum masuk
ke Class A, coba ulangi lagi dari Class C, dan baca pelan-pelan
SUBNETTING PADA IP ADDRESS CLASS A
Kalau sudah mantab dan paham, kita
lanjut ke Class A. Konsepnya semua sama saja. Perbedaannya adalah di OKTET mana
kita mainkan blok subnet. Kalau Class C di oktet ke 4 (terakhir), kelas B di
Oktet 3 dan 4 (2 oktet terakhir), kalau Class A di oktet 2, 3 dan 4 (3 oktet
terakhir). Kemudian subnet mask yang bisa digunakan untuk subnetting class A
adalah semua subnet mask dari CIDR /8 sampai /30.
Kita coba latihan untuk network
address 10.0.0.0/16.
Analisa: 10.0.0.0 berarti kelas A, dengan Subnet Mask /16 berarti
11111111.11111111.00000000.00000000 (255.255.0.0).
Penghitungan:
- Jumlah Subnet = 28 = 256 subnet
- Jumlah Host per Subnet = 216 – 2 = 65534 host
- Blok Subnet = 256 – 255 = 1. Jadi subnet lengkapnya: 0,1,2,3,4, etc.
- Alamat host dan broadcast yang valid?
Subnet
|
10.0.0.0
|
10.1.0.0
|
…
|
10.254.0.0
|
10.255.0.0
|
Host Pertama
|
10.0.0.1
|
10.1.0.1
|
…
|
10.254.0.1
|
10.255.0.1
|
Host Terakhir
|
10.0.255.254
|
10.1.255.254
|
…
|
10.254.255.254
|
10.255.255.254
|
Broadcast
|
10.0.255.255
|
10.1.255.255
|
…
|
10.254.255.255
|
10.255.255.255
|
Mudah-mudahan sudah setelah anda
membaca paragraf terakhir ini, anda sudah memahami penghitungan subnetting
dengan baik. Kalaupun belum paham juga, anda ulangi terus artikel ini
pelan-pelan dari atas. Untuk teknik hapalan subnetting yang lebih cepat, tunggu
di artikel berikutnya
Catatan: Semua penghitungan subnet diatas berasumsikan bahwa IP
Subnet-Zeroes (dan IP Subnet-Ones) dihitung secara default. Buku versi
terbaru Todd Lamle dan juga CCNA setelah 2005 sudah mengakomodasi masalah IP
Subnet-Zeroes (dan IP Subnet-Ones) ini. CCNA pre-2005 tidak memasukkannya
secara default (meskipun di kenyataan kita bisa mengaktifkannya dengan command
ip subnet-zeroes), sehingga mungkin dalam beberapa buku tentang CCNA serta
soal-soal test CNAP, anda masih menemukan rumus