「Ubuntu」でIPアドレスを管理しているのが「Netplan」というものです。
「/etc/netplan/」の階層に設定ファイルが配置されているので、その記述を変更すると固定にしたり自動取得にしたりと変更ができます。デフォルトは自動取得の状態になっているので、固定のIPアドレスに設定する方法をメモします。
設定用ファイルを準備する
まずは、デフォルトで存在する「/etc/netplan/50-cloud-config.yaml」のコピーを作成します。
(バックアップをとっておくという意味でも、まずは複製をしておきます。)
sudo cp /etc/netplan/50-cloud-init.yaml /etc/netplan/99-manual_config.yaml
コピーしたファイル「/etc/netplan/99-manual_config.yaml」を編集します。
sudo nano /etc/netplan/99-manual_config.yaml
「/etc/netplan/」内に複数の「yaml」ファイルを配置すると、ファイル名の辞書順(数字が大きいものから)で読み込んで設定がマージされます。
つまり、数字が大きいファイルほど優先されるので、「50」で始まるファイルより、「99」で始まるファイルに書かれた設定が優先されるので、複製した「99-manual_config.yaml」ファイルを編集して読み込ませます。
「99-manual_config.yaml」を編集する
「デフォルト」の設定情報
ファイルを開くと、デフォルトではこのようになっていると思います。
network:
ethernets:
eth0:
dhcp4: true
optional: true
version: 2
「eth0」の部分は、デバイスのインターフェースにより変わってきます。筆者の環境では、ラズパイに「Ubuntu」をインストールしたところ、有線LANのNICが「eth0」となりました。
無線LANの場合は「wlan0」などになるみたいです。
イーサネットを「固定IP」に変更する場合
IPを固定にする場合は、以下のように変更します。
network:
version: 2
ethernets:
eth0:
dhcp4: no
addresses: [192.168.1.101/24]
gateway4: 192.168.1.1
nameservers:
addresses: [192.168.1.1, 8.8.8.8]
search: []
【項目の説明】
- eth0:「ネットワークインタフェース」(環境によって値が変わります。)
- addresses:割り当てる「IPアドレス」
- gateway4:「デフォルトゲートウェイ」
- nameservers > addresses:「DNS」(カンマを使って複数割り当てが可能です。)
変更を適用
設定を書き込んだら、変更を適用させるコマンドを実行します。
「sudo netplan apply」で反映が可能です。
sudo netplan apply
コマンド実行が完了したら、反映を確認するために、「ip a」や「ifconfig」を使って確認します。
ip a