- Runbook مرحلهای OSPF بسازی
- Outputهای Neighbor، Interface، Database و Route را مرتبط کنی
- Area/Timer/MTU/Network-Type mismatch را تشخیص بدهی
- Route Missing را از Neighbor Failure جدا کنی
- پس از Change نتیجه را با Evidence و تست End-to-End Verify کنی
مرحله اول: Link و IP قبل از OSPF
قبل از هر دستور OSPF، وضعیت Physical/Line Protocol و IP Addressing را بررسی کن. دو Router روی یک Link مشترک باید بتوانند آدرس مستقیم یکدیگر را Reach کنند. اگر Interface Down است، Subnet اشتباه است یا ACL محلی Packetهای لازم را مسدود کرده، Reset کردن OSPF کمکی نمیکند.
مرحله پایهshow ip interface brief
show interfaces Gi0/0
show ip interface Gi0/0
ping 10.0.12.2 source 10.0.12.1این مرحله Root Causeهای زیر OSPF را حذف میکند. اگر Ping مستقیم موفق است، میتوانی با اطمینان بیشتری به Control Plane OSPF بروی. اگر شکست میخورد، ابتدا همان Link و IP را حل کن.
مرحله دوم: OSPF Interface و Neighbor
show ip ospf interface و show ip ospf interface brief نشان میدهند OSPF روی کدام Interface، با چه Process/Area، Network Type، Cost و Timerهایی فعال است. سپس show ip ospf neighbor State همسایه را نشان میدهد.
Control Plane اولیهshow ip ospf interface brief
show ip ospf interface Gi0/0
show ip ospf neighborاگر Neighbor در DOWN/INIT است، Hello Reachability یا یکطرفه بودن تبادل را بررسی کن. اگر در EXSTART/EXCHANGE میماند، MTU mismatch یکی از فرضیههای مهم است. اگر روی Broadcast دو DROTHER در 2-WAY هستند، ممکن است کاملاً طبیعی باشد. Context Network Type تعیینکننده است.
Area mismatch، Hello/Dead mismatch، Router ID duplicate، passive-interface ناخواسته و OSPF Enablement اشتباه از خطاهای رایجاند. همه را با Operational Output بررسی کن، نه صرفاً Memory.
مرحله سوم: Database و Routing Table
FULL بودن Neighbor پایان کار نیست. اگر Route مقصد Missing است، show ip ospf database کمک میکند بفهمی آیا اطلاعات Link-State مربوط به شبکه مقصد وارد LSDB شده است یا نه. سپس show ip route ospf و show ip route <prefix> تصمیم نهایی RIB را نشان میدهند.
از LSDB تا RIBshow ip ospf database
show ip route ospf
show ip route 10.30.0.0اگر Prefix در LSDB نیست، Advertisement یا Topology را دنبال کن. اگر در LSDB هست ولی Route نصب نشده، ممکن است مسیر بهتری از Source دیگری، Route Connected/Static یا شرایط انتخاب دیگری وجود داشته باشد. اگر Route نصب شده ولی Traffic شکست میخورد، به Data Plane و Return Path برو.
مرحله چهارم: Path و Data Plane
Route درست روی R1 فقط مسیر رفت را ثابت میکند. برای ارتباط واقعی باید Return Route، ACL/Firewall، NAT و وضعیت مقصد هم بررسی شوند. از ping با Source مشخص و traceroute استفاده کن تا مسیر واقعی با Intent مقایسه شود.
تست Data Planeping 10.30.30.10 source 10.10.10.1
traceroute 10.30.30.10 source 10.10.10.1اگر Ping از خود Router موفق ولی از Client شکست میخورد، ممکن است Source Subnet Client در مسیر برگشت شناخته نشده باشد یا Policy متفاوتی اعمال شود. بنابراین Source در تست مهم است.
در Route Selection غیرمنتظره، Prefix Length، Route Source و OSPF Cost را به ترتیب منطقی بررسی کن. Cost فقط بین Candidateهای مرتبط معنی پیدا میکند و Longest Prefix Match همچنان در Forwarding اهمیت دارد.
Change، Recovery و مستندسازی
وقتی Root Cause مشخص شد، کوچکترین Change لازم را اعمال کن. قبل از Change Snapshot از Outputهای کلیدی بگیر؛ بعد از Change همان دستورها را دوباره اجرا و مقایسه کن. اگر Configuration تغییر Area یا Network Type است، انتظار Reset Adjacency و Re-convergence داشته باش.
چرخه ChangeBefore: neighbor / interface / route
Change: one controlled correction
After: same outputs + end-to-end test
Document: cause, evidence, resultاز clear ip ospf process بهعنوان اولین ابزار استفاده نکن. Reset ممکن است علامت را موقتاً پاک کند بدون اینکه Root Cause را بفهمی و همچنین روی همه Neighborهای Process Impact بگذارد. Restart فقط وقتی معنی دارد که Change مشخصی نیازمند آن است و Impact پذیرفته شده باشد.
پس از تغییر VLAN Transit، R1 دیگر Route شبکه 10.50.0.0/16 را ندارد. Interface Up و Ping مستقیم R2 موفق است. show ip ospf neighbor نشان میدهد Neighbor در EXSTART مانده است. show interfaces دو سمت MTU متفاوت را نشان میدهد. تیم بهجای Restart Process، MTU Design را بررسی و mismatch را اصلاح میکند؛ Neighbor FULL میشود، Route برمیگردد و Ping با Source LAN نیز موفق میشود.
اشتباههای رایج و علت آنها
- شروع با clear ip ospf process
- فرض اینکه FULL بودن Neighbor همهچیز را ثابت میکند
- نادیده گرفتن Return Path در تست End-to-End
- تغییر همزمان Area، Cost و Timer بدون Evidence
تمرین عملی
- یک Runbook ششمرحلهای OSPF روی کاغذ بنویس
- سه Fault مختلف Area mismatch، passive-interface و MTU mismatch را در Lab ایجاد و Evidence هرکدام را ثبت کن
- سناریوی Neighbor FULL ولی Route Missing طراحی کن
- Before/After Output برای یک Change OSPF تهیه و نتیجه را مستند کن
نکتههایی که باید با خودت ببری
- Troubleshooting OSPF از Link/IP شروع میشود
- Interface State و Neighbor مرحله بعدی Control Plane هستند
- LSDB و Routing Table دو مرحله جدا هستند
- Data Plane نیازمند Return Path و Policy سالم است
- Change باید کوچک، قابل Verify و مستند باشد
خودسنجی
Neighbor در EXSTART/EXCHANGE ماند؛ یک فرضیه مهم چیست؟
MTU mismatch بین دو سمت یکی از فرضیههای مهم است.
FULL بودن Neighbor ولی Route Missing است؛ بعد چه میبینی؟
LSDB و Advertisement Prefix، سپس Routing Table.
چرا ping با Source مشخص مفید است؟
چون Reachability و Return Path همان Source Network واقعی را آزمایش میکند.
چرا clear ip ospf process اولین قدم نیست؟
چون Impact دارد و Root Cause را ثابت نمیکند.
منابع مرجع این درس
برای ذخیره پیشرفت وارد حساب شو
حساب کاربری برای آزمون و ثبت مرحلهها استفاده میشود