【Ubuntu26.04】Ubuntu 26.04 Serverで固定IPアドレスを設定する方法 Netplanの書き方と確認手順

【Ubuntu26.04】Ubuntu 26.04 Serverで固定IPアドレスを設定する方法 Netplanの書き方と確認手順

Ubuntu Serverを自宅サーバー、検証用VM、Proxmox VEやESXi上のサーバーとして使う場合、IPアドレスを固定しておくと管理しやすくなる。

この記事では、Ubuntu 26.04 ServerでNetplanを使って固定IPアドレスを設定する手順を整理する。実機のUbuntu 26.04 LTS環境でも、設定例の構文確認まで検証している。

検証環境

項目内容
OSUbuntu 26.04 LTS
コードネームResolute
Netplannetplan.io 1.2-1ubuntu5
ネットワーク管理systemd-networkd
検証環境Proxmox VE
インターフェース名ens18

Ubuntu 26.04 LTSは2026年4月23日にリリースされた長期サポート版である。標準サポート期間は5年で、2031年4月までセキュリティ更新と重要な修正が提供される。

固定IPを設定する前に確認すること

まず、現在のネットワーク情報を確認する。特に重要なのは、以下の4つである。

  • ネットワークインターフェース名
  • 現在のIPアドレス
  • デフォルトゲートウェイ
  • DNSサーバー

インターフェース名を確認する

以下のコマンドで確認する

ip addr

短く確認したい場合は、以下でも構わない。

ip -br addr

検証環境では、以下のように表示された。

ubuntu@ubuntu-2604:~$ ip -br addr
lo               UNKNOWN        127.0.0.1/8 ::1/128
ens18            UP             192.168.11.38/24 metric 100 2408:210:b903:8400:be24:11ff:fe4e:1c25/64 fe80::be24:11ff:fe4e:1c25/64

この場合、設定で使うインターフェース名は ens18 である。

インターフェース名は環境によって異なる。

インターフェース名の例
ens18
ens160
enp0s3
eth0

記事や古いサンプルでは eth0 と書かれていることがあるが、実際のUbuntu Serverでは別名になっていることが多い。必ず自分の環境で確認する。

デフォルトゲートウェイを確認する

以下のコマンドで確認する

ip route

検証環境では、以下のように表示された。

ubuntu@ubuntu-2604:~$ ip route
default via 192.168.11.1 dev ens18 proto dhcp src 192.168.11.38 metric 100
192.168.11.0/24 dev ens18 proto kernel scope link src 192.168.11.38 metric 100
192.168.11.1 dev ens18 proto dhcp scope link src 192.168.11.38 metric 100

この場合、デフォルトゲートウェイは 192.168.11.1 である。

DNSサーバーを確認する

以下のコマンドで確認する

resolvectl status

検証環境では、ens18 にDNSサーバーとして 192.168.11.1 が設定されていた。

Current DNS Server: 192.168.11.1

Netplanの設定ファイルを確認する

Netplanの設定ファイルは、以下のディレクトリにある。

/etc/netplan/

ファイルを確認する

ls -l /etc/netplan/

検証環境では、00-installer-config.yamlファイルがあった。

ubuntu@ubuntu-2604:~$ ls -l /etc/netplan/
total 4
-rw------- 1 root root 207 May 10 02:01 00-installer-config.yaml
ubuntu@ubuntu-2604-autoinstall:~$

環境によっては、50-cloud-init.yaml のようなファイル名になっていることもある。以降のコマンドでは 00-installer-config.yaml を例にするが、自分の環境にあるファイル名に読み替える。

現在の設定を以下コマンドで確認する。

sudo cat /etc/netplan/00-installer-config.yaml

検証環境の初期設定は、以下のようにDHCPでIPアドレスを取得する内容だった。

# This is the network config written by 'subiquity'
network:
  ethernets:
    ens18:
      dhcp4: true
      dhcp6: true
      match:
        macaddress: bc:24:11:4e:1c:25
      set-name: ens18
  version: 2

設定ファイルをバックアップする

変更前に、必ず設定ファイルのバックアップを取得する。

00-installer-config.yaml.bakという名前でバックアップをとる

sudo cp /etc/netplan/00-installer-config.yaml /etc/netplan/00-installer-config.yaml.bak

