ISC DHCP
ここは「ISC DHCP 」のページです。
ISC DHCP とは
ISC(Internet Systems Consortium) が開発していた DHCP サーバーソフトウェアです。無料で公開されており誰でも利用できます。
ただ、2022年に開発とサポートが終了しており、現在では後継の「Kea DHCP」がリリースされています。
注意
ISC DHCP で実装されていた機能が Kea DHCP で未実装の場合があります。例えば DHCP OPTION の一部など。 このような理由で ISC DHCP を使うこともあるかと思います。
以下は事情があって ISC DHCP を使う方向けの記事にになります。非推奨であることに留意ください。本来は Kea DHCP を使うべきです。
また、OpenLDAP 連携したかったのですが、標準リポジトリのパッケージだと、上手く動作しませんでした。
対応としてソースからのインストールを行いました。その時の記録です。環境は Ubuntu Server 22.04 LTS になります。
ダウンロード
ソースのダウンロードは公式サイトから可能です。wget 等でダウンロードすると良いです。
wget https://downloads.isc.org/isc/dhcp/4.4.3-P1/dhcp-4.4.3-P1.tar.gz
コンパイルに必要なもの
コンパイルに必要なものは apt コマンドで用意できます
apt install gcc make libldap-dev
コンパイルからインストール
以下のコマンドで、コンパイルからインストールまで行けました。OpenLDAP 連携させるため、パラメーターをいくつか追加しています。
./configure --enable-paranoia --with-srv-conf-file=/etc/dhcp/dhcpd.conf --with-srv-lease-file=/var/lib/dhcp/dhcpd.leases --with-cli-lease-file=/var/lib/dhcp/dhclient.leases --with-ldap make make install
設定
設定ファイルは、以下のファイルです。
/etc/dhcp/dhcpd.conf
dhcpd.conf は以下のように設定しました。
ldap-server "ldap.example.com"; ldap-port 389; ldap-username "cn=kanrisya,dc=example,dc=com"; ldap-password "YOUR_PASSWORD"; ldap-base-dn "ou=DHCP,dc=example,dc=com"; ldap-method dynamic;
OpenLDAP 側にデータを既に持たせているので、conf ファイルの中はシンプルですね。
その他
自分の場合は、dhcp 用に専用のユーザーとグループを作りました。コマンドは以下の通りです。
useradd -d /var/run -U -s /sbin/nologin dhcpd
その他、AppArmor の設定も必要でした。
手元の環境ではこれで上手く行きました。細かいところは環境によって違うと思います。参考にしてください。