Selasa, 18 Januari 2011

Pengenalan dan Cara Kerja RIP


Routing Information Protocol atau yang dikenal RIP adalah dinamik routing protokol yang sudah cukup tua. Di ciptakan sekitar tahun 1970.
Cara kerjanya berdasarkan Distance Vector Routing Protocol, yang berarti akan mempergunakan pendekatan berapa banyak hop (lompatan) router yang akan ditempuh untuk mencapai suatu network. Dan yang akan dipilih adalah hop terpendek.
Cara Kerja

RIP bekerja dengan menginformasikan status network yang dipegang secara langsung kepada router tetangganya.

Karakteristik dari RIP:

* Distance vector routing protocol
* Hop count sebagi metric untuk memilih rute
* Maximum hop count 15, hop ke 16 dianggap unreachable
* Secara default routing update 30 detik sekali
* RIPv1 (classfull routing protocol) tidak mengirimkan subnet mask pada update
* RIPv2 (classless routing protocol) mengirimkan subnet mask pada update

Satu hal yang perlu diperhatikan adalah RIP zebra secara default mempergunakan versi 2, sedangkan Cisco versi 1.
Konfigurasi

Sama halnya dengan zebra, daemon rip dapat dikonfigur lewat 2 cara.

Konfigurasi dengan 2 cara :

1. edit langsung pada file ripd.conf

root@opera zebra# vi ripd.conf
root@opera zebra# service ripd restart

2. melalui remote vty
telnet ke port 2602

root@opera zebra# telnet 127.0.0.1 2602
Hello, this is zebra (version 0.94).
Copyright 1996-2002 Kunihiro Ishiguro.

Konfigurasi RIP sangat sederhana, secara umum hanya membutuhkan 3 entri dalam running configurasi.
Masukkan network mempunyai router tetangga RIP dan network yang akan disebarkan ke router tetangga.

ripd(config)# router rip
ripd(config-router)# network 192.168.10.0/24
ripd(config-router)# network 10.168.11.0/24
ripd(config-router)# (tekan ctrl+z)
ripd# write memory (untuk menyimpan kedalam file ripd.conf)

konfigurasi sudah selesai! silakan mencoba semoga berhasil!!

Cara Kerja RIP

Proses RIP beroperasi dari port 520 UDP; semua pesan RIP di enkapsulasi dalam sebuah segment UDP dengan kedua port source dan destination di set 520. RIP mendefinisikan 2 jenis pesan (message): Request messages dan Response messages. Request message digunakan untuk meminta router neighbor mengirimkan update. Response message membawa update. Metric yang digunakan oleh RIP adalah hop count, dengan 1 menandakan network yang terhubung langsung (directly connected) dan 16 menandakan network unreachable.

Pada saat pertama kali aktif, RIP mem-broadcast keluar sebuah paket yang membawa Request message melalui semua interface yang mengenable RIP. Proses RIP kemudian memasuki fase mendengarkan Request RIP atau mengirimkan Response message. Neighbor yang menerima pesan Request akan mengirimkan Response yang berisi tabel routing mereka.

Ketika router yang merequest menerima Response message, router akan memproses informasi yang ada didalamnya. Jika terdapat entri route tertentu yang belum dikenali, maka router akan memasukkannya kedalam tabel routing beserta address dari router yang meng-advertise paket. Jika terdapat entri route yang ternyata sudah ada didalam tabel routing, maka entri yang sudah ada akan digantikan hanya jika entri route yang baru memiliki hop count yang lebih rendah. Jika hop count yang baru lebih tinggi daripada hop count yang telah tersimpan dan paket update berasal dari router next-hop yang tersimpan dalam tabel, maka entri route akan ditandai sebagai unreachable selama waktu yang terdapat dalam holddown period. Jika holddown period telah berakhir dan neighbor yang sama masih tetap meng-advertise entri dengan hop count yang lebih tinggi tersebut, maka metric yang baru (yang lebih tinggi) akan diterima.
RIP Timers and Fitur-Fitur Kestabilan

Setelah startup, router dengan tanpa sebab akan mengirimkan Response message ke semua interface yang mengaktifkan RIP setiap 30 detik. Response message, disebut juga update, berisi seluruh tabel routing dengan pengecualian entri-entri yang ditolak oleh aturan split horizon. Update timer yang menginisiasi periode update ini menyertakan variabel random untuk mencegah terjadinya sinkronisasi. Hasilnya, waktu antara update individu dari proses RIP yang regular berkisar antara 25 sampai 35 detik. Variabel random spesifik yang digunakan oleh Cisco IOS, RIP_JITTER, mengurangi sampai dengan 15 %(4.5 detik) dari waktu update. Karena itu, update dari route Cisco bervariasi antara 25.5 sampai 30 detik. Address destination untuk update adalah address broadcast (255.255.255.255).

