ホーム » コンピュータ » Linux » Debian » readynas の運用開始と DNS,DHCPの多重運用

readynas の運用開始と DNS,DHCPの多重運用

NETGEAR の ReadyNAS Pro 2 を入手。readynas の 正規 OS は、バージョンが古く debian ベースの でも samba などが古いプロトコルしか使えないので、便利な使い方ができない。

このため、Serial ポートを使って debian/forky をインストール。

サーバを運用していると、ネットワークの設定を間違って DNS, DHCP を止めてしまうと、自宅ネットワークが全滅する。 Raspberry-Pi で DNS セカンダリサーバなどを動かしていたけど、この readynas のサーバで多重サーバ構成にしたい。

DNS のキャッシュサーバ運用

まずは、DNS (bind9)のセカンダリ運用。

((( /etc/bind/named.conf.local )))
zone "tsaitoh.net" {
        type slave ;
        file    "db.tsaitoh.net.slave";
        masters {
                192.168.xx.yy;
        };
};
((( /etc/bind/named.conf.options )))
acl     internal-network {
        ::1;
        127.0.0.1;
        192.168.xx.0/24;
};
options {
        directory "/var/cache/bind";
        forwarders      { 192.168.xx.yy;    };
        allow-query     { internal-network; };
        allow-recursion { internal-network; };
        dnssec-validation auto;
        listen-on       { any; };
        allow-transfer  { none; };
};

DHCP のホットスタンバイ運用

続いて、DHCP の多重化。最近まで isc-dhcp-server を使っていたけど、kea-dhcp4-server に切り替えていたが、kea-dhcp4-server では、hot-standby 構成を組めるので、設定。2台の DHCP サーバは、8000 ポートで相互に死活状態を確認し、相手が機能していないと、自身が DHCP 処理を行う。

((( /etc/kea/kea-dhcp4.conf )))
    "hooks-libraries": [
      {
          "library": "/usr/lib/x86_64-linux-gnu/kea/hooks/libdhcp_lease_cmds.so",
          "parameters": { }
      },
      {
          "library": "/usr/lib/x86_64-linux-gnu/kea/hooks/libdhcp_ha.so",
          "parameters": {
              "high-availability": [ {
                  "this-server-name": "プライマリホスト名",  // セカンダリの設定ではセカンダリホスト名を記入
                  "mode": "hot-standby",
                  "heartbeat-delay": 1000,
                  "max-response-delay": 10000,
                  "max-unacked-clientsets": 5,
                  "peers": [
                      {
                          "name": "プライマリホスト名",
                          "url": "http://192.168.xx.yy:8000",
                          "role": "primary"
                      },
                      {
                          "name": "セカンダリホスト名",
                          "url": "http://192.168.xx.zz:8000",
                          "role": "standby"
                      }
                  ]
              } ]
          }
      },
    ],

これで、メインサーバにトラブルがあっても、自宅内ネットワーク全滅は避けられる。