شما برای مطالعه این مقاله فقط 8 دقیقه وقت نیاز دارید

install-dhcp-server-on-linux

نحوه نصب و پیکربندی DHCP سرور در اوبونتو، دبیان و CentOS

5/5 - (1 امتیاز)

DHCP یک پروتکل شبکه است که بر اساس معماری client-server، آدرس آی پی دستگاه های موجود در شبکه را به صورت خودکار تنظیم می کند و به این ترتیب دیگر نیازی به این نیست که خودتان به صورت دستی به هر کدام از دستگاه ها آی پی استاتیک اختصاص دهید.

شما با نصب و پیکربندی DHCP سرور در لینوکس خود، در واقع می خواهید در شبکه خود یک سرویس DHCP ایجاد کنید که کارهای مربوط به تخصیص خودکار آی پی و تنظیمات دیگر را برای سایر دستگاه های موجود در شبکه یا به اصطلاح کلاینت های DHCP انجام دهد.

این کار با مزایای زیادی همراه است که صرفه جویی در زمان، مدیریت بهینه تر منابع، ارتقا امنیت و آپدیت خودکار رکوردهای DNS از مهم ترین آنها هستند.

 DHCP سرور چگونه کار می کند؟

دستگاه های کامپیوتری به طور پیش فرض دارای آدرس آی پی نیستند (مگر اینکه قبلاً یک آی پی استاتیک به آنها اختصاص داده شده باشد). یک دستگاه بدون آی پی برای سایر دستگاه های موجود در شبکه، غیرقابل شناسایی و غیرقابل دسترس است. 

حالا برای اینکه دستگاه های موجود در شبکه بتوانند با هم ارتباط برقرار کنند، می توانید به صورت دستی به همه آنها آی پی اختصاص دهید یا اینکه اجازه دهید DHCP سرور این کار را به صورت خودکار انجام دهد و این بار را از دوش شما بردارد.

به این ترتیب، اگر DHCP server را در سیستم خود راه اندازی کنید، دستگاه ها هر بار بعد از اینکه بوت می شوند، یک درخواستی به اسم DHCP Discover را به سرور DHCP ارسال می کنند.

این سرور هم که مسئول پاسخگویی به این درخواست ها است، یک پیام پاسخ تحت عنوان DHCP Offer را به کلاینت موردنظر ارسال می کند که حاوی اطلاعات مهمی مثل آدرس آی پی، آدرس دروازه پیش فرض و آدرس آی پی سرور DNS است.

بعد از اینکه کلاینت یا دستگاه موردنظر این درخواست را دریافت کرد، مجدداً یک پیام به سرور DHCP ارسال می کند تا تایید کند که اطلاعات ارسالی سرور را با موفقیت دریافت و قبول کرده است.

جا دارد به این نکته هم اشاره کنیم که چون سرور DHCP مسئول پاسخگویی به درخواست های کلاینت های موجود در شبکه است، تمام آی پی هایی که اختصاص می دهد را ثبت و بررسی می کند تا کارکرد شبکه به خاطر تکراری بودن یا نامعتبر بودن آدرس ها به خطر نیافتد.

به همین خاطر سعی کنید در شبکه خود فقط یک DHCP Server داشته باشید تا از مسائلی مثل تداخل در تخصیص آدرس‌های IP، پیچیدگی در مدیریت و همگام سازی تنظیمات جلوگیری کنید.

پیش نیازهای نصب DHCP Server در لینوکس

  • سرور مجازی لینوکس برای میزبانی از DHCP Server
  • اطمینان از تنظیمات درست سرور ( آدرس آی پی استاتیک، آدرس subnet mask و آدرس دروازه)
  • دسترسی روت یا sudo به سرور
  • اطمینان از اتصال اینترنتی یا شبکه محلی 
  • اطمینان از درستی ساختار شبکه
  • بکاپ گیری از فایل های پیکربندی فعلی 
  • یادداشت آدرس کارت شبکه

نصب DHCP سرور در اوبونتو – دبیان

قبل از نصب dhcp server، ابتدا باید لیست پیکج های ریپازیتوری پیش فرض سیستم را آپدیت کنید تا به آخرین نسخه پکیج این سرور دسترسی داشته باشید:

sudo apt update

سپس، پکیج isc-dhcp-server را نصب کنید:

sudo apt install isc-dhcp-server

این دستور، DHCP سرور و تمام وابستگی های آن را نصب می کند.

نصب DHCP سرور در centos