ネットワーク設定を間違えると、SSH接続できなくなることがある。特にリモート作業では、バックアップを取ってから編集する。

固定IPアドレスを設定する

Netplanの設定ファイルを編集する。

sudo vi /etc/netplan/00-installer-config.yaml

以下は、固定IPアドレスを設定する例である。

network:
  version: 2
  renderer: networkd
  ethernets:
    ens18:
      dhcp4: false
      addresses:
        - 192.168.11.38/24
      routes:
        - to: default
          via: 192.168.11.1
      nameservers:
        addresses:
          - 192.168.11.1
          - 8.8.8.8

上記の例では、以下の設定になる。

項目
インターフェース名ens18
IPアドレス192.168.11.38
サブネット/24
デフォルトゲートウェイ192.168.11.1
DNSサーバー192.168.11.18.8.8.8

/24 は、サブネットマスク 255.255.255.0 を意味する。

自分の環境に合わせて、IPアドレス、ゲートウェイ、DNSサーバーを変更する。同じネットワーク内で、ほかの機器が使っていないIPアドレスを指定する必要がある。

IPv6を使わない検証環境であれば、IPv4の固定IP設定だけでも問題ない。

設定項目の意味

項目説明
networkネットワーク設定全体の定義
version: 2Netplan設定のバージョン
renderer: networkdsystemd-networkdを使う設定
ethernets有線ネットワークの設定
dhcp4: falseIPv4のDHCPを無効化
addresses固定IPアドレス
routesルーティング設定
to: defaultデフォルトルート
viaデフォルトゲートウェイ
nameserversDNSサーバー設定

ファイル権限を修正する

Netplanの設定ファイルの権限が緩いと、以下のような警告が出ることがある。

Permissions for /etc/netplan/00-installer-config.yaml are too open.
Netplan configuration should NOT be accessible by others.

検証環境でも、権限が緩い設定ファイルではこの警告を確認できた。以下のように権限を設定しておく。

sudo chmod 600 /etc/netplan/00-installer-config.yaml

設定を反映する

まず、構文を確認する。

sudo netplan generate

エラーが出なければ、次に netplan try を使う。

sudo netplan try

netplan try は設定を一時的に適用するコマンドである。問題がなければEnterで確定する。確認しなかった場合や接続が失われた場合は、自動的にロールバックされる。

SSH接続中にネットワーク設定を間違えると、接続が切れて戻れなくなることがある。そのため、リモート作業では、いきなり netplan apply を実行するよりも、先に netplan try を使う方が安全である。

問題がなければ、設定を反映する。

sudo netplan apply

固定IPアドレスが反映されたか確認する

IPアドレスを確認する。

ip addr show ens18

短く確認するなら、以下でも構わない。

ip -br addr show ens18

ルーティングを確認する。

ip route

以下のような行があれば、デフォルトゲートウェイが設定されている。

default via 192.168.11.1 dev ens18

DNSを確認する。

resolvectl status

疎通確認も行う。

ping -c 4 8.8.8.8

IPアドレス宛にpingが通る場合、ネットワーク自体は疎通できている。次に、名前解決を確認する。

ping -c 4 google.com

8.8.8.8 にはpingが通るのに google.com にpingが通らない場合、DNS設定に問題がある可能性が高い。

よくあるハマりどころ

インターフェース名が違う

サンプルでは eth0 と書かれていることがあるが、実際のUbuntu Serverでは ens18ens160enp0s3 などになっていることがある。

設定ファイルのインターフェース名と、実際のインターフェース名が違うと、固定IPは反映されない。

YAMLのインデントミス

NetplanはYAML形式で設定する。インデントがずれていると設定に失敗する。

不安な場合は、設定後に以下を実行する。

sudo netplan generate

エラーが出る場合は、インデントやキー名の間違いを確認する。

SSH接続が切れる

SSH接続中にIPアドレスを変更すると、接続が切れることがある。リモート作業の場合は、以下の順番がおすすめである。

sudo netplan generate
sudo netplan try
sudo netplan apply

netplan try を使うと、設定ミス時に自動で元に戻せる可能性がある。

インターネットに出られない

IPアドレスは設定できたのにインターネットに出られない場合は、デフォルトゲートウェイを確認する。

ip route

以下のような行があるか確認する。

default via 192.168.11.1 dev ens18

