[rasp]樹莓派安裝 DHCP 伺服器,配發 IP 位址

參考網址:https://blog.gtwang.org/iot/raspberry-pi-dhcp-server-configuration/

STEP 1
首先裝 isc-dhcp-server 這個套件:

 

sudo apt-get install isc-dhcp-server

STEP 2
編輯 /etc/network/interfaces,設定網路組態:

iface eth0 inet static
  address 192.168.1.1    # 自己的 IP 位址
  netmask 255.255.255.0  # 網路遮罩
  gateway 102.168.1.254  # 通訊閘道

STEP 3
編輯 /etc/dhcp/dhcpd.conf,設定 DHCP 伺服器組態:

# 開放的動態 IP
subnet 192.168.1.0 netmask 255.255.255.0 {
  range 192.168.1.200 192.168.1.250;  # 開放配發的 IP 範圍
  option routers 192.168.1.254;  # 預設通訊閘道
  option broadcast-address 192.168.1.255;  # 廣播位址
  default-lease-time 600;  # 預設租約時間,單位為秒
  max-lease-time 7200;  # 最長租約時間,單位為秒
  option domain-name-servers 8.8.8.8, 8.8.4.4;  # DNS 伺服器
  option domain-name "internal.example.org";  # 網域名稱
}

以上是基本的動態 IP 設定,如果您需要依照 client 端的網路卡 MAC 位址配發固定的 IP 位址的話,可以加入這樣的對應設定:

# 依照網路卡 MAC 位址配發固定的 IP
host sensor101 {
  hardware ethernet 4e:a3:53:01:30:0a;  # 網路卡 MAC 位址
  fixed-address 192.168.1.101;  # 對應的 IP 位址
}
host sensor102 {
  hardware ethernet 4e:a3:24:01:29:09;
  fixed-address 192.168.1.102;
}

這樣當 DHCP 伺服器遇到指定的網路卡 MAC 位址的時候,就會配發事先設定好的 IP 位址。

STEP 4
編輯 /etc/default/isc-dhcp-server,設定 啟用 DHCP 的網路卡:

# 設定啟用 DHCP 的網路卡
INTERFACES="eth0"

STEP 5
重新啟動 DHCP 伺服器:

sudo service isc-dhcp-server restart

正常的話,會有 ok 的訊息:
[ ok ] Stopping ISC DHCP server: dhcpd.
[ ok ] Starting ISC DHCP server: dhcpd.

這時候只要有 client 跟 DHCP 伺服器要求獲取 IP,在 /var/log/messages 中都會有這樣的紀錄:
Feb  2 16:44:12 raspberrypi dhcpd: DHCPDISCOVER from 4e:43:54:01:00:09 via eth0
Feb  2 16:44:12 raspberrypi dhcpd: DHCPOFFER on 192.168.1.102 to 4e:43:54:01:00:09 via eth0
Feb  2 16:44:12 raspberrypi dhcpd: DHCPREQUEST for 192.168.1.102 (192.168.1.1) from 4e:43:54:01:00:09 via eth0
Feb  2 16:44:12 raspberrypi dhcpd: DHCPACK on 192.168.1.102 to 4e:43:54:01:00:09 via eth0

如果有任何問題,通常也都可以在這裡找到一些錯誤訊息。

記錄檔放在/var/lib/dhcp/dhcpd.leases

本篇發表於 Linux系統。將永久鏈結加入書籤。