ابتدا ریپازیتوری سیستم را آپدیت کنید:

sudo yum update
یا
sudo dnf update

سپس دستور نصب dhcp server در centos را اجرا کنید:

sudo yum -y install dhcp
یا
sudo dnf -y install dhcp-server

حالا که dhcp server را در سرور لینوکس خود راه اندازی کردید، نوبت به پیکربندی آن می رسد.

پیکربندی سرور DHCP برای پاسخگویی به درخواست کلاینت

فایل پیکربندی اصلی این سرور در همه توزیع های اوبونتو، دبیان و CentOS در مسیر /etc/dhcp/dhcpd.conf قرار دارد که با استفاده از آن می توانید نحوه هندل کردن و پاسخ دادن سرور به درخواست کلاینت های موجود در شبکه را پیکربندی کنید.

البته قبل از ویرایش این فایل، بهترین کار این است که از فایل پیکربندی DHCP server یک فایل بکاپ تهیه کنید تا بعدا در صورت نیاز از آن کمک بگیرید.

برای این کار می توانید از دستور cp یا mv در لینوکس استفاده کنید:

sudo mv /etc/dhcp/dhcpd.conf{,.backup}

این دستور در همین مسیر یک فایل بکاپ به اسم dhcpd.conf.backup ایجاد می کند.

حالا می توانید شروع به پیکربندی فایل DHCP server کنید.

۱) فایل پیکربندی را با ویرایشگر دلخواه خود باز کنید.

sudo nano /etc/dhcp/dhcpd.conf

* بعد از اعمال هر گونه تغییر در این فایل، به ترتیب دکمه ترکیبی ctrl + o و ctrl + x را فشار دهید تا تغییرات ذخیره شوند و ویرایشگر nano هم بسته شود.

۲) رابط شبکه موردنظر را تعیین کنید.

شبکه شما می تواند رابط های زیادی باشد و شما باید حتماً مشخص کنید که این سرور باید به کدام رابط گوش بدهد.

برای مشاهده لیست رابط های شبکه می توانید از دستور  زیر استفاده کنید:

ip a

بعد اینکه اسم رابط شبکه موردنظر را پیدا کردید، باید آن را به صورت زیر در فایل پیکربندی dhcpd لحاظ کنید:

INTERFACESv4="eth0"

eth0 را با اسم رابط موردنظر خود جایگزین کنید 

۳) قابلیت اختصاص آی پی به صورت داینامیک را فعال کنید.

مهم ترین کاری که از سرور DHCP انتظار می رود، اختصاص آدرس آی پی به صورت داینامیک و خودکار است که این کار را هم به صورت تصادفی انجام می شود. 

فایل پیکربندی زیر برای تنظیم این ویژگی ها در سرور DHCP است که باید مقادیر پارامترهای آن را متناسب با اطلاعات شبکه خود تغییر دهید تا به کلاینت های متصل به شبکه ارسال شود.

option domain-name “example.com”;

option domain-name-servers 8.8.8.8, 8.8.4.4;

default-lease-time 600;

max-lease-time 7200;

کلیک کنید  آموزش کار با دستور Tail در لینوکس همراه با مثال های عملی

subnet 192.168.1.0 netmask 255.255.255.0 {

range 192.168.1.10 192.168.1.50;

option routers 192.168.1.1;

option subnet-mask 255.255.255.0;

option broadcast-address 192.168.1.255;

}

Domain-name: نام دامنه

domain-name-servers: آدرس سرورهای DNS

default-lease-time: مدت زمان پیش فرض اجاره آی پی های اختصاص داده شده به کلاینت ها ( ۶۰۰ ثانیه = ۱۰ دقیقه)

max-lease-time: حداکثر زمان اجاره آدرس های اختصاص داده شده به کلاینت ها (۷۲۰۰ ثانیه = ۲ ساعت)

Subnet: آدرس شبکه محلی

netmask: آدرس ماسک زیرشبکه

range 192.168.1.10 192.168.1.50: محدوده آدرس های آی پی موردنظر برای دستگاه های موجود در شبکه 

اگر آدرس شبکه، 192.168.1.0 باشد، 192.168.1.10 – 192.168.1.50 یک نمونه از این محدوده هستند.

routers: آدرس دروازه پیش فرض

broadcast-address: آدرس موردنیاز برای ارتباط دستگاه های شبکه با یکدیگر

۴) قابلیت اختصاص آی پی استاتیک را فعال کنید.

