شما اینجا هستید
معرفی و پیکربندی ISIS
IS-IS مخفف Intermediate system to Intermediate system است.
این پروتکل یکی از بهترین پروتکل ها برای مسیریابی در شبکه های بزرگ و خیلی بزرگ است و شباهت بسیار زیادی هم به OSPF دارد. پروتکل ISIS همانند پروتکل OSPF از مجموعه پروتکل های Link State محسوب می شود و روند کار به این صورت است که هر روتر اطلاعات لینک ها و روترهای متصل به خود را در شبکه منتقل میکند و بنابراین در هر روتر اطلاعات توپولوژی شبکه وجود خواهد داشت. سپس هر روتر با اجرای پروسه SPF بهترین مسیر را تا هر لینک در شبکه استخراج میکند و آن را در جدول مسیریابی قرار میدهد. تغییرات توپولوژی بلافاصله در شبکه منتقل میگردد و روترها با اجرای مجدد پروسه SPF جدول مسیریابی خود را به روز میکنند. پروتکل ISIS بیشتر در محیط های ISP و یا Service Provider ها دیده میشود که دلیل آن به تفاوت ساختار Area و همچنین شیوه ارسال اطلاعات لینکها در این دو پروتکل بر میگردد. در پروتکل ISIS ساختار چینش Area انعطاف پذیری بیشتری دارد و این محدودیت که در پروتکل OSPF نمی توانید مستقیما بین Area ها ارتباط داشته باشید در پروتکل ISIS وجود ندارد. در ISIS اطلاعات لینکهای ارسالی که LSP نامیده می شود فقط به دو دسته LSP L1 و LSP L2 تقسیم می شود و سادگی و سربار بسیار کمتری نسبت به OSPF دارد. این سربار کمتر آنقدر قابل ملاحظه است که ISIS را قابل استفاده برای محیط های بسیار بزرگ همچون Service Provider ها کرده است. باید در نظر داشت که اگر حداکثر ۵۰ روتر در یک Area از OSPF قابل تحمل است و بیش از آن حتما باید در Area متفاوتی قرار گیرد، در ISIS این عدد ۱۰۰۰ است. این ویژگی ISIS که میتوانید ۱۰۰۰ روتر را در یک Area قرار دهید بسیار برای سرویس دهنده ها جذاب است. ISIS به خاطر ویژگی مقیاس پذیری، این قابلیت را به سرویس دهنده ها می دهد که کل شبکه را فقط در یک Area در نظر بگیرند و در این صورت است که می توانند به صورت کامل سرویس مهندسی ترافیک را در شبکه بکار ببندند و در هزینه های زیرساخت صرفه جویی بسیار زیادی ایجاد نمایند.
ISIS ابتدا برای OSI طراحی شده بود و به خاطر اینکه در حال حاضر بیشتر از TCP/IP استفاده میشود مجدد ISIS را توسعه دادند و پروتکلی به نام Integrated IS-IS ایجاد شد که قدرت و سرعت و کلیه مزایایISIS را داراست و از IP نیز پشتیبانی میکند. از جمله ویژگی های خوب IS-IS پشتیبانی همزمان IPv6 و IPv4 میباشد.
در مدل OSI به جای IP یک نوع آدرس به نام NET مورد استفاده قرار میگیرد.
NET از سه بخش تشکیل شده است:
· Area Address
· System ID
· N-SEL
شکل ۱- ساختار NET
به عنوان مثال آدرس زیر را در نظر بگیرید.( آدرس برای خواندن باید از سمت راست خوانده شود.)
۴۹.۰۰۰۲.۴۴۴۴.۴۴۴۴.۴۴۴۴.۰۰
آدرسی بر مبنای hex که مانند MAC و IPv6 مقادیری بین ۰ تا ۹ و A تا FF را می پذیرد.
۰۰: این مقدار در شبکههای per platform بکار رفته و مشخص کننده این است که دیوایس یک IS و یا همان روتر است.
۴۴۴۴.۴۴۴۴.۴۴۴۴: آدرسی اختیاری که شناسه روتر است و روتر را منحصر به فرد می کند. معمولا با توجه به سایزی که برابر با آدرس MAC دارد از MAC روتر که مقداری منحصر به فرد است استفاده می شود.
۴۹.۰۰۰۲: در حقیقت همان ناحیه یا Area با مفاهیم بیان شده در OSPF می باشد.
به طور کلی سه نوع IS شناخته شده وجود دارد:
- LEVEL-1
- LEVEL-2
- LEVEL-1-2
برای مشخص کردن نوع روتر خود یکی از این موارد در روتر مورد نظر فعال می شود و در صورت فعال نشدن مقدار پیش فرض LEVEL-1-2 می باشد.
LEVEL-1: این روتر ها اطلاعات مربوط به کلیه روترهای موجود در یک ناحیه که LEVEL-1 هستند را به عنوان یک دیتابیس یکسان در خود نگه می دارد. دیتابیسی که مشخص کننده بهترین مسیرها برای رسیدن به هر روتر در آن ناحیه مورد نظر است.
LEVEl-2 یا LEVEl-2-Only : این روترها اطلاعات و دیتابیس مربوط به IS های بین ناحیه ای را نگه داشته و با هم تبادل میکنند. LEVEL-2 مثل روتر های AREA 0 در OSPF هستند.
LEVEL-1-2 :این روتر ها دارای دو دیتابیس هستند. با دیتابیس level-2 با روتر های level-2 ( و یا بخش level-2 یک روتر level-1-2 دیگه) تبادل اطلاعات می کنند و با بخش Level-1 خود با دیتابیس روتر های Level-1 دیگر و یا بخش Level-1 یک روتر level-1-2 دیگر که در ناحیه خودشان هستند اطلاعات تبادل می کنند. این روتر مانند روتر ABR در OSPF است.
به طور کلی یک روتر L1 میتواند با یک روتر L1 و یا L1/L2 ارتباط همسایگی تشکیل بدهد. یک روتر L2 می تواند با یک روتر L2 دیگر و یا L1/L2 رابطه برقرار کند. یک روتر L1/L2 میتواند با بخش L2 خودش با یک روتر L2 و با بخش L1 خودش با یک روتر L1 ارتباط داشته باشد.
نکاتی که باید در تعیین Levelها در نظر گرفت:
۱- بین نواحی حتما L2 باشد.
۲- L2 باید به صورت پیوسته باشد و گسستگی نداشته باشد.
- IS-IS Hello Packets(IIH)
- Link State Packets(LSP)
- Complete Sequence Number Packets(CSNP)
- Partial Sequence Number Packets(PSNP)
IS-IS Hello Packets(IIH)
روترهای ISIS با ارسال و دریافت بسته های Hello همسایه های خود را شناسایی و دنبال میکنند که به صورت پیش فرض هر ۱۰ ثانیه یکبار منتقل میگردد.
در پروتکل ISIS دو نوع بسته Hello وجود دارد. بسته hello ارسالی روی اینترفیس های LAN از بسته Hello ارسالی روی اینترفیس های Point-to-Point متفاوت است. ضمنا بسته Hello ارسالی روی اینترفیس های LAN، خود نیز دو نوع L1 و L2 دارد. به عبارت دیگر بسته Hello ای که توسط روترهای L1 روی اینترفیس های LAN ارسال می گردد از بسته Hello روترهای L2 که روی همان اینترفیس ارسال می شود، مجزا است. بنابراین چنانچه دو روتر روی یک LAN هر دو از نوع L1/L2 باشند، دو همسایگی مستقل یکی برای L1 و یکی برای L2 ایجاد می گردد. اما روی اینترفیس های Point-to-Point فقط یک نوع بسته Hello ارسال میشود که هم اطلاعات روتر L1 و هم اطلاعات روتر L2 در آن وجود دارد.
اطلاعاتی که در LAN Hello ارسال می شود شامل موارد زیر می باشد.
• System Id روتری که بسته Hello را ارسال میکند.
• Priority که برای انتخاب DIS (معادل DR در OSPF است. در ISIS مفهوم Backup DIS وجود ندارد) بکار گرفته میشود.
• LAN ID که با اضافه کردن یک بایت به system id روتر DIS شکل میگیرد. دلیل اضافه شدن این یک بایت این است که اگر همین روتر DIS مجددا برای LAN دیگری نیز DIS شد، از این یک بایت بتوان برای تفکیک این دو DIS استفاده کرد.
• آدرس Area
• لیست روترهای همسایه
• اطلاعات Authentication
• آدرس IP اینترفیس
• لیست پروتکل هایی که پشتیبانی می کند
اطلاعاتی که در Point-to-Point Hello ارسال می شود، عینا همانند بسته LAN Hello است با این تفاوت که فیلد های LAN ID و priority را ندارد اما یک بایت Circuit Id دارد که مشخص کننده اینترفیس روتر است.
شکل ۲-IS-IS Hello Packets(IIH)
Link State Packets(LSP)
وقتی تغییری در توپولوژی شبکه رخ می دهد، روتر و یا روترهایی که تغییرات توپولوژی را به طور مستقیم مشاهده میکنند، تغییر را با ارسال LSP جدید به کلیه روترهای شبکه اطلاع رسانی میکنند. تغییرات ممکن است تغییر متریک یک لینک باشد و یا آنکه مواردی همچون قطعی لینک و یا حتی اضافه شدن لینک جدید در ISIS باشد. روترهایی که مستقیما به این لینک متصل هستند، تغییرات را بدون کمک ISIS مشاهده می کنند و آن را از طریق ارسال LSP جدید به کلیه روترهای شبکه اطلاع رسانی می کنند. البته گاهی نیز تغییر با کمک ISIS مشاهده می شود. مثلا وقتی که در زمان hold time هیچ بسته hello ای از روتر همسایه دریافت نمی شود.
وقتی روترهای همسایه متوجه تغییر LSP می شوند، ضمن به روز رسانی دیتابیس خود، آن را به دیگر همسایه ها نیز ارسال میکنند. هر روتر با ارسال PSNP به مبدا، دریافت تغییر LSP را تایید می نماید. سپس هر روتر به صورت مستقل با اجرای مجدد پروسه SPF روی دیتابیس، جدول مسیریابی خود را به روز می کند.
شکل ۳-Link State Packets(LSP)
شکل ۴- بروز رسانی جدول روتینگ
احراز هویت در ISIS با دیگر پروتکل های مسیریابی کمی متفاوت و کمی هم عجیب است. در ISIS دو نوع احراز هویت وجود دارد. احراز هویت روی بسته Hello و احراز هویت روی دیگر بسته های ISIS مانند LSP، CSNP و PSNP از همدیگر متفاوت هستند. احراز هویت روی بسته Hello در سطح لینک انجام میگیرد.
با توجه به نوع لینک میتوان احراز هویت را برای L1 Hello جدا از L2 Hello انجام داد. به عبارت دیگر در لینک های LAN که L1 Hello جدا از L2 Hello ارسال میگردد، میتوان برای هر یک جداگانه احراز هویت انجام دارد اما در لینک های Point-to-Point که فقط یک نوع Hello ارسال میگردد، احراز هویت L1 با L2 یکسان می باشد.
نوع دوم احراز هویت مربوط به دیگر بسته های ISIS است. از آنجایی که روترها حق تغییر بسته های ISIS را ندارند، لذا احراز هویت بسته های ISIS با توجه به L1 و یا L2 بودن بسته ISIS در کلیه روترهای Area و یا حتی دامنه انجام میگیرد. به عبارت دیگر در این نوع احراز هویت که در سطح پروسه ISIS فعال میگردد، چنانچه برای بسته های L1 فعال گردد، همه روترهای Area باید از رمز یکسان استفاده کنند و اگر برای بسته های L2 فعال گردد، در آن صورت همه روترهای ISIS باید از یک رمز یکسان استفاده کنند که به نوعی نقطه ضعف امنیتی نیز محسوب می شود.
بنابراین در ISIS برای احراز هویت همسایگی آن را در سطح لینک فعال می کنید اما برای احراز هویت بسته های ISIS، در سطح پروسه ISIS برای بسته های L1 و یا L2 فعال خواهیم نمود. در جاهایی که L1 و یا L2 بودن در احراز هویت تعیین نگردد، هر دو شامل خواهند شد.
قبل از پرداختن به شیوه پیکربندی احراز هویت در ISIS ذکر چند نکته دیگر نیز ضروری به نظر می رسد. اول آنکه چنانچه احراز هویت بین روترهای همسایه فعال گردد، آنگاه روترهای غیر مجاز قادر به تشکیل همسایگی نخواهند بود. در چنین شرایطی حتی اگر این روترها بسته های ISIS با رمز درست نیز ارسال نمایند، از آنها پذیرفته نخواهد شد. نکته دوم اینکه احراز هویت در پروتکل مشابه OSPF به دو پارامتر key و key id وابسته است اما در ISIS پارامتر key id صرفا محلی است و در احراز هویت هیچ تاثیری ندارد و در هیچ یک از بسته های ISIS منتقل نمیشود.
Router(config-router)#isis authenticanion mode md5/ text
Router(config-router)#isis authentication key-chain NAME Level-1/Level-2
***************************************
Router(config-router)# authenticanion mode md5/ text
Router(config-router)# authenticanion mode md5 Level-1/Level-2
Router(config-router)#iauthentication key-chain NAME Level-1/Level-2
در پروتکل ISIS نیز همانند همه پروتکل های مسیریابی برای تشکیل همسایگی لازم است تا بعضی از پارامترهای روترهای همسایه با هم مطابقت داشته باشد. بعضی از مواردی که در تشکیل همسایگی ISIS مهم است به شرح ذیل هستند
• برای تشکیل همسایگی L1 یکسان بودن شماره Area، که در آدرس NET تعیین شده است، ضروری است اما برای تشکیل همسایگی L2 یکسان بودن شماره Area اهمیت ندارد
• در ISIS همانند EIGRP یکسان بودن hello time و hold time بین دو روتر همسایه ضروری نیست و هر روتر با توجه به hello time تعیین شده در روتر همسایه انتظار بسته hello را دارد
• یکسان بودن اطلاعات authentication بین روترهای همسایه ضروری است.
در ISIS سه حالت همسایگی زیر وجود دارد
DOWN: این بدان معنی است که در بازه hold time از آن همسایه بسته hello دریافت نشده است
INITIALIZING: در این حالت بسته hello از همسایه دریافت شده است اما همسایه، بسته hello این روتر را دریافت نکرده است. در بسته hello فیلد is-neighbors وجود دارد که لیست روترهایی که در هر اینترفیس، hello آنها دریافت میگردد، در بسته hello ارسالی روی همان اینترفیس قرار داده می شود. بنابراین اگر hello همسایه دریافت شد اما در فیلد is-neighbors آدرس این روتر نباشد، روتر متوجه میشود که همسایه هنوز hello او را دریافت نکرده است
UP: حالت همسایگی UP بدین معنی است که دو طرف hello یکدیگر را دریافت نموده اند و همچنین از نظر پارامترهای پروتکل ISIS با یکدیگر توافق دارند. به عنوان مثال در صورت فعال بودن authentication، اطلاعات رمز بین طرفین یکسان است.
فهرست دستوراتی که برای پیکربندی ISIS نیاز است در زیر بیان شده است.
۱- enable
۲- configure terminal
۳- interface type number
۴- ip address ip-address mask [secondery]
۵- ip router isis [area tag]
۶- router isis
۷- net
۸- end
در جدول۱ جزئیات عملکرد هر کدام از دستورات بالا بیان شده است.
جدول ۱- فهرست دستورات جهت تنظیمات ISIS به همراه بیان عملکرد هر دستور
عملکرد |
دستور |
مرحله |
با اجرای این دستور وارد مرحله سطح دسترسی Exec می شوید.
|
enable مثال: Router>enable Router# |
مرحله اول |
وارد مرحله global روتر می شوید. |
Configure terminal مثال: Router# configure terminal Router(config)# |
مرحله دوم |
معرفی روتر IS_IS در اینترفیس |
Router(config )# interface type number مثال:
Router(config )# interface fastethernet 0/1 |
مرحله سوم |
معرفی آدرس
|
Router(config -if)# ip address ip-address mask [secondery]
مثال: Router(config -if)# ip address 192.168.0.1 255.255.255.0 |
مرحله چهارم |
یک تگ را به ISIS اختصاص می دهد .اگر tag مشخص نشود به صورت پیش فرض tag صفر را اختصاص می دهد. |
Router(config -if)#ip router isis [area tag] مثال: Router(config -if)#ip router isis
|
مرحله پنجم |
کانفیگ NET برای دادن NSAP به روتر |
Router(config-router)#net network-entity-title مثال: Router(config-router)# net 49.0001.0000.0000.000b.00
|
مرحله ششم |
شکل ۵- سناریو ISIS
Router A Configuration
Router isis
net 49.0001.0000.0000.000a.00
interface ethernet0/0
ip address 10.1.1.1 255.255.255.0
ip router isis
interface serial 2/0
ip router isis
ip address 192.168.1.2 255.255.255.0
Router B Configuration
Router isis
net 49.0001.0000.0000.000b.00
interface ethernet0/0
ip router isis
ip address 172.17.1.1 255.255.255.0
interface serial2/0
ip router isis
ip address 192.168.1.1 255.255.255.0
interface serial5/0
ip router isis
ip address 172.21.1.1 255.255.255.0
Router C Configuration
Router isis
net 49.0001.0000.0000.000c.00
interface ethernet2/0
ip router isis
ip address 172.21.1.2 255.255.255.0
interface serial5/0
ip router isis
ip address 172.22.1.1 255.255.255.0
فهرست دستورات نمایشی و دستورات بررسی برقراری ارتباط در زیر بیان شده است.
جدول ۲- بیان دستورات نمایشی و درستی یابی و عملکرد هر دستور
عملکرد |
دستور |
|
RouterB# show isis topology IS-IS paths to level-1 routers System Id Metric Next-Hop Interface SNPA RouterA 10 RouterA Se2/0 *HDLC* RouterB -- RouterC 10 RouterC Se5/0 *HDLC* IS-IS Paths to level-2 routers System Id Metric Next-Hop Interface SNPA RouterA 10 RouterA Se2/0 *HDLC* RouterB -- RouterC 10 RouterC Se5/0 *HDLC*
RouterB#show isis database IS-IS Level-1 Link State Database: LSPID LSP Seq Num LSP Checksum LSP Holdtime ATT/P/OL RouterA.00-00 0x00000005 0x1A1D 1063 0/0/0 RouterB.00-00 * 0x0000000 60xD15 B111 80/0/0 RouterC.00-00 0x000000040 x3196 1133 1/0/0 IS-IS Level-2 Link State Database: LSPID LSP Seq Num LSP Checksum LSP Holdtime ATT/P/OL
RouterA.00-00 0x00000008 0x0BF4 1136 0/0/0 RouterB.00-00 * 0x00000008 0x1701 1137 0/0/0 RouterC.00-00 0x00000004 0x3624 1133 0/0/0
RouterB# show ip route Codes: C - connected, S - static, R - RIP, M - mobile, B - BGP D - EIGRP, EX – EIGRP external, O - OSPF, IA – OSPF inter area N1 – OSPF NSSA external type 1, N2 – OSPF NSSA external type 2 E1 – OSPF External type 1, E2 – OSPF External type 2 i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2 ia - IS-IS inter area, * - candidate default, U - per-user Static route o - ODR, P - periodic Downloaded static route Gateway of last resort is not set ۱۷۲.۱۷.۰.۰/۲۴ is subnetted,1 subnets C 172.17.1.0 is directly connected, Ethernet0/0 172.16.0.0/24 is subnetted,1 subnets C 172.16.1.0 is directly connected, Serial4/0 172.21.0.0/24 is subnetted,1 subnets C 172.21.1.0 is directly connected, Serial5/0 172.22.0.0/24 is subnetted,1 subnets i L1 172.22.1.0 [115/20] via 172.21.1.2, Serial5/0 10.0.0.0/24 is subnetted,1 subnets i L1 10.1.1.0 [115/20] via 192.168.1.2, Serial2/0 C 192.168.1.0/24 is directly connected, Serial2/0 C 192.168.3.0/24 is directly connected, Serial3/0
RouterB#show isis spf-log Level 1 SPF log When Duration Nodes Count First trigger LSP Triggers ۰۰:۰۱:۳۰ ۰ ۳ ۷ RouterB.00-00 PERIODIC NEWADJ NEWLSP TLVT Level 2 SPF log When Duration Nodes Count First trigger LSP Triggers ۰۰:۰۱:۳۱ ۰ ۳ ۷ RouterB.00-00 PERIODIC NEWADJ NEWLSP TLVT
RouterB#show isis neighbors System Id Type Interface IP Address State Holdtime Circuit Id ۰۰۰۰.۰۰۰۰.۰۰۰۲ L1 Et0/0 192.168.128.2 UP 21 R3.02 ۰۰۰۰.۰۰۰۰.۰۰۰۲ L2 Et0/0 192.168.128.2 UP 28 R3.02 |