๐ง Linux DHCP Server ๆถ่จญๆๅญธ(ๅพๅฎ่ฃๅฐ่ชๅๅ้ ่จญๅฎ)
ๅจไผๆฅญๆๅญธๆ ก็ถฒ่ทฏ็ฐๅขไธญ,DHCP(Dynamic Host Configuration Protocol)ไผบๆๅจ ่ฒ ่ฒฌ่ชๅๅ้ IP、ๅญ็ถฒ่ทฏ้ฎ็ฝฉ、้้่ DNS ็ญ็ถฒ่ทฏๅๆธ。 ๆฌๆๅฐไปฅ isc-dhcp-server ็บไพ,่ชชๆๅฆไฝๅจ Linux ไธๅฎ่ฃ、่จญๅฎ่ๆธฌ่ฉฆ DHCP ็ฐๅข。
๐ ไธ、็ฐๅขๆบๅ
็ณป็ตฑ:Ubuntu 22.04 / Rocky Linux 9
ๆๅ:isc-dhcp-server ๆ dhcp-server
็ถฒๆฎต:192.168.1.0/24
ไผบๆๅจ IP:192.168.1.10
ๆดๆฐ็ณป็ตฑๅฅไปถ:
sudo apt update && sudo apt upgrade -y # Ubuntu / Debian
sudo dnf update -y # CentOS / Rocky Linux
⚙️ ไบ、ๅฎ่ฃ DHCP Server ๅฅไปถ
Ubuntu / Debian:
sudo apt install isc-dhcp-server -y
CentOS / Rocky Linux:
sudo dnf install dhcp-server -y
ไธป่ฆ่จญๅฎๆช:
/etc/dhcp/dhcpd.conf
๐งฉ ไธ、่จญๅฎ DHCP ้ ็ฝฎๆช
็ทจ่ผฏ่จญๅฎๆชไธฆๅ ๅ ฅ่ช่จ็ถฒๆฎต:
sudo vi /etc/dhcp/dhcpd.conf
# ็ฏไพ่จญๅฎ:192.168.1.0/24 ็ถฒๆฎต
option domain-name "example.local";
option domain-name-servers 8.8.8.8, 8.8.4.4;
default-lease-time 600;
max-lease-time 7200;
authoritative;
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.100 192.168.1.200;
option routers 192.168.1.1;
option broadcast-address 192.168.1.255;
option domain-name-servers 8.8.8.8, 8.8.4.4;
}
่ฅ้่ฆๅบๅฎ IP ๅ้ :
host printer1 {
hardware ethernet 00:11:22:33:44:55;
fixed-address 192.168.1.50;
}
๐ง ๅ、่จญๅฎไป้ข่ๅๅๆๅ
ๆๅฎ DHCP ้ไฝไป้ข:
# Ubuntu
sudo vi /etc/default/isc-dhcp-server
INTERFACESv4="ens33"
# CentOS / Rocky
sudo vi /etc/sysconfig/dhcpd
DHCPDARGS=ens33
ๅๅไธฆ่จญ็บ้ๆฉ่ชๅๅท่ก:
sudo systemctl enable isc-dhcp-server
sudo systemctl start isc-dhcp-server
sudo systemctl status isc-dhcp-server
่ฅ้กฏ็คบ active (running) ๅณไปฃ่กจๆๅๅๅ。
๐งฐ ไบ、้ฒ็ซ็่จญๅฎ่ๆธฌ่ฉฆ
# ้ๆพ DHCP ๅ (UDP 67/68)
sudo ufw allow 67/udp
sudo ufw allow 68/udp
sudo ufw reload
# ๆ Firewalld(CentOS / Rocky)
sudo firewall-cmd --add-service=dhcp --permanent
sudo firewall-cmd --reload
ๅจๅฎขๆถ็ซฏๆธฌ่ฉฆ:
sudo dhclient -v eth0
่ฅ่ฝๅๅพ IP,่กจ็คบ DHCP ๅ้ ๆๅ。
๐งญ ่กๅๆธ ๅฎ
✅ ๅฎ่ฃไธฆ่จญๅฎ isc-dhcp-server ๅฅไปถ ✅ ่จญๅฎ dhcpd.conf ็ถฒๆฎต่้ธ้ ✅ ๆธฌ่ฉฆ IP ๅ้ ไธฆ็ขบ่ช็ถฒ่ทฏ้ฃ็ทๆญฃๅธธ ✅ (้ธๆๆง)ๆฐๅขๅบๅฎ IP ็ถๅฎ่จญๅ
๐ ็ต่ช
่ณๆญค,ไฝ ๅทฒๆๅๅจ Linux ไธๅปบ็ซ DHCP Server ไธฆๅฎๆ่ชๅ IP ๅ้ ่จญๅฎ。 DHCP ๅฏ่ DNS / PXE / TFTP ็ญๆๅๆดๅ,็จๆผ็ถฒ่ทฏ้ๆฉๆ่ชๅๅ้จ็ฝฒ。 ๅจไธญๅคงๅ็ถฒ่ทฏ็ฐๅขไธญ,ๅฎๆฏ็ถญๆ่จญๅไธ่ดๆง่ๆธๅฐไบบๅทฅ้ ็ฝฎ็้้ตๅทฅๅ ท。
๐ ๅปถไผธ้ฑ่ฎ
- ๐ง Linux DNS ไธปๅพไผบๆๅจ่จญๅฎ(BIND ๆๅญธ)
- ๐ง๐งฑ Linux Proxy Server ๅปบ็ฝฎๆๅญธ(Squid ๅฎ่ฃ่่จญๅฎๆๅ)
- ๐ง Linux systemd ๆทฑๅ ฅ่งฃๆ่ๅๅๆต็จ็ฎก็
— WWFandy・็ณป็ตฑ่็ถฒ่ทฏ็ญ่จ
ๆฒๆ็่จ:
ๅผต่ฒผ็่จ