User Tools

Site Tools


自作クラスタ計算機:kea_dhcpの基本設定

概要

管理ノードをルータ兼DHCPサーバーにして、スイッチングハブを介したプライベートLANを構成します。

  • ルータは、インターネットとプライベートLANを仲介する役割をします。
  • DHCPサーバーは、プライベートLAN内のコンピュータにプライベートIPアドレスを割り振るサーバーのことです
  • 計算ノードのMACアドレスをもとに、固定のプライベートIPアドレスを割り振るようにします
  • DHCPを使わなくてもプライベートネットワークを構成できますが、それぞれの計算ノードに個別に設定を入力しないといけなくなるので、計算ノードのOS入れ替え時やネットワーク設定の変更時に不便です
  • 作業の前に、管理ノードと計算ノードをそれぞれLANケーブルを使ってスイッチングハブに接続してください

以下では計算ノードが使用するDNSサーバのIPアドレスを次のものにします。 具体的なDNSサーバのIPアドレスは、研究室設置であれば大学のネットワーク管理者に問い合わせる、自宅設置であればインターネットサービスプロバイダの契約書を見る、などして確認してください。

  • DNSサーバ … aaa.aaa.aaa.aaa および bbb.bbb.bbb.bbb

設定手順

管理ノードで作業を行ってください

インストールと設定

DHCPサーバーの立ち上げに必要なパッケージをインストールします

$ sudo apt install kea-dhcp4-server
  • IPv4対応版のみをインストールしました。フルパッケージをインストールしたければ isc-kea をインストールしてください。

DHCPサーバーの設定をしていきます。 設定ファイルは /etc/kea/kea-dhcp4.conf です。 いろいろな項目がありますが、最低限、以下を自分の環境に合わせれて設定すれば十分です

$ sudo nano /etc/kea/kea-dhcp4.conf
  1. interfaces-config: DHCPサーバのプライベートLAN内におけるポートを指定します
    kea-dhcp4.conf
        "interfaces-config": {
            "interfaces": [ "enp1s0f1" ]
        },
  2. option-data: 計算ノードの構成オプションを設定します。特にDNSサーバーの設定をします
    kea-dhcp4.conf
        "option-data": [
            {
                "name": "domain-name-servers",
                "data": "aaa.aaa.aaa.aaa, bbb.bbb.bbb.bbb"
            },
            (略)
        ]
  3. subnet4: LANのサブネットを設定します
    dhcpd.conf
        "subnet4": [
            {   
                "id": 1,
                "subnet": "192.168.0.0/24",
                "pools": [ { "pool": "192.168.0.100 - 192.168.0.200" } ],
                "interface": "enp1s0f1",
                "option-data": [
                    {
                        "name": "routers",
                        "data": "192.168.0.1"
                    }
                ],
                "reservations": [
                    {
                        "hw-address": "1a:1b:1c:1d:1e:1f",
                        "ip-address": "192.168.0.10"
                    },
                    {
                        "hw-address": "2a:2b:2c:2d:2e:2f",
                        "ip-address": "192.168.0.11"
                    },
                    {
                        "hw-address": "3a:3b:3c:3d:3e:3f",
                        "ip-address": "192.168.0.12"
                    }
                ]
            }
        ],
    • subnet: プライベートLANのネットワークアドレスとネットマスク
    • pools: プライベートLANに接続された機器に自動で割り当てるIPアドレスの範囲
      • 下のreservationsで指定されているものと重複している分は除外されます
    • interface: DHCPサーバのプライベートLAN内におけるポートを指定します
    • option-data: ここでルーターのプライベートLAN側のIPアドレスを指定します
      • ルーターとは、プライベートLANとインターネットを仲介するサーバーのことです。今回は管理ノードがDHCPとルーターの役割を担います。
    • reservations: 計算ノードのMACアドレスを使って、割り当てるIPアドレスを指定します。計算ノードの台数分だけ、対応するMACアドレスと割り当てたいプライベートIPアドレスを入力
      • 予約しているIPアドレスがサブネット外のものだとエラーになります。デフォルトで例がいろいろ書かれていますので、使わないやつはコメントアウトするか削除しておきましょう。
  4. DHCPサーバーの有効化と再起動を行います
    $ sudo systemctl enable kea-dhcp4-server
    $ sudo systemctl restart kea-dhcp4-server
  5. 正しく設定されてstatusがactiveになっていることを確認します
    $ sudo systemctl status kea-dhcp4-server
  6. 管理ノードで、以下を実行して計算ノードがネットワークにつながったかどうかを確認します
    $ ping 192.168.0.11

参考

自作クラスタ計算機/kea_dhcpの基本設定.txt · Last modified: 2026/07/03 01:57 by koudai