چیتشیت کامل Cisco RIP (Routing Information Protocol)
راهنمای کامل RIP (Routing Information Protocol) روی سیسکو؛ از مفاهیم پایه تا Authentication، Redistribution، Filtering و فلوچارت کامل Troubleshooting.
۱. RIP چیست؟
RIP = Routing Information Protocol
نوع: Distance Vector
ویژگیهای اصلی:
- Dynamic Routing Protocol، نوع Distance Vector
- Metric = Hop Count
- حداکثر Hop Count قابل قبول = 15 (و 16 یعنی Unreachable)
- AD در RIP = 120
- از UDP Port 520 استفاده میکند (برای IPv4 RIP)
- RIPv1 = Classful، RIPv2 = Classless
- RIPv2 از VLSM/CIDR پشتیبانی میکند و Multicast آن
224.0.0.9است
۲. نسخههای RIP
| ویژگی | RIPv1 | RIPv2 |
|---|---|---|
| نوع | Classful | Classless |
| Subnet Mask در Update | ❌ | ✅ |
| VLSM | ❌ | ✅ |
| CIDR | ❌ | ✅ |
| Authentication | ❌ | ✅ |
| نوع ارسال | Broadcast | Multicast |
| مقصد Update | 255.255.255.255 |
224.0.0.9 |
| UDP Port | 520 | 520 |
IPv6: نسخهٔ معادل، RIPng (Routing Information Protocol next generation) است که روی UDP Port 521 کار میکند.
۳. مشخصات و Timers کلیدی RIP
| مشخصه | مقدار |
|---|---|
| Administrative Distance | 120 |
| Metric | Hop Count |
| حداکثر Hop معتبر | 15 |
| Unreachable | 16 |
| Update Timer | 30 ثانیه |
| Invalid Timer | 180 ثانیه |
| Hold-down Timer | 180 ثانیه |
| Flush Timer | 240 ثانیه |
مقادیر Timer بسته به IOS و تنظیمات میتوانند تغییر کنند.
تنظیم دستی Timers:
router rip
timers basic 30 180 180 240
ترتیب: <update> <invalid> <holddown> <flush>
۴. RIP Metric و انتخاب Route
RIP فقط از Hop Count بهعنوان Metric استفاده میکند:
R1 ---- R2 → 1 Hop
R1 ---- R2 ---- R3 → 2 Hops
R1 ---- R2 ---- R3 ---- R4 → 3 Hops
ترتیب انتخاب Route در RIP:
- Longest Prefix Match
- اگر Prefix برابر بود → Administrative Distance
- اگر Routing Protocol برابر بود → Metric (Hop Count)
مثال: بین 10.10.10.0/24 با 2 Hop و همان Prefix با 4 Hop، Route با 2 Hop انتخاب میشود.
۵. راهاندازی پایهٔ RIP
Router(config)# router rip
Router(config-router)# version 2
Router(config-router)# network 192.168.1.0
Router(config-router)# network 10.10.10.0
Router(config-router)# no auto-summary
networkدر RIP به معنای «همان Interfaceهایی را که IP آنها در Major Network مشخصشده قرار دارد، وارد RIP Process میکند» است — نه اینکه حتماً دقیقاً همان Prefix را Advertise کند.
مثال: اگر G0/0 = 10.10.10.1/24 و G0/1 = 192.168.1.1/24 باشد، با network 10.0.0.0 فقط اینترفیس اول وارد RIP میشود.
۶. Auto-Summary
router rip
no auto-summary
این دستور بسیار مهم است. بدون no auto-summary، RIP میتواند هنگام عبور از Classful Boundary، Routeها را به Major Network Summary تبدیل کند (مثلاً 10.1.1.0/24 و 10.2.2.0/24 به 10.0.0.0/8). برای شبکههای مدرن با VLSM و Discontiguous Networks، معمولاً no auto-summary انتخاب استاندارد است.
۷. Passive Interface
اگر نمیخواهیم روی یک Interface پیام RIP ارسال شود (اما همچنان Route خودش وارد RIP میشود):
router rip
passive-interface GigabitEthernet0/1
الگوی بسیار کاربردی — همه را Passive کن، فقط اینترفیسهای لازم رو فعال کن:
router rip
version 2
no auto-summary
passive-interface default
no passive-interface GigabitEthernet0/0
no passive-interface GigabitEthernet0/1
۸. RIP Default Route
router rip
version 2
default-information originate
این دستور باعث میشود Default Route محلی (ip route 0.0.0.0 0.0.0.0 <NEXT-HOP>) در RIP Advertise شود و Routerهای دیگر آن را دریافت کنند.
۹. RIP Authentication (فقط RIPv2)
key chain RIP_KEYS
key 1
key-string CISCO123
!
interface GigabitEthernet0/0
ip rip authentication key-chain RIP_KEYS
ip rip authentication mode md5
Authentication باید بین Routerهای همسایه سازگار باشد (همان Key Chain و Mode).
۱۰. تنظیم Version روی Interface
interface GigabitEthernet0/0
ip rip send version 2
ip rip receive version 2
میتوان نسخهٔ ارسال و دریافت را جدا کنترل کرد (مثلاً send version 1 2).
۱۱. RIP Neighbor
بهصورت پیشفرض RIP از Broadcast/Multicast استفاده میکند؛ برای تنظیم مستقیم یک Neighbor خاص:
router rip
version 2
neighbor 192.168.1.2
۱۲. مکانیزمهای جلوگیری از Loop
Split Horizon
قاعده: Route را از همان Interfaceای که آن را یاد گرفتهایم، دوباره Advertise نمیکنیم.
interface GigabitEthernet0/0
ip split-horizon # فعال (پیشفرض)
no ip split-horizon # غیرفعال
Route Poisoning
وقتی Route از بین میرود، Router آن را با Metric = 16 (Unreachable) دوباره Advertise میکند.
Poison Reverse
Router یک Route نامعتبر را با Metric=16 به سمت همان Neighbor که از او یاد گرفته، برمیگرداند (جلوگیری سریعتر از Loop).
Count to Infinity
مشکل معروف Distance Vector: بدون این مکانیزمها، Routerها ممکن است متریک یک Route از دسترفته را بهتدریج افزایش دهند تا به 16 (Infinity) برسد. Split Horizon و Route Poisoning این مشکل را کاهش میدهند.
۱۳. Route Summarization و Filtering
Summarization روی Interface:
interface GigabitEthernet0/0
ip summary-address rip 10.10.0.0 255.255.0.0
Distribute-list (فیلتر کردن Routeها — Permit/Deny):
access-list 10 permit 10.10.10.0 0.0.0.255
router rip
distribute-list 10 in
distribute-list 10 out
Offset-list (تغییر Metric):
router rip
offset-list 10 in 2
| ابزار | کاربرد |
|---|---|
| Distribute-list | فیلتر Route (Permit/Deny) |
| Offset-list | دستکاری Metric |
۱۴. Redistribution
router rip
default-metric 5
redistribute ospf 1 metric 2
redistribute static metric 1
redistribute connected metric 1
نکته: Redistribution میتواند باعث Routing Loop شود؛ در طراحی واقعی باید Filtering و Policy مناسب در نظر گرفته شود.
۱۵. Validate Update Source
router rip
validate-update-source # پیشفرض: فعال
no validate-update-source
Cisco IOS بهصورت پیشفرض Source IP پیامهای RIP را Validate میکند؛ بهتر است همینطور فعال بماند مگر سناریوی خاصی لازم باشد.
۱۶. مقایسهٔ AD با سایر پروتکلها
| منبع Routing | AD | نتیجه در Prefix یکسان با RIP |
|---|---|---|
| Static | 1 | Static برنده میشود |
| eBGP | 20 | eBGP برنده میشود |
| EIGRP Internal | 90 | EIGRP برنده میشود |
| OSPF | 110 | OSPF برنده میشود |
| RIP | 120 | — |
برای Floating Static با AD بالاتر از RIP (مثلاً AD=130)، تا وقتی RIP فعال است RIP انتخاب میشود؛ اگر RIP حذف شود، Static Backup فعال میشود.
۱۷. مثال کامل Configuration (دو Router)
# R1
interface GigabitEthernet0/0
ip address 192.168.12.1 255.255.255.0
no shutdown
interface GigabitEthernet0/1
ip address 10.10.10.1 255.255.255.0
no shutdown
router rip
version 2
no auto-summary
network 192.168.12.0
network 10.0.0.0
# R2
interface GigabitEthernet0/0
ip address 192.168.12.2 255.255.255.0
no shutdown
interface GigabitEthernet0/1
ip address 20.20.20.1 255.255.255.0
no shutdown
router rip
version 2
no auto-summary
network 192.168.12.0
network 20.0.0.0
نتیجه در Routing Table:
R1: R 20.20.20.0/24 [120/1] via 192.168.12.2
R2: R 10.10.10.0/24 [120/1] via 192.168.12.1
۱۸. Equal-Cost Paths و Maximum Paths
اگر چند مسیر با Prefix و Metric برابر وجود داشته باشد، RIP میتواند Equal-Cost Paths را همزمان نصب کند (Load Balancing). تعداد مسیرهای مجاز بسته به پلتفرم/IOS قابل کنترل است؛ بررسی با show running-config و show ip protocols.
۱۹. دستورات کلیدی Verification
show ip route
show ip route rip
show ip protocols
show ip rip database
show ip rip neighbors
show ip interface brief
show running-config
show running-config | section router rip
show running-config interface GigabitEthernet0/0
show arp
show access-lists
ping <NEIGHBOR>
traceroute <DESTINATION>
تفسیر خروجی show ip route:
R 10.10.20.0/24 [120/2] via 192.168.1.2
R = RIP، [120/2] = [AD / Metric] → AD=120, Metric=2 Hop.
۲۰. Debug
debug ip rip
undebug all # یا: no debug ip rip
نکته: Debug روی Production Router میتواند CPU و Console را تحت فشار قرار دهد؛ با احتیاط استفاده کن.
۲۱. چکلیست Troubleshooting
اگر RIP Route را نمیبینی، این موارد را بررسی کن:
router ripفعال استversion 2تنظیم شدهnetwork commandدرست است- Interface IP و وضعیت up/up است
passive-interfaceاشتباه تنظیم نشدهno auto-summaryدر صورت نیاز- Neighbor connectivity (ping) برقراره
- Authentication سازگاره
- ACL چیزی رو block نکرده
- Split Horizon مانع Advertise نشده
- Redistribution درست تنظیم شده
- به سقف Hop Count (15) نرسیده
فلوچارت Troubleshooting
RIP Problem
|
v
show ip interface brief
|
v
Interface Up?
/ \
NO YES
| |
Fix Interface v
show ip protocols
|
v
Version 2?
|
v
Network درست؟
|
v
Passive Interface؟
|
v
show ip rip database
|
v
Route Learned?
/ \
NO YES
| |
v v
Check Update show ip route rip
|
v
Authentication؟
|
v
ACL؟
|
v
debug ip rip
۲۲. RIP Cheat Table
| مشخصه | مقدار |
|---|---|
| Protocol Type | Distance Vector |
| Metric | Hop Count |
| حداکثر Hop معتبر | 15 |
| Infinity | 16 |
| AD | 120 |
| RIPv1 | Classful، مقصد 255.255.255.255 |
| RIPv2 | Classless، مقصد 224.0.0.9 |
| UDP (v1/v2) | 520 |
| UDP (RIPng) | 521 |
| Update Timer | 30s |
| Invalid Timer | 180s |
| Holddown Timer | 180s |
| Flush Timer | 240s |
۲۳. مرور ذهنی کامل RIP
RIP
|
+-- Distance Vector
+-- Metric = Hop Count (max 15, infinity 16)
+-- AD = 120
|
+-- RIPv1: Classful, Broadcast, No VLSM/CIDR
+-- RIPv2: Classless, Multicast 224.0.0.9, VLSM + CIDR
|
+-- Loop Prevention:
Split Horizon + Route Poisoning + Poison Reverse + Hold-down
جریان کلی تصمیمگیری Route:
1. Longest Prefix Match
2. اگر Prefix برابر: Administrative Distance
3. اگر Protocol برابر: Metric (Hop Count)
۲۴. سه قانون طلایی RIP
- RIP یک Distance Vector Protocol است.
- Metric در RIP فقط Hop Count است.
- بیشترین Hop قابل استفاده 15 است؛ 16 = Unreachable.
۲۵. یک خط برای حفظ کردن
RIP = Distance Vector + Hop Count + AD 120 + Max 15 Hops
+ RIPv2 Classless + 224.0.0.9 + UDP 520
+ Split Horizon + Route Poisoning + Hold-down
+ no auto-summary
