چیت‌شیت

چیت‌شیت کامل 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:

  1. Longest Prefix Match
  2. اگر Prefix برابر بود → Administrative Distance
  3. اگر 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

  1. RIP یک Distance Vector Protocol است.
  2. Metric در RIP فقط Hop Count است.
  3. بیشترین 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

← بازگشت به همه پست‌ها