なければ、Netplanの routes を見直す。

routes:
  - to: default
    via: 192.168.11.1

名前解決ができない

たとえば、以下は成功するとする。

ping -c 4 8.8.8.8

しかし、以下が失敗する場合である。

ping -c 4 google.com

この場合、DNS設定を確認する。

nameservers:
  addresses:
    - 192.168.11.1
    - 8.8.8.8

設定後、以下でDNSの状態を確認する。

resolvectl status

gateway4 を使った古い記事がある

古い記事では、以下のような書き方を見かけることがある。

gateway4: 192.168.11.1

Ubuntu 26.04で新しく設定するなら、以下のように routes を使ってデフォルトルートを書く形で覚えるのがおすすめである。

routes:
  - to: default
    via: 192.168.11.1

Netplan公式ドキュメントの固定IP設定例でも、addressesroutesnameservers を使う形が示されている。

cloud-initに設定を上書きされる場合がある

クラウドイメージやProxmoxのcloud-initテンプレートを使っている場合、Netplanの設定がcloud-initによって生成されていることがある。

その場合、設定ファイル名が以下のようになっていることがある。

50-cloud-init.yaml

ファイル内に以下のようなコメントがある場合は、cloud-initによって生成された設定である。

# This file is generated from information provided by the datasource.

この場合、直接編集しても、環境によっては再生成される可能性がある。検証環境であればバックアップを取った上で編集してもよいが、本番環境やクラウド環境ではcloud-init側の設定も確認する。

DHCPに戻す場合

固定IPをやめてDHCPに戻したい場合は、以下のように設定する。

network:
  version: 2
  renderer: networkd
  ethernets:
    ens18:
      dhcp4: true

設定後に反映する。

sudo netplan generate
sudo netplan try
sudo netplan apply

DHCPに戻すと、IPアドレスはルーターやDHCPサーバーから自動取得される。

最小構成の設定例

検証環境でシンプルに固定IPを設定する場合は、以下のような構成で十分である。

network:
  version: 2
  renderer: networkd
  ethernets:
    ens18:
      dhcp4: false
      addresses:
        - 192.168.11.38/24
      routes:
        - to: default
          via: 192.168.11.1
      nameservers:
        addresses:
          - 192.168.11.1

外部DNSも設定したい場合は、以下のように追加する。

nameservers:
        addresses:
          - 192.168.11.1
          - 8.8.8.8
          - 1.1.1.1

作業手順まとめ

Ubuntu 26.04 Serverで固定IPを設定するコマンドの流れは以下である。

ip addr
ip route
resolvectl status
ls -l /etc/netplan/
sudo cp /etc/netplan/00-installer-config.yaml /etc/netplan/00-installer-config.yaml.bak
sudo nano /etc/netplan/00-installer-config.yaml
sudo chmod 600 /etc/netplan/00-installer-config.yaml
sudo netplan generate
sudo netplan try
sudo netplan apply
ip addr
ip route
resolvectl status

確認するべきポイントは、以下の4つである。

  • インターフェース名が正しいか
  • IPアドレスとサブネットが正しいか
  • デフォルトゲートウェイが正しいか
  • DNSサーバーが正しいか

まとめ

Ubuntu 26.04 Serverで固定IPアドレスを設定する場合は、NetplanのYAMLファイルを編集する。

  1. ip addr でインターフェース名を確認する
  2. ip route でデフォルトゲートウェイを確認する
  3. /etc/netplan/ 配下の設定ファイルをバックアップする
  4. addressesroutesnameservers を設定する
  5. chmod 600 で権限を整える
  6. netplan generate で構文を確認する
  7. netplan try で安全に試す
  8. netplan apply で反映する
  9. ip addrip routeresolvectl status で確認する

NetplanはYAML形式なので、最初は少し分かりにくく感じるかもしれない。ただ、固定IP設定で見るべきポイントは、インターフェース名、IPアドレス、ゲートウェイ、DNSサーバーの4つである。

Proxmox VEやESXi上にUbuntu Serverを作る場合、IPアドレスを固定しておくと、SSH接続やDocker検証、Webサーバー構築などが扱いやすくなる。

参考

Comments

No comments yet. Why don’t you start the discussion?

Leave a Reply

Your email address will not be published. Required fields are marked *