FreeBSD de DHCP

[ Nob's Home | FreeBSD ]

NIC2枚のCeleron機でDHCP serverを運用します。

Information

必要なもの

/etc/dhcpdb.pool

#
# start of /etc/dhcpdb.pool 
#
global:!snmk=255.255.255.0:tmof=32400:
#
#	"global"というエントリで全体的な設定
#		サブネットマスクは/24に
#		UTCとの差は9時間=32400秒
#
internal:tblc=global:rout=192.168.0.1:dht1=500:dht2=850:¥
        :brda=192.168.0.255:¥
        :dnsv=2xx.1xx.1xx.1xx
#
#	"internal"というエントリをつくる
#		全体的な設定globalを参照する
#		ルーターは192.168.0.1に
#		dht1とdht2はよくわからない
#		クライアントを接続しているネットのbroadcast address
#		DNS serverのアドレス
#
# 以下にDHCPで割り当てるエントリを記載する
#
200: :ipad=192.168.0.200:dfll=3600:maxl=7200:tblc=internal:
201: :ipad=192.168.0.201:dfll=3600:maxl=7200:tblc=internal:
202: :ipad=192.168.0.202:dfll=3600:maxl=7200:tblc=internal:
203: :ipad=192.168.0.203:dfll=3600:maxl=7200:tblc=internal:
204: :ipad=192.168.0.204:dfll=3600:maxl=7200:tblc=internal:
205: :ipad=192.168.0.205:dfll=3600:maxl=7200:tblc=internal:
206: :ipad=192.168.0.206:dfll=3600:maxl=7200:tblc=internal:
207: :ipad=192.168.0.207:dfll=3600:maxl=7200:tblc=internal:
208: :ipad=192.168.0.208:dfll=3600:maxl=7200:tblc=internal:
209: :ipad=192.168.0.209:dfll=3600:maxl=7200:tblc=internal:
210: :ipad=192.168.0.210:dfll=3600:maxl=7200:tblc=internal:
#
# end of/etc/dhcpdb.pool
#
/etc/dhcpdb.relayの設定は必要ないので、touchして作成だけしておきます。
# touch /etc/dhcpdb.relay

dhcpsの起動

packagesにより、/usr/local/etc/rc.d/wide-dhcps.sh.sampleがinstallされるので、
# cd /usr/local/etc/rc.d
# cp wide-dhcps.sh.sample wide-dhcps.sh
# vi wide-dhcps.sh
#!/bin/sh
DB_POOL=/etc/dhcpdb.pool
DB_RELAY=/etc/dhcpdb.relay
DB_BIND=/var/db/dhcpdb.bind
if [ -f ${DB_POOL} -a -f ${DB_RELAY} ¥
                -a -x /usr/local/sbin/dhcps ]; then
        if [ -f ${DB_BIND} ]; then
                find ${DB_POOL} -newer ${DB_BIND} -exec rm ${DB_BIND} ¥;
        fi
        /usr/local/sbin/dhcps [Interface Name] <--- ここをprivate addressのmx0に
        echo -n ' dhcps'
fi

すぐに起動したいときは、

#/usr/local/sbin/dhcps mx0
で起動します。(mx0はprivate addressを使っているinterface)


[ Nob's Home | FreeBSD ]
nob@makioka.y-min.or.jp