اگر کلاینت خاصی را مدنظر دارید و می خواهید کاری کنید که همیشه یک آدرس ثابت و مشخص را دریافت کند، باید آدرس MAC آن را در اختیار سرور DHCP قرار دهید.

برای اطلاع از آدرس مک دستگاه موردنظر، کافیست خط فرمان را در آن دستگاه باز کنید و دستور زیر را اجرا کنید:

ip a

آدرس مک موردنیاز برای پیکربندی DHCP سرور

باید آدرس مک رابط شبکه ای که برای سرور DHCP انتخاب کرده اید را پیدا کنید و آن را کپی کنید.

سپس فایل پیکربندی را باز کنید.

آدرس مک را به صورت زیر در فایل پیکربندی لحاظ کنید.

host archmachine {

hardware ethernet e0:91:53:31:af:ab;

fixed-address 192.168.1.20;

}

این کد، آدرس آی پی 192.168.1.20 را به کلاینتی اختصاص می دهد که دارای آدرس مک e0:91:53:31:af:ab است.

اسم archmachine اختیاری است و می توانید آن را بر اساس یک ویژگی برجسته کلاینت موردنظر مشخص کنید که بعداً شناسایی آن برایتان راحت باشد.

۵) رابط های شبکه را برای سرور dhcp مشخص کنید.

سرور dhcp باید از اسم رابط های موردنظر شما اطلاع داشته باشد تا برای همه آنها به صورت فعال سرویس دهد.

پس اسم رابط یا رابط های شبکه موردنظر خود را با استفاده از پارامتر DHCPDARGS در فایل پیکربندی سرور DHCP لحاظ کنید.

DHCPDARGS=eth0

این دستور به سرور می گوید که برای رابط eth0 فعال باشد.

اگر می خواهید این سرویس برای تمام رابط های شبکه فعال باشد، کافیست از وایلد کارت * استفاده کنید:

DHCPDARGS=*

در آخر کار، باید نمای فایل پیکربندی dhcp شما مشابه نمونه زیر باشد:

INTERFACESv4=”eth0″

option domain-name “example.com”;

option domain-name-servers 8.8.8.8, 8.8.4.4;

default-lease-time 600;

max-lease-time 7200;

subnet 192.168.1.0 netmask 255.255.255.0 {

range 192.168.1.10 192.168.1.50;

option routers 192.168.1.1;

option subnet-mask 255.255.255.0;

option broadcast-address 192.168.1.255;

}

host archmachine {

hardware ethernet e0:91:53:31:af:ab;

fixed-address 192.168.1.20;

}

DHCPDARGS=eth0

فعال سازی و اجرای سرویس DHCP

حالا که کارتان تقریباً تمام است، می توانید سرور مربوط به DHCP را استارت بزنید. 

ابتدا بهتر است که پورت های udp که مربوط به ترافیک DHCP هستند (۶۷ یا ۶۸) را باز کنید تا فایروال به اشتباه مانع ورود-خروج ترافیک مربوط به سرور DHCP نباشد.

فعال کردن DHCP در اوبونتو – دبیان

sudo ufw allow 67/udp

sudo ufw allow 68/udp

sudo ufw reload

فعال کردن DHCP در  centos

sudo firewall-cmd --zone=public --add-port=67/udp --permanent

sudo firewall-cmd --zone=public --add-port=68/udp --permanent

sudo firewall-cmd --reload

سپس با اجرای دو دستور زیر، سرویس DHCP را اجرا کنید و با enable کردن آن، قابلیت اجرای خودکار بعد از بوت سرور را فعال کنید:

اجرای سرویس DHCP در اوبونتو – دبیان

sudo systemctl start isc-dhcp-server.service

sudo systemctl enable isc-dhcp-server.service

اجرای سرویس DHCP در CentOS

sudo systemctl start dhcpd

sudo systemctl enable dhcpd

بعد از اینکه این سرویس را فعال کردید، وقت آن است که وضعیت آن را بررسی کنید و اجرای موفقیت آمیز آن مطمئن شوید:

بررسی وضعیت DHCP در اوبونتو – دبیان

sudo systemctl status isc-dhcp-server.service

بررسی وضعیت DHCP در CentOS

sudo systemctl status dhcpd

پیکربندی کلاینت DHCP برای دریافت آی پی از سرور DHCP

حالا که پیکربندی های مربوط به سرور DHCP تمام شده است، وقت آن است که کلاینت ها را هم برای درخواست آی پی از این سرور آماده کنید.

تنظیم دریافت ip خودکار در سیستم لینوکس

