Paket Radius
Paket RADIUS memiliki format tertentu yand didefinisikan pada RFC. Dua komponen utama di dalam paket RADIUS adalah:
- code, yang menandakan tipe paket
- Attributes, yang membawa data penting yang digunakan oleh RADIUS
Code
Setiap paket ditandai oleh sebuah code. Field yang berukuran satu octet. Isi dari code ini menentukan karakteristik dan kebutuhan tertentu dari paket. Berikut ini tabel yang bisa digunakan sebagai referensi paket RADIUS:
RADIUS code (decimal) | Tipe Paket | Dikirim oleh |
1 | Access-Request | NAS |
2 | Access-Accept | RADIUS Server |
3 | Access-Reject | RADIUS Server |
4 | Accounting-Request | NAS |
5 | Accounting-Response | RADIUS Server |
11 | Access-Challenge | RADIUS Server |
12 | Status-Server (Experimental) | |
13 | Status-Client (Experimental) | |
255 | Reserved |
Identifier
Octet kedua dari setiap paket yang berisi unique identifier. Dihasilakan oleh client dan digunakan untuk mencocokan requests dan replies. Paket RADIUS dibawa menggunakan connectionless UDP. Hal ini membuat RADIUS untuk mengimplementasikan algoritmanya sendiri untuk pengiriman ulang request dari client. Ketika sebuah client melakukan pengiriman ulang sebuah request ke server server identifier paket akan tetap tidak berubah. Server akan merespon requests dengan mencocokan identifier pada paket response.
Length
Merupakan octet ketiga dan keempat pada datagram. Length menunjukkan sampai dimana data yang berguna di dalam paket berada.
Authenticator
Field yang berisi 16 octets, bentuk berbeda tergantung pada apakah paket adalah sebuah request dari client atau sebuah response dari server. Authenticator juga tergantung pada tipe paket, sebagai contoh Access-Request atau Accounting-Request. Jika merupakan sebuah request, field disebuah sebagai Request Authenticator. Jika sebuah response, field disebut sebagai Response Authenticator.
Isi dari sebuah Request Authenticator adalah nomor acak yang tidak diulang lagi. Isi dari Response Authenticator adalan MD5 hash dari berbagai fields pada paket reply bersama dengan shared secret antara client dan server. Jika request menyertakan attribute User-Password, maka isi dari attribute ini akan dienkripsi. Isi yang telah dienkripsi ini biasanya dihasilkan dengan membuat sebuah MD5 hash dari shared secret yang dikombinasikan dengan authenticator dan kemudian melakukan XOR(exclusive or) pada hasil dengan password user. Inilah mengapa shared secret harus sama pada client dan server dengan maksud untuk dekripsi password user.
Attributes
Sisa dari paket RADISU akan berisi nol atau lebih attribute-attribute, yang disebut sebagai Attribute Value Pairs (AVP). Akhir dari AVP ditunjukkan dengan field panjang paket. Untuk format AVP bisa dilihat disini.
No trackbacks yet.