Proxmox上にUbuntu Server 24.04を構築したあと、SSHで接続しやすいようにIPアドレスを固定しました。
最近のUbuntu ServerではNetplanを使ってネットワーク設定を行うため、昔のように /etc/network/interfaces を編集する方法とは少し勝手が違います。私も最初は少し戸惑ったので、作業内容をメモとして残しておきます。
まずはインターフェース名を確認
最初に現在使用しているネットワークインターフェース名を確認します。
ip a私の環境はProxmox上の仮想マシンのため、一般的なPCへ直接インストールした場合とは異なる名前になっていました。
確認するとDHCPでIPアドレスが割り当てられていたインターフェースは私の場合は下記でした。
enp6s18
環境によって名称は異なるため、自分の環境で確認してください。複数のネットワークに接続している場合は少し注意が必要です。
最近のUbuntuServerではNetplanという方式を使ってIPアドレスを固定するの主流らしいのでそれにのっとって進める。
Netplanの設定を確認
Netplanのディレクトリは/etc/netplanにあるのでlsで中身を見てみます。
cd /etc/netplan
lsもしくは直接lsで見ても構いません。
ls /etc/netplan私の環境では、
50-cloud-init.yamlが配置されていました。「50-cloud-init.yaml」の中身を確認するとDHCP設定が記載されています。
最初はこれを直接編集しようかと思ったのですが、調べてみると新しい設定ファイルを追加する方法が一般的なようです。
固定IP用の設定ファイルを作成
今回は以下のファイルを新しく作成しました。
cd /etc/netplan/
lssudo cp 50-cloud-init.yaml 99-enp6s18-fix.yamlsudo nano 99-enp6s18-fix.yaml※ enp6s18 の部分は自分の環境に合わせて変更してください。
私の場合は 192.168.8.103 を固定IPとして利用したかったため、必要最低限の構成にしています。いろいろな設定例がありますが、自分の環境では余計な設定を入れるとエラーになったため、最終的にシンプルな構成に落ち着きました。
# This file is generated from information provided by the datasource. Changes
# to it will not persist across an instance reboot. To disable cloud-init's
# network configuration capabilities, write a file
# /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg with the following:
# network: {config: disabled}
network:
version: 2
renderer: networkd
ethernets:
enp6s18:
dhcp4: no
addresses: [192.168.8.103/24]
nameservers:
addresses:
- 192.168.8.1
routes:
- to: default
via: 192.168.8.1設定を反映
まずはパーミッションを調整し
sudo chmod 600 99-enp6s18-fix.yamlNetplanへ反映します。
sudo netplan apply設定に問題がなければ、そのまま反映されます。
動作確認
反映後、下記コマンドなどで外部との通信を確認します。
ping 8.8.8.8私の環境ではGoogleへのpingも正常に通り、SSH接続も問題なく利用できるようになりました。
まとめ
Ubuntu Server 24.04でIPアドレスを固定する際は、Netplanの設定を利用します。
ネットで調べるとさまざまな設定例が出てきますが、私の環境では複雑な設定よりも必要最低限の内容にした方が安定して動作しました
環境によってインターフェース名やネットワーク構成は異なりますが、
- インターフェース名を確認
/etc/netplanに設定ファイルを追加netplan applyで反映- pingやSSHで確認
という流れで問題なく固定IP化できました。
検索で調べるとNetplanでの固定IPアドレスのさまざまな設定方法が書かれているのですが私の環境ではエラーをはいてしまうので結果最小に抑えようということになりこの形に落ち着きました。
Netplanは初めて触ったのでわからないことも多かったので少し手間取りました。
私と同様にProxmoxなどの仮想環境にインストールしている場合は失敗してもProxmoxのGUI上からリカバリーが利きますのでAIなどを活用して設定しても良いと思います。


コメント