DHCPサーバ(Debian 11.0.0)

2021/8/20


ポリシー

基本的にBuster(Debian10)と同じ手順で作業を行う。
  1. MACアドレスとIPアドレスは一対一に対応させる。
  2. MACアドレスを登録したマシンにはいろいろと便宜を図る。
  3. MACアドレスを登録していないマシンには適当なIPアドレスを割り振る。実験室内での接続は可能にする。実験室外に接続できない。

インストール

apt-get install isc-dhcp-server -y

設定

設定はつぎのファイルを修正、あるいは作成する。
  1. /etc/default/isc-dhcp-server  設定ファイルとインタフェースを指定
  2. /etc/dhcp/dhcpd.conf  設定ファイル(各ファイルをインクルードする)
  3. /etc/dhcp/dhcp.xxxx   用途ごとに分割したファイル
/etc/default/isc-dhcp-server
# Defaults for isc-dhcp-server (sourced by /etc/init.d/isc-dhcp-server)

# Path to dhcpd's config file (default: /etc/dhcp/dhcpd.conf).
DHCPDv4_CONF=/etc/dhcp/dhcpd.conf   -----先頭の#を削除
#DHCPDv6_CONF=/etc/dhcp/dhcpd6.conf

# Path to dhcpd's PID file (default: /var/run/dhcpd.pid).
DHCPDv4_PID=/var/run/dhcpd.pid   -----先頭の#を削除
#DHCPDv6_PID=/var/run/dhcpd6.pid

# Additional options to start dhcpd with.
#	Don't use options -cf or -pf here; use DHCPD_CONF/ DHCPD_PID instead
#OPTIONS=""

# On what interfaces should the DHCP server (dhcpd) serve DHCP requests?
#	Separate multiple interfaces with spaces, e.g. "eth0 eth1".
INTERFACESv4="enp1s0"   -----インタフェース名を追記
#INTERFACESv6=""        -----先頭に#を追記


/etc/dhcp/dhcpd.conf
# dhcpd.conf
#
# Sample configuration file for ISC dhcpd
#

# option definitions common to all supported networks...
option domain-name "takahashi.lab";
option domain-name-servers 192.168.70.2;

#default-lease-time 600;
#max-lease-time 7200;

# The ddns-updates-style parameter controls whether or not the server will
# attempt to do a DNS update when a lease is confirmed. We default to the
# behavior of the version 2 packages ('none', since DHCP v2 didn't
# have support for DDNS.)
ddns-update-style none;

# If this DHCP server is the official DHCP server for the local
# network, the authoritative directive should be uncommented.
authoritative;

# Use this to send dhcp log messages to a different log file (you also
# have to hack syslog.conf to complete the redirection).
log-facility local7;

# No service will be given on this subnet, but declaring it helps the 
# DHCP server to understand the network topology.

 subnet 192.168.70.0 netmask 255.255.255.0 {
 
 # --- default gateway
 option routers 192.168.70.2;
 option subnet-mask 255.255.255.0;

 option time-offset 32400; # Japan Standard Time
 option ntp-servers 192.168.70.2;
 
 # range dynamic-bootp 192.168.70.57 192.168.70.71;
 #range 192.168.70.57 192.168.70.71;
 
 # 2013/4/27 expansion for DHCP client and VMware Virtual Machine
# range 192.168.70.21 192.168.70.239;

 default-lease-time 43200; # 43200 sec = 12h 00m 00sec (2010/7/30-)
 max-lease-time 86400; # 86400sec = 24h 00m 00sec
 
 # we want the nameserver to appear at a fixed address
 # host ns {
 # next-server marvin.redhat.com;
 # hardware ethernet 12:34:56:78:AB:CD;
 # fixed-address 207.175.42.254;
 # }

  include "/etc/dhcp/dhcp.server";
  include "/etc/dhcp/dhcp.nt";
  include "/etc/dhcp/dhcp.pc";
  include "/etc/dhcp/dhcp.maibunnote";
 	
  include "/etc/dhcp/dhcp.raspberryPi"; 	#2019/11/9 Raspberry Pi
  include "/etc/dhcp/dhcp.3F"; 	#2020/3/10 情報基礎実験室3F
 }


実験室で使用するPCに関する記述(/etc/dhcp/dhcp.pc)
#------------------------------------------
#    note PC, desktop PC

  host Cs {
        # NOTE 01 PC-koubou LESANCE CL401SN-M/340+256+40G
          hardware ethernet 00:90:f5:34:0f:39;
          fixed-address 192.168.xx.55;
          option routers 192.168.xx.3;
	}
#以下省略

確認

DHCPに関する記述を更新した後は、DHCPサーバを再起動する。
systemctl restart isc-dhcp-server
systemctl enable isc-dhcp-server  
systemctl status isc-dhcp-server  

再起動時の動作

サーバ再起動時にdhcpdをアクティブにする。
echo "systemctl restart isc-dhcp-server">/etc/rc.local
echo "exit 0" >>/etc/rc.local
chmod u+x /etc/rc.local 

参考
サーバーワールド(http://www.server-world.info/)