Beberapa timer yang lain juga digunakan dalam RIP. Seperti yang dibahas dalam protokol routing distance vector, sebuah timer yang disebut invalidation timer, yang digunakan oleh protokol distance vector digunakan untuk membatasi seberapa lama sebuah entri route dapat berada pada tabel routing tanpa di update. RIP menamakan timer ini sebagai expiration timer atau timeout. Cisco IOS menyebutnya invalid timer. Expiration timer dimulai dari 180 detik saat sebuah entri route baru dimasukkan dan akan di reset pada nilai awal setiap kali ada update yang didapat untuk entri route tersebut. Jika sebuah update untuk entri route tidak pernah diterima dalam waktu 180 detik (6 kali periode update), maka hop count dari entri route tersebut akan di set menjadi 16, yang berarti akan dianggap unreachable.

Timer yang lain, garbage collection atau flush timer, di set sebesar 240 detik, 60 detik lebih lama dari expiration timer, sebuah entri route akan di advertise dengan metric unreachable sampai flush timer ini berakhir, yang kemudian entri route akan dihapus dari tabel routing. Contoh berikut menunjukkan tabel routing yang didalamnya terdapat entri route yang ditandai sebagai unreachable tetapi belum dihapus dari tabel routing.

Mayberry#show ip route
Codes: C – connected, S – static, I – IGRP, R – RIP, M – mobile, B – BGP
D – EIGRP, EX – EIGRP external, O – OSPF, IA – OSPF inter area
E1 – OSPF external type 1, E2 – OSPF external type 2, E – EGP
i – IS-IS, L1 – IS-IS level-1, L2 – IS-IS level-2, * – candidate default
Gateway of last resort is not set
10.0.0.0 255.255.0.0 is subnetted, 4 subnets
C 10.2.0.0 is directly connected, Serial0
R 10.3.0.0 255.255.0.0 is possibly down,
routing via 10.1.1.1, Ethernet0
C 10.1.0.0 is directly connected, Ethernet0
R 10.4.0.0 [120/1] via 10.2.2.2, 00:00:00, Serial0

Timer ketiga yang dimiliki RIP adalah holddown timer. Sebuah update dengan hop count yang lebih besar daripada metric yang tersimpan dalam tabel routing akan menyebabkan entri route mengalami holddown timer selama 180 detika (6 kali periode update).

Timer-timer ini dapat dimanipulasi dengan perintah berikut:

timers basic update invalid holddown flush

Perintah ini mempengaruhi keseluruhan proses RIP. Jika timing dari salah satu router berubah, maka timing dari semua router dalam domain RIP akan berubah. Karena itu, timer-timer ini tidak seharusnya diubah dari nilai defaultnya tanpa alasan yang spesifik.

RIP mengimplementasikan split horizon with poison reverse dan triggered update. Triggered update akan terjadi setiap kali terjadi perubahan pada metric dari sebuah entri route, dan tidak seperti update regular yang terjadwal, trigered update hanya menyertakan entri-entri yang mengalami perubahan saja. Dan juga triggered update tidak menyebabkan router penerima mereset udpate timer; jika tidak, maka perubahan topologi dapat menyebabkan banyak router harus mereset update timer pada saat bersamaan dan hal itu dapat menyebabkan update regular menjadi sinkron. Untuk menghindari seringnya terjadi trigered update setelah terjadi perubahan topologi, digunakanlah sebuah timer lain. Ketika triggered update dikirimkan, maka timer ini secara random di set antara 1 dan 5 detik, dalam rentang waktu ini, triggered update yang lain tidak boleh dikirimkan.

Beberapa host boleh saja menjalankan RIP dalam mode “silent“. Dinamakan demikian karena host tersebut tidak mengirimkan update RIP, tetapi selalu mendengarkan update-update RIP dan mengupdate tabel routing mereka berdasarkan pesan yang diterima. Misalnya, mesin unix yang menggunakan routed dengan parameter -q berarti mengaktifkan RIP dalam mode silent.
Format RIP Message

