はじめに
Ubuntuにおいて、1つのNICに複数の固定IPアドレスを設定する方法について説明します。この方法を使用すると、1つのネットワークインターフェースカードを使用して、複数のネットワークセグメントに接続することができます。
前提条件
Ubuntu 20.04 LTSを使用していること
root権限またはsudo権限を持っていること
手順
ネットワークインターフェース設定ファイルにアクセスします。/etc/netplan/ディレクトリにある適切な設定ファイルを編集します。
おすすめ:バックアップの取得
ネットワークインターフェース設定を元に戻せるように、/etc/netplan/ディレクトリにある設定ファイルのバックアップを取っておくことをお勧めします。
例:
cp /etc/netplan/00-network-manager-all.yaml /etc/netplan/00-network-manager-all.yaml.back
設定ファイルに以下のようなコードブロックを追加します:
network:
version: 2
renderer: networkd
ethernets:
enp1s0: # 自分のNICの名前に置き換えてください
addresses: [172.16.1.5/24, 172.16.2.5/24]
gateway4: 172.16.1.1
nameservers:
addresses: [172.16.1.16, 172.16.1.32]
設定を保存し、Netplanを更新します:
$ sudo netplan apply
設定が適用されたかどうかを確認します:
$ ip addr
設定が正常に適用されている場合、2つの固定IPアドレスが表示されます。
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: enp1s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 6c:62:6d:98:91:04 brd ff:ff:ff:ff:ff:ff
inet 172.16.1.5/24 brd 172.16.1.255 scope global enp1s0
valid_lft forever preferred_lft forever
inet 172.16.2.5/24 brd 172.16.2.255 scope global enp1s0
valid_lft forever preferred_lft forever
inet6 fe80::6e0f:d022:ecb8:4d76/64 scope link noprefixroute
valid_lft forever preferred_lft forever
注意点
- 複数のIPアドレスが同じネットワークセグメント内にある場合は、1つのデフォルトゲートウェイを指定することが一般的です。この例では、共通のゲートウェイ(172.16.1.1)を使用しています。
- ネームサーバのアドレスは環境に合わせて適切なものに置き換えてください。
まとめ
この記事では、Ubuntuで1つのNICに複数の固定IPアドレスを設定する方法を紹介しました。複数のIPアドレスを1つのNICに割り当てることで、ネットワーク上の異なるセグメントへの接続や仮想環境での柔軟なネットワーク設定が可能になります。是非試してみてください。