====== ISC DHCP ====== ここは「ISC DHCP 」のページです。 ===== ISC DHCP とは ===== ISC(Internet Systems Consortium) が開発していた DHCP サーバーソフトウェアです。無料で公開されており誰でも利用できます。 ただ、2022年に開発とサポートが終了しており、現在では後継の「Kea DHCP」がリリースされています。 [[https://www.isc.org/kea/|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 の設定も必要でした。 手元の環境ではこれで上手く行きました。細かいところは環境によって違うと思います。参考にしてください。