HOME / コンピュータTips / FreeBSD / DHCP Server

Date: 2019/12/14 |  このエントリーをはてなブックマークに追加  |  Tags:

コンピュータTips/FreeBSD/DHCP Server

LAN内で、DHCPサーバを立てておくと、何かと便利である。マシンはせいぜい5台程度なので、すべて固定IPを与えたって良いのだが、知人がうちに来てマシンをセットアップしたり、モバイルを持ってきて、外(INTERNET)に出たいというときに、DHCPなら何も言わずにすむのがありがたい。

portsを使う。

/usr/ports/net/wide-dhcp

/usr/ports/net/wide-dhcp/work/dhcp-1.4.0p6/server/README.jisより引用。

DHCPサーバの実行には、アドレスプールを記述する/etc/dhcpdb.poolというファ

イルと、リレーエージェントに関する情報を記述した/etc/dhcpdb.relayとい

うファイルの二つが必要となります。

らしいです。英語に自信が無い方は、

/usr/ports/net/wide-dhcp/work/dhcp-*/server/にて、

nkf -e dhcps.8.jis | gzip -9 > /usr/local/man/ja/man8/dhcps.8.gz
nkf -e dhcpdb.pool.5.jis | gzip -9 > /usr/local/man/ja/man5/dhcpdb.pool.5.gz
nkf -e  dhcpdb.relay.5.jis | gzip -9 > /usr/local/man/ja/man5/dhcpdb.relay.5.gz

を読むと良いでしょう。((jman のシステムをきちんと理解していないため、適当なことをしている可能性高し。))

dhcpdb.poolの作成。

/usr/ports/net/wide-dhcp/work/dhcp-1.4.0p6/db_sample

に、ファイルと説明があるので、読むと良い。

/etc/dhcpdb.pool

# define a global entry which specifies the stuff every host uses.
global:!snmk=255.255.255.000:tmof=32400:

# define different master entries for each subnet. . .
# `dnsv' is IP address of DNS server.
# `dnsd' is domain name of your domain.
subnet255:tblc=global:rout=192.168.1.254:dht1=500:dht2=850:\
:brda=192.168.1.255:dnsv=192.168.1.1:dnsd=wizard.justplayer.com:

# entries for dynamic allocation (DHCP) DYNAMIC
4000: :ipad=192.168.1.200:dfll=3600:maxl=7200:tblc=subnet255:
4001: :ipad=192.168.1.201:dfll=3600:maxl=7200:tblc=subnet255:
4002: :ipad=192.168.1.202:dfll=3600:maxl=7200:tblc=subnet255:
4003: :ipad=192.168.1.203:dfll=3600:maxl=7200:tblc=subnet255:
4004: :ipad=192.168.1.204:dfll=3600:maxl=7200:tblc=subnet255:
4005: :ipad=192.168.1.205:dfll=3600:maxl=7200:tblc=subnet255:
4006: :ipad=192.168.1.206:dfll=3600:maxl=7200:tblc=subnet255:
4007: :ipad=192.168.1.207:dfll=3600:maxl=7200:tblc=subnet255:
4008: :ipad=192.168.1.208:dfll=3600:maxl=7200:tblc=subnet255:
4009: :ipad=192.168.1.209:dfll=3600:maxl=7200:tblc=subnet255:

要は参照されていて、サブネットマスク(snmk)、デフォルトルート(rout)、ブロードキャスト(brda)、DNS(dnsv)、ドメイン名(dnsd)を変更する。

ipadは、予約されるアドレスなので、列挙してよい。

あとは普通に起動スクリプトを書いてあげよう。