2012年11月24日土曜日

DHCPサーバー設定


今回のdhcpd.confの設定です。今回は外向きに見せているWebサーバーを家庭内のLANからも同じ名前で引けるようにするのが目的なので内部向けにDNSをmac-miniのnamedになるように設定します。

dhcpd.conf
-----
ddns-update-style none; // LAN内でDDNSは不要なのでnone

default-lease-time 21600; // lease-timeは標準値
max-lease-time 43200;

subnet 192.168.0.0 netmask 255.255.255.0 { // LANのアドレス
  range 192.168.0.64 192.168.0.127;  // DHCP用のアドレス範囲
  option routers 192.168.0.1;  // routerのアドレス
  option subnet-mask 255.255.255.0;  // LANのサブネットマスク
  option domain-name "hogehoge.dip.jp";  // 外向けのdomain nameと同じもの
  option domain-name-servers 192.168.0.2;  // primaryにmac-miniを指定。
}

host living-macmini {  // これが今回はまった設定。ここでfixed-addrとして指定するのでなく、Mac-miniの方でstatic設定にしなくてはなりません。
  hardware ethernet xx:xx:xx:xx:xx:xx;
  fixed-address 192.168.0.2;
}
------

あとはOS-Xのlaunchd用の設定ファイルを作ります。
記述内容はdhcpdを-fオプションでフォアグラウンド起動し、KeepAliveで落ちてしまった時に自動復帰するように設定します。
-fをつけないと、forkして起動プロセスが落ちるたびにKeepAliveで再起動してしまうのでdaemonプロセスが沢山起動してしまいます。

/Library/LaunchDaemon/dhcpd.plist
-----
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
        <key>Label</key>
        <string>dhcpd</string>
        <key>KeepAlive</key>
        <true/>
        <key>ProgramArguments</key>
        <array>
                <string>/usr/local/sbin/dhcpd</string>
                <string>-f</string>
        </array>
</dict>
</plist>
-----
設定ファイルが出来上がったら
# sudo launchctl load /Library/LaunchDaemon/dhcpd.plist
で起動設定をするとdhcpdが起動します。

0 件のコメント:

コメントを投稿