در این مقاله به DHCP و کارکرد آن در سوئیچهای Cisco Small Business میپردازیم. اما اجازه بدهید پیش از آن با خود این پروتکل با اهمیت و پرکاربرد در شبکه آشنا شویم.
DHCP چیست؟
این کلمه مخفف Dynamic Host Configuration Protocol است. پروتکل لایه هفتمی میباشد که در لایه چهارم از UDP استفاده میکند. وظیفه آن اختصاص دادن تنظیمات TCP/IP به کلاینت ها می باشد.
در ۴ مرحله صورت میگیرد. ابتدا کلاینت DHCP Discover را ارسال میکند. این بسته در هدر IP دارای مقصد Broadcast میباشد و در هدر UDP مقدار Source-Port آن برابر با ۶۸ (Bootpc) و Destination-Port آن برابر با ۶۷ (Bootps) است. بعد از این که DHCP Server این بسته را دریافت کرد، پیغام DHCP Offer را برای آن ارسال میکند که این بسته به صورت Unicast است و Source-Port آن ۶۷ و Destination-Port آن ۶۸ است. در مرحله سوم کلاینت بسته DHCP Request که برادکست است را ارسال میکند و تنظیمات را از سرور خواستار درخواست میکند. در مرحله آخر سرور با بسته Unicast معروف به DHCP ACK تنظیمات را به کلاینت اختصاص میدهد.
بعد از این که DHCP Server تنظیمات را به کلاینت اختصاص داد در جدول خود (DHCP Binding) اطلاعات کلاینت را یادداشت میکند. مثلا مشخص میکند این آدرس IP برای این کلاینت با این آدرس MAC تا این مدت اجاره داده شده است.
تنظیماتی که باید در DHCP انجام داد بسیار وسیع میباشد و خیلی از موارد آن به صورت اختیاری است. ولی مواردی که الزاما باید تنظیم شود Pool و Subnet میباشد. انجام تنظیماتی مانند Gateway, Hostname, DNS Server و… به صورت اختیاری میباشد.
تنظیمات اختیاری در DHCP در غالب DHCP Option تعریف میشوند که میتوانید آن ها را در سرور تعریف کنید. در لیست زیر معروفترین آنها را مشاهده میکنید:
Option 3 = Default Gateway Address
Option 15 = Domain Name
Option 6 = DNS Servers Address
Option 66 = TFTP Server Address
Option 4 = SNTP Server address
Option 7 = Log Server Address
Option 12 = Host name
Option 23 = Default IP TTL
Option 26 = Interface MTU
Option 38 = TCP Keepalive Interval
Option 33 = Inject Static Route
Option 35 = ARP Cache Timeout
Option 36 = Ethernet Encapsulation
Option 69 = SMTP Server Address
Option 70 = POP3 Server Address
DHCP در سوئیچهای سیسکو اسمال بیزینس
سوئیچ های Small Business این قابلیت را دارند در دو حالت L2 و L3 از DHCP Server پشتیبانی کنند.
با زدن گزینه DHCP Server Status بر روی سوئیچ DHCP را فعال کنید.
حال باید یک Pool تعریف کرده و تنظیمات DHCP را بر روی آن مشخص نمایید:
Pool Name: یک اسم به Pool بدهید.
Subnet IP Address: آدرس شبکه Pool را تعریف کنید، مثلا ۱۹۲.۱۶۸.۱.۰
Mask: در این قسمت Network Mask را مشخص کنید. مثلا برای شبکه ۱۹۲.۱۶۸.۱.۰/۲۴ برابر با ۲۵۵.۲۵۵.۲۵۵.۰ است.
Address Pool Start: اولین آدرسی که از Pool به کلاینت اختصاص میدهد.
Address Pool End: آخرین آدرسی که از Pool به کلاینت اختصاص میدهد.
Lease Duration: مدت زمانی که این تنظیمات را برای هر کلاینت اخصاص میدهد.
Default Router IP: آدرس Default Gateway ای که به کلاینت میدهد.
Domain Name Server IP Address: آدرس DNS Server که به کلاینت ها اختصاص میدهد.
SNTP Server IP Address: آدرس SNTP Server را مشخص میکند.
File Server Hostname: آدرس TFTP سروری که به کلاینتها میدهد.
Excluded Addresses: در این قسمت آدرسهای IP ای که رزرو کردید و نمیخواهید به کلاینتها از طریق DHCP اختصاص دهید را مشخص میکنید.
Static Hosts
در این قسمت مشخص میکنید که اگر کلاینت مشخصی با ID مشخصی درخواست DHCP ارسال کرد، DHCP سرور تنظیمات خاصی برای آن کلاینت اختصاص دهد.
به عنوان مثال اگر آدرس مک AA:AA:AA:AA:AA:AA درخواست ارسال کرد همیشه آدرس ۱۹۲.۱۶۸.۱.۱۰۰ را به آن اختصاص دهد.
منظور از ID مشخص یعنی میتواند این ID یا Client ID باشد که در DHCP مربوط به هر کلاینت مجزا اختصاص داده میشود و یا میتواند بر اساس MAC-Address باشد.
نکته: DHCP Server درخواستهای DHCP را به کمک Client ID و MAC Address از یکدیگر متمایز میکند.
نکته: یکی از معروفترین حملات DHCP، قحطی زدگی در DHCP یا DHCP Starvation Attack است که Attacker با MAC address های مختلف درخواست IP میکند و Pool سرور را خالی میکند. البته به کمک Port-Security در سوئیچ میتوان جلوی آن را گرفت و یا Attacker ها به کمک Client ID های مختلف درخواست IP میکنند.
روی گزینه Add کلیک کنید.
IP Address: آدرس IP تعیین شده را مشخص میکنید.
Hostname: اسم کلاینت را تعیین میکنید، به عنوان مثال : Desktop-Mali
Mask: طول شبکه یا Network Mask را مشخص کنید.
Identifier Type: شناسه تمایز کننده Host را معین میکنید. (مثلا این تنظیمات برای این آدرس مک یا این Client ID میباشد)
بقیه موارد نیز در قسمت Network Pool به آن پرداخته شده است.
DHCP Option: در این بخش تنظیمات اختیاری DHCP را میتوانید انجام دهید.
نکته: ابتدا باید Pool را بسازید سپس Option ها را مشخص کنید.
روی گزینه Add کلیک کنید.
به عنوان مثال Code 23 که مربوط به IP TTL میباشد را در مثال انتخاب کردهایم و Type آن به صورت عدد میباشد و مقدار (Value) آن را ۱۰۰ قرار دادهایم.
Address Binding
در این قسمت میتوانید جدول DHCP Binding را ببینید و تنظیماتی که به کلاینتها اختصاص داده شده است را مشاهده کنید.