
Networking শেখার ক্ষেত্রে Routing একটি অত্যন্ত গুরুত্বপূর্ণ বিষয়। বিশেষ করে যারা ISP, NOC, Network Engineer, System Administrator অথবা Network Support Engineer হিসেবে কাজ করতে চান, তাদের Routing সম্পর্কে পরিষ্কার ধারণা থাকা জরুরি।
সহজ ভাষায়, Routing হলো এক Network থেকে অন্য Network-এ Data Packet পাঠানোর উপযুক্ত পথ নির্ধারণ এবং সেই পথে Packet Forward করার প্রক্রিয়া।
ধরুন, আপনার Office-এর একটি LAN Network রয়েছে:
- Office Network:
192.168.10.0/24 - Branch Office Network:
192.168.20.0/24
Office-এর একটি Computer থেকে Branch Office-এর একটি Computer-এ Data পাঠাতে হবে।
যেহেতু দুটি Device আলাদা IP Network-এ রয়েছে, তাই তাদের মধ্যে Communication করার জন্য Router-এর মাধ্যমে Routing প্রয়োজন হবে।
Router Destination IP Address পরীক্ষা করে Routing Table-এর সাহায্যে পরবর্তী গন্তব্য বা Next Hop নির্ধারণ করে।
১৬.১ Routing কীভাবে কাজ করে?
একটি Router যখন কোনো IP Packet গ্রহণ করে, তখন সাধারণত নিচের কাজগুলো করে:
- Packet-এর Destination IP Address পরীক্ষা করে।
- নিজের Routing Table-এ Destination Network খুঁজে।
- সবচেয়ে নির্দিষ্ট বা Longest Prefix Match Route নির্বাচন করে।
- Next Hop অথবা Outgoing Interface নির্ধারণ করে।
- উপযুক্ত Layer 2 Frame তৈরি করে Packet Forward করে।
যদি Routing Table-এ কোনো নির্দিষ্ট Route না পাওয়া যায়, তাহলে Default Route থাকলে সেটি ব্যবহার করতে পারে। Default Route-ও না থাকলে Packet সাধারণত Drop করা হয়।
একটি গুরুত্বপূর্ণ বিষয়: Router Ethernet Frame-এর MAC Address পরিবর্তন করে পরবর্তী Link-এ পাঠায়। কিন্তু সাধারণ Routing-এর সময় IP Packet-এর Source ও Destination IP Address অপরিবর্তিত থাকে (NAT-এর মতো বিশেষ ব্যবস্থা না থাকলে)।
১৬.২ Routing Table কী?
Routing Table হলো Router-এর মধ্যে সংরক্ষিত একটি তথ্যভান্ডার, যেখানে বিভিন্ন Destination Network-এর জন্য Route এবং Next Hop-এর তথ্য থাকে।
একটি Routing Table-এ সাধারণত নিচের তথ্য থাকে:
- Destination Network
- Subnet Mask বা Prefix Length
- Next Hop IP Address
- Outgoing Interface
- Route Source
- Administrative Distance
- Metric
Cisco Router-এ Routing Table দেখতে নিচের Command ব্যবহার করা হয়।
bash
Router> enable
Router# show ip route নির্দিষ্ট Network-এর Route দেখতে:
bash
Router# show ip route 192.168.20.0 শুধু Static Route দেখতে:
bash
Router# show ip route static Cisco IOS/IOS XE-তে show ip route হলো Routing Table পরীক্ষা করার প্রচলিত Command। Cisco Documentation ।
Cisco
১৬.৩ Routing-এর প্রকারভেদ
Routing সাধারণত তিনভাবে শেখানো হয়:
- Static Routing
- Dynamic Routing
- Default Routing
A. Static Routing
Static Routing হলো এমন একটি Routing পদ্ধতি, যেখানে Network Administrator নিজে Router-এর মধ্যে Route Configure করেন।
অর্থাৎ Router নিজে থেকে Routing Protocol ব্যবহার করে Route শেখে না; Administrator নির্দিষ্ট Destination Network এবং Next Hop নির্ধারণ করে দেন।
Practical Example
ধরুন, আমাদের Network Topology:
| Device | Interface IP |
|---|---|
| R1 LAN | 192.168.10.1/24 |
| R1 WAN | 10.0.0.1/30 |
| R2 WAN | 10.0.0.2/30 |
| R2 LAN | 192.168.20.1/24 |
এখানে R1 এবং R2-এর মধ্যে WAN Link রয়েছে।
R1-কে জানাতে হবে যে 192.168.20.0/24 Network-এ যেতে হলে 10.0.0.2 Next Hop ব্যবহার করতে হবে।
R1 Configuration (Cisco IOS/IOS XE)
bash
Router> enable
Router# configure terminal
Router(config)# interface GigabitEthernet0/0
Router(config-if)# ip address 192.168.10.1 255.255.255.0
Router(config-if)# no shutdown
Router(config-if)# exit
Router(config)# interface GigabitEthernet0/1
Router(config-if)# ip address 10.0.0.1 255.255.255.252
Router(config-if)# no shutdown
Router(config-if)# exit
Router(config)# ip route 192.168.20.0 255.255.255.0 10.0.0.2
Router(config)# end
Router# show ip route নোট: এখানে Interface Name উদাহরণ হিসেবে দেওয়া হয়েছে। আপনার Router Model অনুযায়ী Interface Name আলাদা হতে পারে।
R2 Configuration
bash
Router> enable
Router# configure terminal
Router(config)# interface GigabitEthernet0/0
Router(config-if)# ip address 192.168.20.1 255.255.255.0
Router(config-if)# no shutdown
Router(config-if)# exit
Router(config)# interface GigabitEthernet0/1
Router(config-if)# ip address 10.0.0.2 255.255.255.252
Router(config-if)# no shutdown
Router(config-if)# exit
Router(config)# ip route 192.168.10.0 255.255.255.0 10.0.0.1
Router(config)# end
Router# show ip route Configuration-এর ব্যাখ্যা:
bash
ip route 192.168.20.0 255.255.255.0 10.0.0.2 এখানে:
ip route= Static Route Configure করার Command।192.168.20.0= Destination Network।255.255.255.0= Destination Subnet Mask।10.0.0.2= Next Hop Router-এর IP Address।
মনে রাখবেন, শুধু R1-এ Route Configure করলেই হবে না। Return Traffic-এর জন্য R2-তেও R1-এর LAN Network-এর Route থাকতে হবে।
Cisco-এর Official Reference: Cisco IP Route Command এবং Cisco IP Routing Configuration Guide ।
B. Default Routing
Default Routing হলো এমন একটি পদ্ধতি, যেখানে Router-এর Routing Table-এ কোনো Destination Network-এর জন্য নির্দিষ্ট Route না থাকলে Packet একটি নির্ধারিত Next Hop-এ পাঠানো হয়।
এটিকে Gateway of Last Resort-ও বলা হয়।
ISP Network-এ Customer Router থেকে Upstream Router-এর দিকে Traffic পাঠানোর জন্য Default Route বহুল ব্যবহৃত হয়।
Cisco IOS/IOS XE Configuration:
bash
Router> enable
Router# configure terminal
Router(config)# ip route 0.0.0.0 0.0.0.0 10.0.0.1
Router(config)# end
Router# show ip route এখানে:
0.0.0.0= Destination Network।0.0.0.0= Subnet Mask।10.0.0.1= Next Hop।
অর্থাৎ নির্দিষ্ট কোনো Route না থাকলে Router 10.0.0.1-এর দিকে Packet পাঠানোর চেষ্টা করবে।
Default Route যাচাই করতে:
bash
Router# show ip route Routing Table-এ সাধারণত নিচের মতো Entry দেখা যেতে পারে:
text
S* 0.0.0.0/0 [1/0] via 10.0.0.1 এখানে:
S= Static Route।*= Candidate Default Route।0.0.0.0/0= Default Route।[1/0]= Administrative Distance / Metric।via 10.0.0.1= Next Hop।
Cisco
+1
C. Dynamic Routing
Dynamic Routing হলো এমন একটি পদ্ধতি, যেখানে Router Routing Protocol ব্যবহার করে অন্য Router-এর কাছ থেকে Network-এর তথ্য শেখে এবং Routing Table আপডেট করে।
ধরুন, একটি ISP Network-এ ৫০টি Router রয়েছে। প্রতিটি Router-এ হাতে হাতে Static Route Configure করা সময়সাপেক্ষ এবং Maintenance করা কঠিন।
এক্ষেত্রে Dynamic Routing Protocol ব্যবহার করলে Router-গুলো নিজেদের মধ্যে Routing Information Exchange করতে পারে।
Dynamic Routing-এর সুবিধা:
- বড় Network পরিচালনা সহজ হয়।
- Network Topology পরিবর্তিত হলে Route Update হতে পারে।
- Alternative Path নির্বাচন করা যায়।
- Manual Configuration-এর প্রয়োজন কমে।
- Network Scalability বৃদ্ধি পায়।
১৬.৪ গুরুত্বপূর্ণ Routing Protocol
Networking-এর ক্ষেত্রে কয়েকটি গুরুত্বপূর্ণ Dynamic Routing Protocol রয়েছে।
| Protocol | পূর্ণরূপ | ব্যবহার |
|---|---|---|
| RIP | Routing Information Protocol | ছোট Network |
| OSPF | Open Shortest Path First | Enterprise ও ISP Internal Network |
| EIGRP | Enhanced Interior Gateway Routing Protocol | সমর্থিত Cisco ও অন্যান্য Environment |
| IS-IS | Intermediate System to Intermediate System | বড় ISP ও Service Provider Network |
| BGP | Border Gateway Protocol | Internet ও Autonomous System-এর মধ্যে Routing |
এখানে একটি গুরুত্বপূর্ণ পার্থক্য বুঝতে হবে।
- IGP (Interior Gateway Protocol): একটি Autonomous System-এর অভ্যন্তরে Routing পরিচালনা করে। যেমন OSPF, IS-IS, EIGRP ও RIP।
- EGP (Exterior Gateway Protocol): বিভিন্ন Autonomous System-এর মধ্যে Routing পরিচালনা করে। Internet-এ BGP সবচেয়ে গুরুত্বপূর্ণ EGP।
১৬.৫ OSPF – Open Shortest Path First
গুরুত্বপূর্ণ
OSPF হলো একটি Link-State Dynamic Routing Protocol। Enterprise Network, Data Center এবং ISP-এর Internal Network-এ এটি ব্যাপকভাবে ব্যবহৃত হয়।
OSPF Router-গুলো Link-State Advertisement (LSA) আদান-প্রদানের মাধ্যমে Network Topology সম্পর্কে তথ্য সংগ্রহ করে।
এরপর SPF (Shortest Path First) Algorithm ব্যবহার করে Best Path নির্ধারণ করে।
OSPF-এর বৈশিষ্ট্য:
- Link-State Routing Protocol।
- দ্রুত Convergence-এর সুবিধা।
- Area-Based Network Design।
- Cost Metric ব্যবহার।
- VLSM ও CIDR Support।
- IPv4-এর জন্য OSPFv2 এবং IPv6-এর জন্য OSPFv3।
OSPF Area কী?
OSPF Network-কে পরিচালনার সুবিধার্থে একাধিক Area-তে ভাগ করা যায়।
সবচেয়ে গুরুত্বপূর্ণ Area হলো:
Area 0 – Backbone Area।
অন্যান্য Area সাধারণত Backbone Area-এর সঙ্গে সংযুক্ত থাকে।
১৬.৬ OSPF Practical Configuration (Cisco IOS/IOS XE)
ধরুন, দুটি Router-এর মধ্যে নিচের Network রয়েছে:
| Router | Interface | IP Address |
|---|---|---|
| R1 | G0/0 | 192.168.10.1/24 |
| R1 | G0/1 | 10.0.0.1/30 |
| R2 | G0/0 | 192.168.20.1/24 |
| R2 | G0/1 | 10.0.0.2/30 |
দুটি Router-এর WAN Interface একই Subnet-এ রয়েছে।
R1-এর OSPF Configuration:
bash
Router> enable
Router# configure terminal
Router(config)# router ospf 1
Router(config-router)# network 192.168.10.0 0.0.0.255 area 0
Router(config-router)# network 10.0.0.0 0.0.0.3 area 0
Router(config-router)# end R2-এর OSPF Configuration:
bash
Router> enable
Router# configure terminal
Router(config)# router ospf 1
Router(config-router)# network 192.168.20.0 0.0.0.255 area 0
Router(config-router)# network 10.0.0.0 0.0.0.3 area 0
Router(config-router)# end এখানে:
router ospf 1= OSPF Process চালু করে।network= কোন Interface OSPF-এর অন্তর্ভুক্ত হবে তা নির্ধারণ করে।192.168.10.0= Network Address।0.0.0.255= Wildcard Mask।area 0= Backbone Area।
Wildcard Mask কী?
Wildcard Mask হলো Routing Protocol-এর Network Matching-এর জন্য ব্যবহৃত একটি Mask।
উদাহরণ:
| Subnet Mask | Wildcard Mask |
|---|---|
| 255.255.255.0 | 0.0.0.255 |
| 255.255.255.252 | 0.0.0.3 |
| 255.255.0.0 | 0.0.255.255 |
১৬.৭ OSPF Verification Commands
OSPF Configuration করার পর Router-গুলোর মধ্যে Neighbor Relationship তৈরি হয়েছে কি না, সেটি পরীক্ষা করতে হবে।
১. OSPF Neighbor Check
bash
Router# show ip ospf neighbor এই Command দিয়ে OSPF Neighbor-এর Router ID, State এবং Interface সম্পর্কিত তথ্য দেখা যায়।
২. OSPF Interface Check
bash
Router# show ip ospf interface brief ৩. OSPF Routing Table Check
bash
Router# show ip route ospf ৪. OSPF Protocol Information
bash
Router# show ip protocols ৫. সম্পূর্ণ Routing Table
bash
Router# show ip route OSPF Neighbor State সাধারণত FULL হলে সংশ্লিষ্ট Neighbor-এর সঙ্গে Adjacency সম্পূর্ণ হয়েছে বোঝায়। তবে কিছু Network Type-এ Neighbor State-এর আচরণ ভিন্ন হতে পারে।
OSPF Troubleshooting-এর সময় যেসব বিষয় পরীক্ষা করবেন:
- দুই Router-এর Interface Up আছে কি না।
- IP Address ও Subnet Mask সঠিক কি না।
- OSPF Area একই কি না।
- Hello ও Dead Timer মিলছে কি না।
- Authentication Configuration থাকলে সেটি সঠিক কি না।
- OSPF Network Statement সঠিক Interface Match করছে কি না।
Official Reference: Cisco IOS XE – OSPF Configuration এবং Cisco OSPF Neighbor Command ।
১৬.৮ BGP – Border Gateway Protocol
ISP ও Internet Networking-এর জন্য গুরুত্বপূর্ণ
BGP-এর পূর্ণরূপ Border Gateway Protocol।
এটি একটি Path Vector Routing Protocol। Internet-এর বিভিন্ন Autonomous System (AS)-এর মধ্যে Routing Information আদান-প্রদানের জন্য BGP ব্যবহৃত হয়।
সহজভাবে বললে, একটি ISP-এর Network থেকে অন্য ISP-এর Network-এ কীভাবে Traffic যাবে, সেই Route Information Exchange করার ক্ষেত্রে BGP গুরুত্বপূর্ণ ভূমিকা পালন করে।
উদাহরণ:
- ISP-1 এর AS Number: 65001
- ISP-2 এর AS Number: 65002
- ISP-1 এবং ISP-2-এর মধ্যে eBGP Peering রয়েছে।
BGP-এর গুরুত্বপূর্ণ বৈশিষ্ট্য:
- Path Vector Routing Protocol।
- TCP Port 179 ব্যবহার করে।
- Autonomous System Number (ASN) ব্যবহার করে।
- AS_PATH Attribute ব্যবহার করে।
- Routing Policy অনুযায়ী Route Selection করা যায়।
- Internet Routing-এর জন্য ব্যবহৃত হয়।
BGP-এর প্রকারভেদ
- eBGP (External BGP): দুটি ভিন্ন Autonomous System-এর মধ্যে BGP Peering।
- iBGP (Internal BGP): একই Autonomous System-এর মধ্যে BGP Peering।
BGP Verification Commands (Cisco IOS/IOS XE)
bash
Router# show ip bgp summary BGP Neighbor-এর Session Status দেখতে।
bash
Router# show ip bgp BGP Routing Table দেখতে।
bash
Router# show ip bgp neighbors BGP Neighbor-এর বিস্তারিত তথ্য দেখতে।
bash
Router# show ip route bgp Routing Table-এ BGP থেকে শেখা Route দেখতে।
BGP Session-এর State Established হলে Neighbor-এর সঙ্গে BGP Session প্রতিষ্ঠিত হয়েছে বোঝায়।
নোট: BGP Configuration, Prefix Advertisement, Route Filtering এবং Policy Design ISP পর্যায়ে অত্যন্ত গুরুত্বপূর্ণ। Production Network-এ BGP চালুর আগে ASN, IP Address, Prefix Authorization এবং Routing Policy সঠিকভাবে যাচাই করতে হবে।
Official References: Cisco BGP Configuration Guide এবং Cisco BGP Command Reference ।
১৬.৯ Routing Protocol-এর মধ্যে পার্থক্য
| বিষয় | RIP | OSPF | EIGRP | BGP |
|---|---|---|---|---|
| Type | Distance Vector | Link State | Advanced Distance Vector | Path Vector |
| Metric | Hop Count | Cost | Composite Metric | Path Attributes |
| Algorithm | Bellman-Ford ভিত্তিক | SPF | DUAL | Best Path Selection |
| ব্যবহার | ছোট Network | Enterprise/ISP | Enterprise | Internet/ISP |
| TCP/UDP | UDP 520 | IP Protocol 89 | IP Protocol 88 | TCP 179 |
মনে রাখবেন, OSPF এবং EIGRP সরাসরি TCP বা UDP Port ব্যবহার করে না। তারা IP Protocol Number ব্যবহার করে।
১৬.১০ Administrative Distance (AD) কী?
একটি Router একই Destination Network-এর জন্য একাধিক Routing Source থেকে Route পেতে পারে।
তখন কোন Route-কে বেশি বিশ্বাসযোগ্য হিসেবে গ্রহণ করবে, সেটি নির্ধারণে Administrative Distance (AD) ব্যবহৃত হয়।
Cisco IOS/IOS XE-এর প্রচলিত Default Administrative Distance:
| Route Source | AD |
|---|---|
| Directly Connected | 0 |
| Static Route | 1 |
| eBGP | 20 |
| EIGRP (Internal) | 90 |
| OSPF | 110 |
| IS-IS | 115 |
| RIP | 120 |
| EIGRP (External) | 170 |
| iBGP | 200 |
মনে রাখবেন: সাধারণভাবে একই Destination Prefix-এর জন্য কম Administrative Distance-যুক্ত Route বেশি পছন্দ করা হয়। তবে Route Selection-এর ক্ষেত্রে Prefix Length, Routing Protocol-এর Metric এবং অন্যান্য Policy-ও গুরুত্বপূর্ণ।
Cisco Router-এ Routing Table দেখতে:
bash
Router# show ip route উদাহরণ:
text
O 192.168.20.0/24 [110/2] via 10.0.0.2 এখানে:
O= OSPF Route।110= Administrative Distance।2= OSPF Metric বা Cost।10.0.0.2= Next Hop।
১৬.১১ Routing Troubleshooting – Practical Commands
Network Engineer হিসেবে শুধু Routing Configure করতে জানলেই হবে না। Routing সমস্যা হলে সেটি শনাক্ত করাও জানতে হবে।
Cisco IOS/IOS XE-তে নিচের Command-গুলো কাজে লাগে।
| Command | কাজ |
|---|---|
show ip route | Routing Table দেখা |
show ip route static | Static Route দেখা |
show ip route ospf | OSPF Route দেখা |
show ip interface brief | Interface Status ও IP দেখা |
show ip protocols | Routing Protocol Information |
show ip ospf neighbor | OSPF Neighbor দেখা |
show interfaces | Interface বিস্তারিত পরীক্ষা |
ping 10.0.0.2 | Connectivity পরীক্ষা |
traceroute 192.168.20.10 | Packet-এর Path পরীক্ষা |
show running-config | বর্তমান Configuration দেখা |
কিছু গুরুত্বপূর্ণ Troubleshooting Scenario
সমস্যা ১: Router-এর WAN Interface Down
সমাধান:
bash
Router# show ip interface brief Interface Status, IP Address এবং Protocol Status পরীক্ষা করুন।
সমস্যা ২: Destination Network-এর Route পাওয়া যাচ্ছে না
bash
Router# show ip route Destination Network-এর Route Routing Table-এ আছে কি না পরীক্ষা করুন।
সমস্যা ৩: OSPF Neighbor তৈরি হচ্ছে না
bash
Router# show ip ospf neighbor এরপর দুই Router-এর Interface Address, Area, Timer এবং OSPF Configuration পরীক্ষা করুন।
সমস্যা ৪: Packet কোন পথে যাচ্ছে বুঝতে পারছেন না
bash
Router# traceroute 192.168.20.10 এই Command দিয়ে Destination পর্যন্ত Packet-এর Hop Information পরীক্ষা করা যায়।
কিছু Command-এর Availability ও Syntax Router Model, IOS/IOS XE Version এবং Feature Support অনুযায়ী পরিবর্তিত হতে পারে। উপরের Command-গুলো Cisco IOS/IOS XE-এর প্রচলিত Syntax।
১৭. NAT – Network Address Translation
NAT-এর পূর্ণরূপ Network Address Translation।
NAT হলো এমন একটি প্রযুক্তি, যার মাধ্যমে IP Packet-এর IP Address এবং প্রয়োজন অনুযায়ী Port Information পরিবর্তন করা যায়।
সাধারণত Private Network-এর Device-গুলোকে Public Network-এর সঙ্গে যোগাযোগ করানোর জন্য NAT ব্যবহার করা হয়।
ধরুন, আপনার Office-এ ৫০টি Computer রয়েছে। সব Computer-এর Private IP Address আছে।
এখন তারা Internet ব্যবহার করবে। Router NAT ব্যবহার করে তাদের Traffic একটি Public IP Address দিয়ে Internet-এ পাঠাতে পারে।
১৭.১ NAT-এর প্রকারভেদ
১. Static NAT
একটি Private IP Address-এর সঙ্গে একটি নির্দিষ্ট Public IP Address Mapping করা হয়।
২. Dynamic NAT
একটি Public IP Pool থেকে Private IP-এর জন্য Public Address Dynamically বরাদ্দ করা হয়।
৩. PAT (Port Address Translation)
PAT-এর মাধ্যমে একাধিক Private IP Device একটি Public IP Address ব্যবহার করে Internet Communication করতে পারে। বিভিন্ন Session আলাদা করার জন্য Port Information ব্যবহার করা হয়।
PAT-কে অনেক সময় NAT Overload-ও বলা হয়।
১৭.২ Cisco IOS/IOS XE-তে PAT Configuration
ধরুন:
- LAN Network:
192.168.10.0/24 - LAN Interface:
GigabitEthernet0/0 - WAN Interface:
GigabitEthernet0/1
একটি Basic PAT Configuration-এর উদাহরণ:
bash
Router> enable
Router# configure terminal
Router(config)# access-list 1 permit 192.168.10.0 0.0.0.255
Router(config)# interface GigabitEthernet0/0
Router(config-if)# ip nat inside
Router(config-if)# exit
Router(config)# interface GigabitEthernet0/1
Router(config-if)# ip nat outside
Router(config-if)# exit
Router(config)# ip nat inside source list 1 interface GigabitEthernet0/1 overload
Router(config)# end এখানে:
access-list 1= কোন Private Network NAT ব্যবহার করবে তা নির্ধারণ করে।ip nat inside= LAN Side নির্ধারণ করে।ip nat outside= WAN Side নির্ধারণ করে।overload= PAT সক্রিয় করে।
NAT Verification Commands
bash
Router# show ip nat translations bash
Router# show ip nat statistics প্রথম Command দিয়ে NAT Translation এবং দ্বিতীয় Command দিয়ে NAT Statistics দেখা যায়।
এই Configuration একটি Basic Example। বাস্তবে WAN Interface-এ সঠিক IP Configuration, Upstream Connectivity এবং উপযুক্ত Routing থাকতে হবে। ACL-টি NAT-এর জন্য ব্যবহৃত হয়েছে; এটি নিজে Firewall Security Policy নয়।
Official Reference: Cisco – NAT Configuration and Troubleshooting ।
১৮. ACL – Access Control List
ACL-এর পূর্ণরূপ Access Control List।
ACL হলো Router বা Layer 3 Network Device-এ Traffic Filter করার একটি ব্যবস্থা।
এর মাধ্যমে নির্দিষ্ট Source IP, Destination IP, Protocol এবং Port অনুযায়ী Traffic Permit অথবা Deny করা যায়।
ACL-এর ব্যবহার:
- Network Traffic Filtering।
- Unauthorized Traffic Restrict করা।
- নির্দিষ্ট Network-এর Communication Control করা।
- NAT-এর জন্য Traffic Selection।
- Network Security Policy বাস্তবায়নে সহায়তা করা।
১৮.১ ACL-এর প্রকারভেদ
| ACL | কাজ |
|---|---|
| Standard ACL | সাধারণত Source IPv4 Address অনুযায়ী Filtering |
| Extended ACL | Source, Destination, Protocol ও Port অনুযায়ী Filtering |
| Named ACL | নাম ব্যবহার করে ACL তৈরি ও পরিচালনা |
১৮.২ Standard ACL Configuration
ধরুন, আপনি 192.168.10.0/24 Network-এর Traffic Permit করতে চান।
Cisco IOS/IOS XE Example:
bash
Router> enable
Router# configure terminal
Router(config)# access-list 10 permit 192.168.10.0 0.0.0.255
Router(config)# end ACL দেখতে:
bash
Router# show access-lists গুরুত্বপূর্ণ: ACL-এর শেষে Implicit Deny থাকে। তাই নির্দিষ্ট Permit Statement না থাকলে অন্য Traffic Deny হতে পারে।
১৮.৩ Extended ACL Configuration
Extended ACL দিয়ে Source এবং Destination Network অনুযায়ী Traffic Filter করা যায়।
উদাহরণ হিসেবে, 192.168.10.0/24 Network থেকে 192.168.20.0/24 Network-এর HTTP Traffic Permit করার একটি ACL:
bash
Router> enable
Router# configure terminal
Router(config)# ip access-list extended WEB-FILTER
Router(config-ext-nacl)# permit tcp 192.168.10.0 0.0.0.255 192.168.20.0 0.0.0.255 eq 80
Router(config-ext-nacl)# deny ip any any
Router(config-ext-nacl)# exit
Router(config)# end এখানে TCP Port 80-এর Traffic Permit করা হয়েছে এবং অন্যান্য IP Traffic Deny করা হয়েছে।
এটি একটি নির্দিষ্ট Policy Example; HTTPS বা অন্যান্য প্রয়োজনীয় Traffic-ও চালু রাখতে হলে সেগুলোর জন্য উপযুক্ত Permit Rule যোগ করতে হবে।
ACL Verification:
bash
Router# show access-lists Interface-এ ACL Apply করা হয়েছে কি না দেখতে:
bash
Router# show ip interface Official Reference: Cisco – Configuring IP Access Lists ।
১৯. Network Troubleshooting – একজন Network Engineer-এর দৈনন্দিন কাজ
একজন Network Engineer-এর গুরুত্বপূর্ণ দায়িত্ব হলো Network-এর সমস্যা দ্রুত শনাক্ত করা এবং সমাধান করা।
বাস্তবে ISP, Corporate Office এবং Data Center-এ বিভিন্ন ধরনের সমস্যা দেখা যায়।
যেমন:
- Internet Connectivity নেই।
- DNS Resolve হচ্ছে না।
- IP Address পাওয়া যাচ্ছে না।
- Packet Loss হচ্ছে।
- High Latency দেখা যাচ্ছে।
- Fiber Link Down।
- VLAN Communication হচ্ছে না।
- Routing সমস্যা হচ্ছে।
১৯.১ Windows Troubleshooting Commands
| Command | কাজ |
|---|---|
ipconfig | IP Configuration |
ipconfig /all | বিস্তারিত Network Configuration |
ipconfig /release | DHCP Lease Release |
ipconfig /renew | DHCP Lease Renew |
ipconfig /flushdns | DNS Cache Flush |
ping 8.8.8.8 | Connectivity Test |
tracert 8.8.8.8 | Route Path পরীক্ষা |
nslookup google.com | DNS Query |
arp -a | ARP Table |
netstat -ano | Network Connection ও Process ID |
route print | Windows Routing Table |
১৯.২ Linux Troubleshooting Commands
| Command | কাজ |
|---|---|
ip addr show | IP Address দেখা |
ip link show | Interface Status |
ip route show | Routing Table |
ip neigh show | Neighbor Table |
ping -c 4 8.8.8.8 | Connectivity Test |
traceroute 8.8.8.8 | Route Path পরীক্ষা |
dig google.com | DNS Query |
ss -tulnp | Listening Socket |
ip -s link | Interface Statistics |
Linux-এ কিছু Utility যেমন traceroute ইনস্টল করা না থাকলে আলাদাভাবে ইনস্টল করতে হতে পারে। Command-এর Permission অনুযায়ী sudo প্রয়োজন হতে পারে।
১৯.৩ Practical Troubleshooting Example
ধরুন, একজন Customer অভিযোগ করলেন:
“আমার Internet কাজ করছে না।”
একজন Network Engineer হিসেবে সরাসরি Router Restart না করে ধাপে ধাপে পরীক্ষা করা উচিত।
- Physical Connectivity পরীক্ষাEthernet Cable, Fiber Link, ONU/ONT এবং Router-এর Link Indicator পরীক্ষা করুন।
- IP Configuration পরীক্ষাWindows:bash
ipconfig /all - Default Gateway পরীক্ষাbash
ping 192.168.1.1 - Internet IP Connectivity পরীক্ষাbash
ping 8.8.8.8 - DNS পরীক্ষাbash
nslookup google.com - Route
Route পরীক্ষা
Windows-এ Route Path পরীক্ষা করতে:
CMD/PowerShell
tracert 8.8.8.8
Linux-এ:
bash
traceroute 8.8.8.8
এই Command-এর মাধ্যমে Packet কোন কোন Router বা Hop অতিক্রম করে Destination-এর দিকে যাচ্ছে, তা পরীক্ষা করা যায়।
সমস্যা শনাক্ত করার পদ্ধতি:
- Gateway Ping সফল, কিন্তু Internet IP Ping ব্যর্থ হলে Upstream Connectivity বা Routing সমস্যা থাকতে পারে।
- Internet IP Ping সফল, কিন্তু Domain Name কাজ না করলে DNS সমস্যা হতে পারে।
- Packet Loss দেখা গেলে Link Quality, Congestion অথবা Upstream Network পরীক্ষা করতে হবে।
- Traceroute-এর কোনো Hop-এ Response না পেলেই সেটিকে নিশ্চিত Network Failure বলা যাবে না। অনেক Router ICMP Response সীমিত বা বন্ধ রাখে।
১৯.৪ ISP Network Troubleshooting
একজন ISP Network Engineer হিসেবে নিচের বিষয়গুলো সম্পর্কে বাস্তব অভিজ্ঞতা থাকা জরুরি:
১. PPPoE সমস্যা: Customer Authentication, Username, Password এবং PPPoE Session পরীক্ষা করা।
২. DHCP সমস্যা: Customer সঠিক IP Address, Subnet Mask, Gateway এবং DNS পাচ্ছে কি না পরীক্ষা করা।
৩. VLAN সমস্যা: Access Port, Trunk Port এবং VLAN Configuration সঠিক আছে কি না যাচাই করা।
৪. Fiber সমস্যা: Optical Power, Fiber Connector, Patch Cord এবং Optical Link পরীক্ষা করা।
৫. Routing সমস্যা: Static Route, OSPF, BGP এবং Default Route পরীক্ষা করা।
৬. Bandwidth সমস্যা: Interface Utilization, Traffic Congestion এবং Bandwidth Profile পরীক্ষা করা।
৭. Packet Loss: Interface Error, CRC Error, Link Flapping এবং Network Congestion পরীক্ষা করা।
১৯.৫ Network Monitoring Tools
Network-এর Performance এবং Availability পর্যবেক্ষণের জন্য বিভিন্ন Monitoring Tool ব্যবহার করা হয়।
| Tool | ব্যবহার |
|---|---|
| MikroTik Winbox | MikroTik Router Management |
| Zabbix | Network Monitoring |
| PRTG | Network Performance Monitoring |
| The Dude | Network Discovery ও Monitoring |
| LibreNMS | Network Device Monitoring |
| Wireshark | Packet Analysis |
| Grafana | Monitoring Dashboard |
| SmokePing | Latency ও Packet Loss Monitoring |
১৯.৬ একজন Network Engineer-এর Troubleshooting Methodology
Network সমস্যা সমাধানের জন্য একটি নির্দিষ্ট পদ্ধতি অনুসরণ করা উচিত।
১. Customer বা User-এর কাছ থেকে সমস্যার বিস্তারিত তথ্য সংগ্রহ করুন।
২. Physical Connectivity পরীক্ষা করুন।
৩. IP Address এবং Default Gateway পরীক্ষা করুন।
৪. Local Network Connectivity পরীক্ষা করুন।
৫. DNS এবং Internet Connectivity পরীক্ষা করুন।
৬. Routing Table এবং Network Path পরীক্ষা করুন।
৭. Router ও Switch-এর Interface Status এবং Error Counter পরীক্ষা করুন।
৮. প্রয়োজন অনুযায়ী Configuration যাচাই ও সংশোধন করুন।
৯. সমস্যা সমাধানের পর আবার Connectivity Test করুন।
১০. সমস্যার কারণ এবং সমাধান Documentation-এ সংরক্ষণ করুন।
মনে রাখবেন: ভালো Network Engineer কখনো অনুমানের ভিত্তিতে Configuration পরিবর্তন করেন না। তিনি প্রথমে সমস্যার কারণ শনাক্ত করেন, তারপর পরিকল্পিতভাবে সমাধান করেন।
২০. Network Engineer হওয়ার জন্য কী কী Practical Lab করবেন?
Networking ভালোভাবে শেখার জন্য শুধু Command মুখস্থ করলে হবে না। বাস্তব Network Environment তৈরি করে প্রতিটি বিষয় অনুশীলন করতে হবে।
নিচের Lab-গুলো পর্যায়ক্রমে সম্পন্ন করার চেষ্টা করুন।
| Lab | Practical Task |
|---|---|
| Lab 01 | Basic IP Addressing ও Subnetting |
| Lab 02 | দুইটি Router-এর মধ্যে Static Routing |
| Lab 03 | Default Routing Configuration |
| Lab 04 | OSPF Single Area Configuration |
| Lab 05 | OSPF Neighbor Troubleshooting |
| Lab 06 | eBGP ও iBGP Fundamentals |
| Lab 07 | VLAN ও Inter-VLAN Routing |
| Lab 08 | Trunking ও EtherChannel |
| Lab 09 | NAT ও PAT Configuration |
| Lab 10 | Standard ও Extended ACL |
| Lab 11 | DHCP ও DNS Configuration |
| Lab 12 | PPPoE Server ও Client Configuration |
| Lab 13 | MikroTik Basic Configuration |
| Lab 14 | EPON/GPON OLT Management |
| Lab 15 | ONU Registration ও Optical Power Monitoring |
| Lab 16 | Zabbix বা LibreNMS দিয়ে Network Monitoring |
| Lab 17 | Wireshark দিয়ে Packet Analysis |
| Lab 18 | Network Failure ও Troubleshooting Practice |
২০.১ কোন Software দিয়ে Practice করবেন?
- Cisco Packet Tracer: Basic Networking, VLAN, Routing ও Switching শেখার জন্য।
- GNS3: Advanced Routing ও Network Simulation-এর জন্য।
- EVE-NG: Multiple Router ও Enterprise/ISP Lab তৈরির জন্য।
- MikroTik CHR: MikroTik Router Configuration অনুশীলনের জন্য।
- Wireshark: Packet Capture ও Network Protocol Analysis-এর জন্য।
২১. উপসংহার
একজন দক্ষ Network Engineer হতে হলে শুধু Router ও Switch-এর Command জানলেই হবে না। Network কীভাবে কাজ করে, Data কীভাবে এক Network থেকে অন্য Network-এ যায়, Routing কীভাবে Best Path নির্বাচন করে এবং Network-এর সমস্যা কীভাবে শনাক্ত ও সমাধান করতে হয়—এসব বিষয়ে পরিষ্কার ধারণা থাকতে হবে।
বিশেষ করে ISP Network Engineer হতে চাইলে নিচের বিষয়গুলোতে দক্ষতা অর্জন করা অত্যন্ত গুরুত্বপূর্ণ:
- IP Addressing ও Subnetting
- VLAN ও Switching
- Static ও Dynamic Routing
- OSPF ও BGP
- NAT, PAT ও ACL
- MikroTik Router Configuration
- PPPoE ও DHCP Management
- Fiber Optic ও FTTH Technology
- EPON/GPON OLT ও ONU Management
- Network Monitoring ও Troubleshooting
সবশেষে মনে রাখবেন, Networking একটি Practical Skill। প্রতিদিন নতুন কিছু শেখা, Lab Practice করা এবং বাস্তব Network-এর সমস্যা সমাধানের অভিজ্ঞতা অর্জন করাই একজন দক্ষ Network Engineer হয়ে ওঠার মূল চাবিকাঠি।
শুধু Network Configure করতে শিখবেন না, Network কেন কাজ করছে না এবং কীভাবে সমস্যার স্থায়ী সমাধান করতে হয়, সেটিও শিখুন।




