آیا IP Helper و DHCP Relay Agent دو چیز متفاوت در سیسکو هستند؟ امروز داشتم تو انجمن یه گشتی میزدم به چندین پست در مورد تنظیم DHCP Relay Agent تو سیسکو برخورد کردم. متاسفانه اکثر دوستان فکر می کنند IP Helper Address اسم دیگه (یا معادل اسمی) DHCP Relay Agent تو سیستم عامل های شبکه سیسکو هست. در واقع اینطور نیست! DHCP Relay Agent بودن یکی از وظایف دستور IP Helper هست!
برای درک موضوع مکانیزم DHCP Relay Agent رو توضیح میدم: وقتی سیستمی که نحوه آدرس گیری اون تو حالت DHCP تنظیم شده می خواد به شبکه بپیونده، یه بسته DHCP Discover رو به صورت Broadcast ارسال می کنه، این بسته به صورت UDP هست و از پورت های 67 و 68 استفاده می کنه. همونطور که می دونید روترها بسته های Broadcast رو Drop می کنند و از خودشون عبور نمیدن. بنابر این اگه ما چندین شبکه Ethernet LAN داشته باشیم باید برای هر LAN یه دونه DHCP سرور اختصاص بدیم. این کار نه به صرفه هست و نه عقلانی!
چاره چیه؟ میائیم از UDP بودن بسته های DHCP استفاده می کنیم و به روتر میگیم هر بسته DHCP ای که دریافت کردی اونو Encapsulate کن و به صورت Unicast درش بیار و بفرستش سمت Remote DHCP سرورمون که در یک LAN دیگه قرار داره (مثلاً LAN موجود در اتاق سرور).دستوری که تو سیسکو واسه تنظیم DHCP Relay Agent استفاده میشه دستور ip helper address هست. دستوری که به صورت پیش فرض بسته های DHCP رو تو بسته unicast کپسوله می کنه.
تا اینجای کار حق با دوستان بود، ip helper address همون کار DHCP relay agent رو انجام میده. ولی در واقع ip helper قابلیت اینو داره که هر بسته Broadcast که بصورت UDP هست رو به صورت unicast کپسوله کنه و بفرسته به مقصدی که شما تعیین می کنید! با دستور زیر میتونید پروتکل مورد نظر خودتونو توسط ip helper address به مقصد مورد نظر بفرستید:
R3(config)#ip forward-protocol udp
در زیر سناریویی رو خدمتتون معرفی می کنم که در عمل وظیفه ip helper رو ببینید:
طبق شکل زیر 3 تا روتر داریم:
می خواهیم کاری کنیم R1 و R3 با استفاده از پروتکل RIP با همدیگه تبادل جدول مسیریابی کنند (بدون اینکه از GRE Tunnel, Bridge, VPWS و... استفاده کنیم)! مگه میشه؟! بله میشه:
تنظیمات روتر R1:
enable conf t hostname R1 clock timezone THR 3 30 no ip icmp rate-limit unreachable no ip domain lookup ip cef ! interface Loopback0 ip address 200.1.1.1 255.255.255.0 ! interface Serial1/0 ip address 12.1.1.1 255.255.255.0 serial restart-delay 0 ! router rip no validate-update-source network 12.0.0.0 network 200.1.1.0 ! no ip http server no ip http secure-server ip route 23.1.1.0 255.255.255.0 12.1.1.2 ! end
تنظیمات روتر R2:
enable conf t ! hostname R2 ! clock timezone THR 3 30 no ip icmp rate-limit unreachable ! no ip domain lookup ip cef ! interface Ethernet0/0 ip address 23.1.1.2 255.255.255.0 ip helper-address 12.1.1.1 ! ! interface Serial1/0 ip address 12.1.1.2 255.255.255.0 ip helper-address 23.1.1.3 serial restart-delay 0 ! ip forward-protocol nd ip forward-protocol udp rip ! ip route 200.1.1.0 255.255.255.0 12.1.1.1 ip route 200.3.3.0 255.255.255.0 23.1.1.3 ! end
و تنظیمات روتر R3:
enable conf t ! hostname R3 ! clock timezone THR 3 30 no ip icmp rate-limit unreachable ! no ip domain lookup ip cef ! interface Loopback0 ip address 200.3.3.3 255.255.255.0 ! interface Ethernet0/0 ip address 23.1.1.3 255.255.255.0 ! router rip no validate-update-source network 23.0.0.0 network 200.3.3.0 ! ip route 12.1.1.0 255.255.255.0 23.1.1.2 ! end
دقت کنید روی هیچ کدام از اینترفیس های R2 پروتکل RIP فعال نشده! و اینم نتیجه:
R1(config)#do sh ip route rip | begin Gate Gateway of last resort is not set R 200.3.3.0/24 [120/1] via 23.1.1.3, 00:00:24 R1(config)#do ping 200.3.3.3 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 200.3.3.3, timeout is 2 seconds: !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 8/10/12 ms
R3(config)#do sh ip route rip | begin Gateway Gateway of last resort is not set R 200.1.1.0/24 [120/1] via 12.1.1.1, 00:00:08 R3(config)#do ping 200.1.1.1 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 200.1.1.1, timeout is 2 seconds: !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 10/10/11 ms
نتیجه گیری: ip helper چیزی فراتر از DHCP Relay Agent هست، DHCP Relay صرفاً برای encapsulate کردن بسته های DHCP که بصورت UDP با آدرس مقصد Broadcast هستند طراحی شده ولی IP Helper قادره هر بسته UDP که مقصد Broadcast داره رو encapsulate کنه و بصورت unicast در بیاره.امیدوارم از این نکته لذت برده باشید، فایل سناریو تو EVE-NG رو هم ضمیمه مطلب کردم، موفق و پیروز باشید.
متخصص شبکه های سیسکو و امنیت زیرساخت
مدرس دوره های CCIE Enterprise Infrastructure و CCIE Service Provider شرکت مشاوره و آموزشی Orhan Ergun LLC
زمان پاسخ گویی روز های شنبه الی چهارشنبه ساعت 9 الی 18
فقط به موضوعات مربوط به محصولات آموزشی و فروش پاسخ داده می شود