بعد از اینکه وارد دستگاه موردنظر شدید، ترمینال را باز کنید و دستور زیر را اجرا کنید:

sudo nmtui

* اگر این ابزار در سیستم شما نصب نیست، ابتدا آن را نصب کرده و سپس از آن استفاده کنید.

توزیع های مبتنی بر دبیان مثل اوبونتو 

sudo apt-get install network-manager

sudo apt install network-manager-tui

توزیع های مبتنی بر RHEL مثل centos

sudo dnf install NetworkManager-tui

توزیع opensuse

sudo zypper install NetworkManager-tui

توزیع Archlinux

sudo pacman -Sy networkmanager

گزینه Edit a connection را انتخاب کنید.کلیک روی edit a connection

رابط شبکه موردنظر را انتخاب کنید. کلیک روی edit

* این رابط باید در لیست مربوط به پارامتر DHCPDARGS قرار داشته باشد.

فیلدهای IPv4 Configuration و IPv6 Configuration را در حالت Automatic قرار دهید.تنظیم دریافت آدرس به صورت خودکار با nmtui

روی ok کلیک کنید.

سپس، رابط شبکه موردنظر را deactive و مجدداً active کنید تا این تغییرات اخیر اعمال شود.کلیک روی activate

برای بررسی آدرس آی پی رابط موردنظر مثلاً eth0 می توانید از دستور زیر زیر استفاده کنید.

ip addr show eth0

تنظیم دریافت خودکار ip در سیستم ویندوز

کنترل پنل را باز کنید.

روی network & internet کلیک کنید و گزینه Network and Sharing Center را انتخاب کنید.کلیک روی internet network

انتخاب گزینه network and sharing center

از منوی سمت چپ روی گزینه Change adapter settings کلیک کنید.کلیک روی change adapter setting

روی رابط شبکه موردنظر راست کلیک کنید و گزینه Properties را انتخاب کنید.انتخاب گزینه properties

از لیست موجود، Internet Protocol Version 4 (TCP/IPv4) را انتخاب کنید و روی Properties کلیک کنید.کلیک روی properties در ipv4

گزینه Obtain an IP address automatically را علامت بزنید.

اگر می خواهید سرور dns هم به صورت خودکار دریافت شود، DNS server address automatically را علامت بزنید.

تنظیم اختصاص خودکار آی پی

روی ok کلیک کنید.

تنظیم دریافت ip خودکار در سیستم مک

برنامه Setting را باز کنید.

از منوی سمت چپ، روی Network کلیک کنید.

رابط شبکه موردنظر را انتخاب کنید.انتخاب رابط شبکه

روی دکمه Detailes آن کلیک کنید.کلیک روی detailes

از منوی سمت چپ، روی TCP/IP کلیک کنید.

برای فیلد configure IPv4 گزینه Using DHCP را انتخاب کنید.فعال سازی dhcp در مک

روی ok کلیک کنید.

به این ترتیب تمام مراحل نصب و پیکربندی DHCP سرور در اوبونتو، دبیان و CentOS را با موفقیت پشت سر گذاشتید و کلاینت های شما می توانند آدرس آی پی خود را به طور خودکار از این سرور دریافت کنند.

سخن آخر

هدف از راه اندازی سرور DHCP این است که دستگاه های موجود در شبکه بتوانند آدرس آی پی خود را به صورت خودکار از این سرور دریافت کنند و دیگر نیازی به تنظیم آی پی استاتیک به صورت دستی نباشد. این کار نه تنها باعث صرفه جویی در زمان می شود بلکه امنیت و عملکرد شبکه را تا حد زیادی ارتقا می دهد. 

مطالب مشابهی که شاید علاقمند باشید

من زهرا پیرجانی دانشجوی رشته نرم افزار هستم. علاقه ای که به یادگیری مطالب جدید دارم باعث شد که انگیزم برای فعالیت در حوزه تولیدمحتوا بیشتر شود. تمام تلاشم این است که با درک کامل موضوع، محتوایی ساده و کامل تهیه کنم که برای همه علاقمندان مفید و کاربردی باشد. یادگیری مطالب جدید و آموزش اونها به بقیه، بهترین کاری هست که می توانم برای رشد خودم و همچنین کمک به رشد علاقمندان به مباحث مورنظر انجام بدم.

دیدگاه های شما

برای دریافت این مقاله لطفا ایمیلتان را وارد کنید

می توانید مقاله را دانلود کنید یا پرینت بگیرید