Format RIP message ditunjukkan pada gambar dibawah ini. Setiap message berisi perintah dan nomor versi dan dapat juga berisi entri-entri sampai dengan 25 entri route. Setiap entri route menyertakan IP address yang dapat dijangkau oleh route, dan hop count untuk entri route tersebut. Jika sebuah router harus mengirimkan update yang berisi lebih dari 25 entri route, maka router tersebut harus membuat RIP message lebih banyak. Ukuran inisial message sebesar 4 octet, dan setiap entri route sebesar 20 octet. Karena itu, ukuran maksimum RIP message adalah 4+(25×20)=504 octet. Jika termasuk 8-byte header UDP maka ukuran message jadi sebesar 512 octet (tidak termasuk IP header).

Command akan selalu di set 1 yang menandakan Request message, atau 2, yang menandakan Response message.

Version akan di set 1 untuk RIP versi 1.

Address Family Identifier di set 2 untuk IP. Satu-satunya pengecualian untuk field ini adalah request untuk tabel routing penuh sebuah router.

IP Address adalah address destination dari sebuah entri route. Entri ini dapat berupa address major network, sebuah subnet, atau host.

Metric adalah hop count yang akan di set antara 1 sampai 16.
Tipe Request Message

Request message RIP dapat merequest keseluruhan tabel routing atau informasi untuk entri route spesifik. Untuk kasus pertama, Request message akan memiliki entri route tunggal yang didalamnya berisi address di set nol, (0.0.0.0) dan metric 16. Mesin yang menerima request seperti ini akan memberikan tanggapan dengan cara mengirimkan pesan unicast yang berisi seluruh tabel routing kepada mesin yang merequest, kecuali entri route yang dibatasi oleh split horizon dan boundary summarization.

Beberapa proses diagnostik bisa saja membutuhkan informasi spesifik tentang sebuah atau beberapa route. Dalam kasus seperti ini, Request message akan dikirimkan dengan entri yang berisi address yang dibutuhkan. Mesin yang menerima request ini akan memproses entri-entri satu persatu, kemudian membuat Response message berdasarkan request. Jika mesin/router memiliki entri pada tabel routing yang bersesuaian dengan address yang di request, maka router akan memasukkan metric untuk entri routenya kedalam field metric. Jika tidak, maka field metric akan di set 16. Response akan memberitahukan apa yang persisnya diketahui oleh router, dengan tanpa mempertimbangkan split horizon ataupun boundary summarization.

Seperti yang telah disebutkan diatas, host/mesin bisa saja menjalankan RIP dalam mode silent. Pendekatan ini memungkinkan mesin tersebut untuk tetap menjaga tabel routing nya tetap up-to-date dengan cara mendengarkan setiap pesan update RIP dari router-router lain tanpa harus mengirimkan Response message kedalam network. Akan tetapi, untuk proses diagnostika, kemungkinan akan dibutuhkan untuk memeriksa tabel routing yang ada pada mesin silent tersebut. Karena itu RFC 1058 menetapkan bahwa jika sebuah mesin silent menerima request dari port UDP yang bukan standard 520, maka host harus memberikan response.
Classful Routing

MtPilate#show ip route
Codes: C – connected, S – static, I – IGRP, R – RIP, M – mobile, B – BGP
D – EIGRP, EX – EIGRP external, O – OSPF, IA – OSPF inter area
E1 – OSPF external type 1, E2 – OSPF external type 2, E – EGP
i – IS-IS, L1 – IS-IS level-1, L2 – IS-IS level-2, * – candidate default
Gateway of last resort is not set
10.0.0.0 255.255.0.0 is subnetted, 9 subnets
R 10.10.0.0 [120/3] via 10.5.5.1, 00:00:20, Serial1
[120/3] via 10.1.1.1, 00:00:21, Ethernet0
R 10.11.0.0 [120/3] via 10.5.5.1, 00:00:21, Serial1
[120/3] via 10.1.1.1, 00:00:21, Ethernet0
R 10.8.0.0 [120/2] via 10.1.1.1, 00:00:21, Ethernet0
[120/2] via 10.5.5.1, 00:00:21, Serial1
R 10.9.0.0 [120/2] via 10.5.5.1, 00:00:21, Serial1
[120/2] via 10.1.1.1, 00:00:21, Ethernet0
R 10.3.0.0 [120/1] via 10.1.1.1, 00:00:21, Ethernet0
[120/1] via 10.5.5.1, 00:00:21, Serial1
C 10.1.0.0 is directly connected, Ethernet0
R 10.6.0.0 [120/1] via 10.1.1.1, 00:00:21, Ethernet0
[120/1] via 10.5.5.1, 00:00:22, Serial1
R 10.7.0.0 [120/2] via 10.1.1.1, 00:00:22, Ethernet0
[120/2] via 10.5.5.1, 00:00:22, Serial1
C 10.5.0.0 is directly connected, Serial1
172.25.0.0 255.255.255.0 is subnetted, 3 subnets
R 172.25.153.0 [120/1] via 172.25.15.2, 00:00:03, Serial0
R 172.25.131.0 [120/1] via 172.25.15.2, 00:00:03, Serial0

