শীতের সকাল : এক কাপ চা :OSPF(Dynamic Routing)শীতের সময় খেজুরের রস খাওয়া একদম অভ্যাসে পরিণত হয়ে গেছে। এই তো গত শীতের এক সকালে ঘুম থেকে উঠেই খেজুর রসের সন্ধানে বের হয়ে গিয়েছিলাম। কিন্তু কিছু দূর যাওয়ার সাথে সাথেই হাত পা যেন বরফ হয়ে যাচ্ছিল । তাই একটি চায়ের দোকানে দাড়িয়ে চা খাচ্ছিলাম । ঠিক তখনই একজন কৃষক আর শিক্ষক একই দোকানে চা খাচ্ছিলেন। হঠাৎ করে কৃষক লোকটি শিক্ষককে বলে উঠল স্যার “আমার প্রধানমন্ত্রীকে একটি কথা বলা প্রয়োজন।“ কিভাবে আমি প্রধানমন্ত্রীর দেখা করতে পারি! শিক্ষক সাহেব তা শুনে প্রথমে কিছুটা রাগ ভাব করলে পরক্ষণে খুব সুন্দরভাবে বুঝিয়ে দিল যে তোমার মত অনেকেই চায় প্রধানমন্ত্রীর সাথে দেখা করতে। এখন উনি যদি সবার সাথে দেখা করে তাহলে দেশের কথা কখন ভাববে! তাই তোমার যদি কোন কথা থাকে তাহলে তুমি চেয়ারম্যানকে বলতে পার, যদি তোমার কথাটি বলার মতো হয় তাহলো চেয়ারম্যান সাহেব ডিসিকে বলবে । এভাবেই এক সময় তোমার কথাটি প্রধানমন্ত্রীর কাছে পৌছেঁ যাবে। কারণ প্রধানমন্ত্রী এক একজনকে এক একটি এলাকার (এরিয়ার) দায়িত্ব প্রদান করেছে। ঠিক নেটওয়ার্কিং ক্ষেত্রে নেটওয়ার্ক যদি বড় হয় তাহলো ওএসপিএফ নেইওয়ার্কে কতগুলো এরিযাতে ভাগ করে নেয় এবং একটি করে বর্ডার রাউটার রাখে যার মধ্যে একটি এরিয়ার নেটওয়ার্কের সকল তথ্য জমা থাকে । ফলে কোন নির্দিষ্ট এরিয়ার কোন তথ্য প্রয়োজন হলে বর্ডার রাউটার থেকেই জানা যায়।যেহেতু আজকে আমরা ডায়নামিক রাউটিং ওএসপিএফ কনফিগার করব । সেহেতু চলেন ওএসপিএফ নিয়ে কিছুটা জানার চেষ্টা করি ।ওএসপিএফ কি?ওএসপিএফ হলো ওপেন শর্টেস্ট পাথ ফার্স্ট একটি লিঙ্ক স্টেট রাউটিং প্রটোকল যা ওপেন স্ট্যান্ডার্ডের উপর ভিত্তি করে গড়ে উঠেছে। তাই এটি সিসকোসহ অন্যান্য রাউটারেও কাজ করে। ওএসপিএফ ইনটেরিয়র গেটওয়ে প্রটোকল হিসেবে ব্যবহিত হয়ে থাকে ।ওএসপিএফ কিভাবে কাজ করে?ওএসপিএফ ইহা একটি এরিয়া সকল রাউটারের কাছে LSA অ্যাডভার্টাইমেন্ট পাঠায়। এই LSA এর মধ্যে সুংযক্ত ইন্টারফেস এর মান, ম্যাট্রিক্স এর মান এবং অন্যান্য ভেরিয়েবলের এর মান অন্তর্ভুক্ত করা হয় এবং ব্যবহার করে থাকে SPF এলগরিদম । এই এলগরিদম এর মাধ্যমে শর্টেস্ট এবং কম খরচ হয় এই রকম একটি পাথ বাহির করে। এই SPF এলগরিদমেই Dijkstra এলগরিদম নামে পরিচিত।ওএসপিএফ এর বৈশিষ্ট্যসমুহ:- ওএসপিএফ রাউটিং ডোমেইনকে এরিয়াতে বিভক্ত করে।
- কেবল রাউট পরিবর্তনের সময় রাউট আপডেট ঘটে।
- যে রাউট বদলেছে কেবল সেটির তথ্য থাকে এলএসএ(LSA)(লিংক স্টেট অ্যাডভার্টাইমেন্ট) এ।
- প্রতিবেশী গড়ে তোলার জন্য হ্যালো(Hello) মেসেজ বিনিময় করে।
- ওএসপিএফ ভ্যারিয়েবল লেংথ সাবনেট মাস্ক(VLSM) এবং ক্লাসলেস ইন্টার ডোমেইন রাউটিং (CIDR)সাপোর্ট করে।
- ওএসপিএফ অসংখ্য নেটওয়ার্ক হোপ সমর্থন করে।
- ওএসপিএফ এর মাল্টিকাস্ট এড্রেস হলো(২২৪.০.০.৫ এবং ২২৪.০.০.৬)
- ইহায় ব্যবহিত এলগ্যারিদম হলো ডিজেক্সট্রা শর্টেস্ট পাথ ফার্স্ট।
ওএসপিএফ নেটওয়ার্কিং হায়ারার্কিওএসপিএফ এর একটি মজার জিনিস হলো ইহা নেটওয়ার্কে কতগুলো এরিয়াতে ভাগ করে এবং হায়ারার্কি মেইনটেন্ট করে। ফলে একটি এরিয়ার সকল তথ্য এরিয়া বর্ডার রাউটার থেকে সংগ্রহ করে থাকে । নীচের ডায়াগ্রামটি দেখলে আরও সহজেই বোঝতে পারবেন।Area 0 হলো যেখানে Backbone router গুলো থাকে। Area 0 এর সাথে Area border Router গুলো সংযুক্ত থাকে। অন্য কোন রাউটিং ডোমেন এর সাথে সংযুক্ত হওয়ার জন্য Autonomous System border Router ব্যবহার করা হয়।আরেকটি মজার বিষয় হলো টেবিল:ওএসপিএফ তিনটি টেবিল ব্যবহার করে- প্রতিবেশী টেবিল, লিংক স্টেট টেবিল এবং রাউটিং টেবিল। এই তিনটি টেবিলের সমন্বয়ে ওওসপিএফ পুরো নেটওর্য়াকের চিত্র পায়।- প্রতিবেশী টেবিল(Neighbors table):
কোন রাউটারের আসে পাশে কোন রাউটার আছে সে সম্পকির্ত তথ্য থাকে এই টেবিলে।- লিংক স্টেট টেবিল(Link-state table):
প্রতিবেশী রাউটার সমুহের সাথে যুক্ত লিংকসমুহের কোনটির অবস্থা কেমন সে সম্পর্কিত তথ্য রাখা হয় এই টেবিলে।- রাউটিং টেবিল(Routing table):
লিংক স্টেট টেবিলে যেসব লিংকের তথ্য থাকবে সেগুলোর প্রতিটির ব্যয় কত হবে সে সম্পর্কিত তথ্য থাকবে রাউটিং টেবিলে।চলুন এবার একটি নেটওয়ার্ক ডিজাইন করে ওএসপিএফ কনিফগার করিOSPF কনফিগার করার পদ্ধতি১. প্রথমে নেটওয়ার্কটি ডিজাইন করি২. প্রতিটি রাউটারের আলাদা নাম এসাইন করি।৩. প্রত্যেকটি রাউটারে ইন্টারফেসগুলো আপ করি।৪. প্রতিটি রাউটারে OSPF চালু করি।১. প্রথমে নেটওয়ার্কটি ডিজাইন করি২. প্রতিটি রাউটারের আলাদা নাম এসাইন করি।
Dhaka router host name change command lineRouter>enRouter#confRouter#configure terRouter#configure terminalEnter configuration commands, one per line. End with CNTL/Z.Router(config)#hostRouter(config)#hostname DhakaDhaka(config)#exitDhaka#
Comilla router host name change command line
Router>Router>enRouter#confRouter#configure terRouter#configure terminalEnter configuration commands, one per line. End with CNTL/Z.Router(config)#hostRouter(config)#hostname ComillaComilla(config)#exit
Netrakona router hostname change command line
Router>enRouter#confRouter#configure terRouter#configure terminalEnter configuration commands, one per line. End with CNTL/Z.Router(config)#hostRouter(config)#hostname NetrakonaNetrakona(config)#exitNetrakona#%SYS-5-CONFIG_I: Configured from console by console
Netrakona#wrBuilding configuration.
৩. প্রত্যেকটি রাউটারে ইন্টারফেসগুলো আপ করি।Dhaka router interface up and IP assign commandDhaka>enDhaka#confDhaka#configure terDhaka#configure terminalEnter configuration commands, one per line. End with CNTL/Z.Dhaka(config)#interDhaka(config)#interface fastDhaka(config)#interface fastEthernet 0/0Dhaka(config-if)#ip addDhaka(config-if)#ip address 172.15.0.1 255.255.255.252Dhaka(config-if)#no shDhaka(config-if)#no shutdown
Dhaka(config-if)#%LINK-5-CHANGED: Interface FastEthernet0/0, changed state to up
Dhaka(config-if)#exitDhaka(config)#interDhaka(config)#interface fastDhaka(config)#interface fastEthernet 0/1Dhaka(config-if)#ip addDhaka(config-if)#ip address 172.16.0.1 255.255.255.252Dhaka(config-if)#no shDhaka(config-if)#no shutdown
%LINK-5-CHANGED: Interface FastEthernet0/1, changed state to upDhaka(config-if)#exitDhaka(config)#interDhaka(config)#interface ethDhaka(config)#interface ethernet 0/0/0Dhaka(config-if)#ip addDhaka(config-if)#ip address 192.168.1.1 255.255.255.0Dhaka(config-if)#no shDhaka(config-if)#no shutdown
%LINK-5-CHANGED: Interface Ethernet0/0/0, changed state to up
%LINEPROTO-5-UPDOWN: Line protocol on Interface Ethernet0/0/0, changed state to up
Dhaka(config-if)#exitDhaka(config)#exitDhaka#
Comilla router Interface IP assign and up command lineComilla>enComilla#interComilla#confComilla#configure terComilla#configure terminalEnter configuration commands, one per line. End with CNTL/Z.Comilla(config)#interComilla(config)#interface fastComilla(config)#interface fastEthernet 0/0Comilla(config-if)#ip addComilla(config-if)#ip address 172.15.0.2 255.255.255.252Comilla(config-if)#no shComilla(config-if)#no shutdown
Comilla(config-if)#%LINK-5-CHANGED: Interface FastEthernet0/0, changed state to up
%LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/0, changed state to up
Comilla(config-if)#Comilla(config-if)#exitComilla(config)#interComilla(config)#interface ethComilla(config)#interface ethernet 0/0/0Comilla(config-if)#ip addComilla(config-if)#ip address 172.17.0.1 255.255.255.252Comilla(config-if)#no shComilla(config-if)#no shutdown
Comilla(config-if)#%LINK-5-CHANGED: Interface Ethernet0/0/0, changed state to up
Comilla(config-if)#Comilla(config-if)#exitComilla(config)#interComilla(config)#interface fastComilla(config)#interface fastEthernet 0/1Comilla(config-if)#ip addComilla(config-if)#ip address 192.168.2.1 255.255.255.0Comilla(config-if)#no shComilla(config-if)#no shutdown
Comilla(config-if)#%LINK-5-CHANGED: Interface FastEthernet0/1, changed state to up
%LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/1, changed state to up
Comilla(config-if)#Comilla(config-if)#exitComilla(config)#exitComilla#
Netrakona router interface up and IP assign command lineNetrakona>Netrakona>enNetrakona#confNetrakona#configure terNetrakona#configure terminalEnter configuration commands, one per line. End with CNTL/Z.Netrakona(config)#interNetrakona(config)#interface fastNetrakona(config)#interface fastEthernet 0/1Netrakona(config-if)#ip addNetrakona(config-if)#ipNetrakona(config-if)#ip addNetrakona(config-if)#ip address 172.16.0.2 255.255.255.252Netrakona(config-if)#no shNetrakona(config-if)#no shutdown
%LINK-5-CHANGED: Interface FastEthernet0/1, changed state to up
%LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/1, changed state to up
Netrakona(config-if)#exitNetrakona(config)#interNetrakona(config)#interface ethNetrakona(config)#interface ethernet 0/0/0Netrakona(config-if)#ip addNetrakona(config-if)#ip address 172.17.0.2 255.255.255.252Netrakona(config-if)#no shNetrakona(config-if)#no shutdown
Netrakona(config-if)#%LINK-5-CHANGED: Interface Ethernet0/0/0, changed state to up
%LINEPROTO-5-UPDOWN: Line protocol on Interface Ethernet0/0/0, changed state to up
Netrakona(config-if)#Netrakona(config-if)#exitNetrakona(config)#interNetrakona(config)#interface fastNetrakona(config)#interface fastEthernet 0/0Netrakona(config-if)#ip addNetrakona(config-if)#ip address 192.168.3.1 255.255.255.0Netrakona(config-if)#no shNetrakona(config-if)#no shutdown
%LINK-5-CHANGED: Interface FastEthernet0/0, changed state to up
%LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/0, changed state to up
Netrakona(config-if)#exitNetrakona(config)#exitNetrakona#%SYS-5-CONFIG_I: Configured from console by console
৪. প্রতিটি রাউটারে OSPF চালু করি।Dhaka router OSPF configuration command line
Dhaka>enDhaka#confDhaka#configure terDhaka#configure terminalEnter configuration commands, one per line. End with CNTL/Z.Dhaka(config)#rouDhaka(config)#router osDhaka(config)#router ospf 10Dhaka(config-router)#netDhaka(config-router)#network 192.168.1.0 0.0.0.255 areDhaka(config-router)#network 192.168.1.0 0.0.0.255 area 0Dhaka(config-router)#netDhaka(config-router)#network 172.16.0.0 0.0.0.3 areDhaka(config-router)#network 172.16.0.0 0.0.0.3 area 0Dhaka(config-router)#netDhaka(config-router)#network 172.15.0.0 0.0.0.3 arDhaka(config-router)#network 172.15.0.0 0.0.0.3 area 0Dhaka(config-router)#exitDhaka(config)#exitDhaka#
Comilla router OSPF configuration command lineComilla>Comilla>enComilla#conComilla#confiComilla#configure terComilla#configure terminalEnter configuration commands, one per line. End with CNTL/Z.Comilla(config)#roComilla(config)#router osComilla(config)#router ospf 10Comilla(config-router)#netComilla(config-router)#network 192.168.2.0 0.0.0.255 areComilla(config-router)#network 192.168.2.0 0.0.0.255 area 0Comilla(config-router)#netComilla(config-router)#network 172.17.0.0 0.0.0.3 areComilla(config-router)#network 172.17.0.0 0.0.0.3 area 0Comilla(config-router)#netComilla(config-router)#network 172.15.0.0 0.0.0.3 arComilla(config-router)#network 172.15.0.0 0.0.0.3 area 0Comilla(config-router)#exitComilla(config)#exitComilla#
Netrakona router OSPF configuration command line
Netrakona>Netrakona>enNetrakona#conNetrakona#conterNetrakona#conterTranslating “conter”…domain server (255.255.255.255)% Unknown command or computer name, or unable to find computer address
Netrakona#conNetrakona#confiNetrakona#configure terNetrakona#configure terminalEnter configuration commands, one per line. End with CNTL/Z.Netrakona(config)#roNetrakona(config)#router osNetrakona(config)#router ospf 10Netrakona(config-router)#netNetrakona(config-router)#network 192.168.3.0 0.0.0.255% Incomplete command.Netrakona(config-router)#network 192.168.3.0 0.0.0.255 arNetrakona(config-router)#network 192.168.3.0 0.0.0.255 area 0Netrakona(config-router)#netNetrakona(config-router)#network 172.17.0.0 0.0.0.3 arNetrakona(config-router)#network 172.17.0.0 0.0.0.3 area 0Netrakona(config-router)#netNetrakona(config-router)#network 172.1600:13:28: %OSPF-5-ADJCHG: Process 10, Nbr 192.168.2.1 on Ethernet0/0/0 from LOADING to FULL, Loading DoneNetrakona(config-router)#network 172.16.0.0 0.0.0.3 areNetrakona(config-router)#network 172.16.0.0 0.0.0.3 area 0Netrakona(config-router)#00:14:18: %OSPF-5-ADJCHG: Process 10, Nbr 192.168.1.1 on FastEthernet0/1 from EXCHANGE to FULL, Exchange Done
Netrakona(config-router)#exitNetrakona(config)#exitNetrakona#%SYS-5-CONFIG_I: Configured from console by console
Netrakona#
ওএসপিএফ(OSPF) কনফিগার শেষ হওয়ার পর হোস্ট পিসি থেকে পিং করে দেখি পিং রিপ্লে হচ্ছে কি না ।
Router>
Router>en
Dhaka>en
Netrakona>