インスタンスをホストネットワークに直接アタッチ¶
IncusをIncusOS上で動かす際、デフォルトではNATされたブリッジネットワークincusbr0を使います:
gibmat@futurfusion:~$ incus network list
+----------+--------+---------+----------------+---------------------------+----------------------------+---------+---------+
| NAME | TYPE | MANAGED | IPV4 | IPV6 | DESCRIPTION | USED BY | STATE |
+----------+--------+---------+----------------+---------------------------+----------------------------+---------+---------+
| incusbr0 | bridge | YES | 10.89.179.1/24 | fd42:e1a1:408f:710a::1/64 | Local network bridge (NAT) | 1 | CREATED |
+----------+--------+---------+----------------+---------------------------+----------------------------+---------+---------+
しかし、コンテナーや仮想マシンをホストネットワークに直接アタッチしたい場合もあります。これはinstances roleを適切なインターフェースあるいはボンドに割り当てることで簡単に実現できます。
まず、現在のIncusOSのネットワーク設定を取得します:
gibmat@futurfusion:~$ incus admin os system network show
WARNING: The IncusOS API and configuration is subject to change
config:
interfaces:
- addresses:
- dhcp4
- slaac
hwaddr: 10:66:6a:1f:50:b7
lldp: false
name: enp5s0
required_for_online: "no"
state:
interfaces:
enp5s0:
addresses:
- 10.234.136.193
- fd42:3cfb:8972:3990:1266:6aff:fe1f:50b7
hwaddr: 10:66:6a:1f:50:b7
mtu: 1500
roles:
- management
- cluster
routes:
- to: default
via: 10.234.136.1
speed: "-1"
state: routable
stats:
rx_bytes: 60644
rx_errors: 0
tx_bytes: 113337
tx_errors: 0
type: interface
次に、incus admin os system network editを実行してインターフェースまたはボンドを編集して適切なロールを追加します:
config:
interfaces:
- addresses:
- dhcp4
- slaac
hwaddr: 10:66:6a:1f:50:b7
lldp: false
name: enp5s0
required_for_online: "no"
roles:
- instances
設定の変更を反映したあと、アンマネージドのブリッジが現れます:
gibmat@futurfusion:~$ incus network list
+----------+--------+---------+----------------+---------------------------+----------------------------+---------+---------+
| NAME | TYPE | MANAGED | IPV4 | IPV6 | DESCRIPTION | USED BY | STATE |
+----------+--------+---------+----------------+---------------------------+----------------------------+---------+---------+
| enp5s0 | bridge | NO | | | | 0 | |
+----------+--------+---------+----------------+---------------------------+----------------------------+---------+---------+
| incusbr0 | bridge | YES | 10.89.179.1/24 | fd42:e1a1:408f:710a::1/64 | Local network bridge (NAT) | 1 | CREATED |
+----------+--------+---------+----------------+---------------------------+----------------------------+---------+---------+
このネットワークインターフェースを使ってマネージドのネットワークを作成します:
gibmat@futurfusion:~$ incus network create enp5s0 parent=enp5s0 --type=physical
gibmat@futurfusion:~$ incus network list
+----------+----------+---------+----------------+---------------------------+----------------------------+---------+---------+
| NAME | TYPE | MANAGED | IPV4 | IPV6 | DESCRIPTION | USED BY | STATE |
+----------+----------+---------+----------------+---------------------------+----------------------------+---------+---------+
| enp5s0 | physical | YES | | | | 0 | CREATED |
+----------+----------+---------+----------------+---------------------------+----------------------------+---------+---------+
| incusbr0 | bridge | YES | 10.89.179.1/24 | fd42:e1a1:408f:710a::1/64 | Local network bridge (NAT) | 1 | CREATED |
+----------+----------+---------+----------------+---------------------------+----------------------------+---------+---------+
これで、インスタンスをホストの物理ネットワークに直接接続するように設定できます:
gibmat@futurfusion:~$ incus launch images:debian/13 debian-nat
Launching debian-nat
gibmat@futurfusion:~$ incus launch images:debian/13 debian-direct --network enp5s0
Launching debian-direct
gibmat@futurfusion:~$ incus list
+---------------+---------+-----------------------+------------------------------------------------+-----------+-----------+
| NAME | STATE | IPV4 | IPV6 | TYPE | SNAPSHOTS |
+---------------+---------+-----------------------+------------------------------------------------+-----------+-----------+
| debian-direct | RUNNING | 10.234.136.199 (eth0) | fd42:3cfb:8972:3990:1266:6aff:fe71:14e0 (eth0) | CONTAINER | 0 |
+---------------+---------+-----------------------+------------------------------------------------+-----------+-----------+
| debian-nat | RUNNING | 10.89.179.217 (eth0) | fd42:e1a1:408f:710a:1266:6aff:fef6:4995 (eth0) | CONTAINER | 0 |
+---------------+---------+-----------------------+------------------------------------------------+-----------+-----------+
このネットワークをすべてのインスタンスのデフォルトとすることもできます:
gibmat@futurfusion:~$ incus profile device set default eth0 network=enp5s0