C 172.25.15.0 is directly connected, Serial0

Ketika sebuah paket diterima oleh router yang menjalankan RIP dan router memeriksa tabel routing, maka akan ada banyak kemungkinan entri yang dieliminasi sehingga tinggal 1 entri route tunggal yang mencocoki dengan paket. Pertama, porsi network dari address destination pada paket dibaca dan tabel routing diperiksa untuk mencari entri yang mencocoki dengan porsi network tadi. Itu adalah langkah pertama untuk membaca angka network major kelas A,B, atau C yang mendefinisikan pencarian tabel untuk entri classful. Jika tidak ada entri yang cocok dengan major network tersebut maka paket akan di drop dan pesan ICMP Destination Unreachable akan dikirimkan kepada pengirim paket. Jika terdapat entri yang cocok dengan porsi network, maka subnet-subnet untuk major network tersebut akan didaftar dan diperiksa. Jika terdapat yang mencocoki maka paket akan diforwardkan. Jika tidak, paket akan di drop dan ICMP Destination Unreachable akan dikirimkan.
Classful Routing: Subnet-Subnet yang terhubung langsung (Directly Connected)

Pencarian entri route classful dapat digambarkan dengan 3 contoh berikut (berdasarkan pada tabel routing diatas):

1. Jika sebuah paket dengan address destination 192.168.35.3 diterima oleh sebuah router, maka tidak ditemukan major network 192.168.35.0 didalam tabel routing, dan paket akan di drop.
2. Jika sebuah paket dengan address destination 172.25.33.89 diterima oleh router, maka paket tersebut mencocoki dengan sebuah entri pada network kelas B 172.25.0.0/24. Subnet-subnet untuk major network ini akan di periksa; tidak terdapat subnet untuk 172.25.33.0 yang mencocoki, maka paket akan di drop.
3. Terakhir, sebuah paket yang ditujukan untuk 172.25.153.220 diterima oleh router. Kali ini paket mencocoki network 172.25.0.0/24 dan terdapat subnet yang mencocoki yakni 172.25.153.0, karena itu paket akan di forward ke address next-hop 172.25.15.2

Dari gambar format RIP message diatas dapat diketahui bahwa tidak ada ketentuan bagi RIP untuk mengadvertise subnet mask yang disertakan pada entri route. Maka, tidak ada mask yang bersesuaian dengan subnet-subnet yang terdapat pada tabel routing. Karena itu, jika sebuah router yang memiliki tabel routing seperti diatas menerima paket dengan address destination 172.25.131.23, maka router tidak mengetahui cara untuk menentukan bagian-bagian subnet bit dan host bit, atau bahkan tidak dapat mengetahui apakah address di subnet atau tidak.

Hal yang dilakukan oleh router adalah mengasumsikan bahwa mask yang dikonfigurasi pada interface yang terhubung pada network 172.25.0.0 digunakan secara konsisten dalam seluruh network. Router akan menggunakan mask-nya sendiri untuk network 172.125.0.0 untuk memperoleh subnet dari address destination. Karena hal inilah, semua subnet mask dibawah major network harus konsisten.
Classful Routing: Ringkasan

Karakteristik dari protokol routing classful adalah ia tidak mengadvertise subnet mask address. Karena itu protokol routing classful pertama kali harus mencocoki porsi network major kelas A,B, atau C dari address destination. Untuk setiap paket yang memasuki router.

1. Jika address destination termasuk anggota dari major network yang terhubung langsung, maka subnet mask yang dikonfigurasi pada interface yang terhubung pada network tersebut akan digunakan untuk menentukan subnet dari address destination. Karena itu, subnet mask yang sama harus digunakan untuk seluruh major network tersebut.
2. Jika address destination bukan anggota dari major network yang terhubung langsung, maka router akan berusaha mencocokkan hanya porsi major kelas A,B,atau C dari address destination.

Tidak ada komentar:

Posting Komentar

satu jiwa