Pada mode promiscuous setiap node dalam jaringan dapat mendengarkan [overhear] setiap packet yang dikirmkan oleh node tetangganya / node yang masih dalam satu coverage are.
Mode promiscuous dapat digunakan untuk menangkap dan menghitung setiap paket yang diterimanya, berikut akan dijelaskan langkah-langkah bagaimana mengaktifkan/ memodifikasi protocol AODV yang ada pada NS2 .
I. ada tiga file yang akan dimodifikasi untuk mengaktifkan mode promiscuous, yaitu :
- ns-allinone-2.35/ns-2.35/aodv/aodv.cc
- ns-allinone-2.35/ns-2.35/aodv/aodv.h
- ns-allinone-2.35/ns-2.35/tcl/lib/ns-mobilenode.tcl
II. buka file aodv.h, dan lakukan modifikasi seperti berikut ini
#include mac.h class AODV: public Tap, public Agent { public: void tap(const Packet *p); ...... protected: Mac *mac_; ...... }
III. bukan file aodv.cc dan tambah kode seperti pada langkah dibawah ini.
int AODV::command(int argc, const char* const * argv) { ...... else if(argc == 3) { ...... else if (strcmp(argv[1], "install-tap") == 0) { mac_ = (Mac*)TclObject::lookup(argv[2]); if (mac_ == 0) return TCL_ERROR; mac_->installTap(this); return TCL_OK; } } return Agent::command(argc, argv); } void AODV::tap(const Packet *p) { // pada bagian ini dapat dilakukan pemrosesan yg sesuai }
IV. selanjutnya buka file ns-mobilenode.tcl dan tambahkan kode sesuai berikut ini.
Node/MobileNode instproc add-target { agent port } { $self instvar dmux_ imep_ toraDebug_ mac_ ...... # Special processing for AODV set aodvonly [string first "AODV" [$agent info class]] if {$aodvonly != -1 } { $agent if-queue [$self set ifq_(0)] ; # ifq between LL and MAC $agent install-tap $mac_(0) ...... }
V. Implementasi dan penggunaan mode promiscuous bisa dilihat pada blog berikut ini :
http://elmurod.net/index.php/2009/10/24/adding-malicious-node-in-aodv/
#Thesis
No comments:
Post a Comment