Ubuntu 16.04: bridgeインターフェースの設定

bridgeインターフェースの設定方法について記載します。

bridgeを用いることで、KVMの仮想マシンやLXDのコンテナをホストマシンと同じネットワークに接続させることができます。

1 bridge-utilsのインストール

bridge作成前にbridge-utilsパッケージをインストールしておきます。

$ sudo apt install -y bridge-utils

2 bridge作成前の状態

bridge作成前の状態は以下のとおりです。ens3の文字列はイーサデバイスによって変わります(eth0やp2p1等)。お使いの環境に合わせて以降は置き換えてください。

$ ifconfig
ens3      Link encap:Ethernet  HWaddr 52:54:00:cd:e1:2e
          inet addr:192.168.11.92  Bcast:192.168.11.255  Mask:255.255.255.0
          inet6 addr: fe80::7446:bbda:95b6:990e/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:306 errors:0 dropped:0 overruns:0 frame:0
          TX packets:252 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:41145 (41.1 KB)  TX bytes:29880 (29.8 KB)

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:179 errors:0 dropped:0 overruns:0 frame:0
          TX packets:179 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1
          RX bytes:13539 (13.5 KB)  TX bytes:13539 (13.5 KB)

3 bridgeの作成

ens3の設定をbr0へ移動する形になります。/etc/network/interfacesで設定した後、システムを再起動します。

$ sudo reboot

3.1 DHCPを用いる場合

$ cat /etc/network/interfaces
# interfaces(5) file used by ifup(8) and ifdown(8)
auto lo
iface lo inet loopback
auto br0
iface br0 inet dhcp
      bridge_ports ens3
      bridge_stp off
      bridge_maxwait 0

3.2 IPアドレスを静的に割り当てる場合

$ cat /etc/network/interfaces
# interfaces(5) file used by ifup(8) and ifdown(8)
auto lo
iface lo inet loopback
auto br0
iface br0 inet static
      address 192.168.11.93
      netmask 255.255.255.0
      network 192.168.11.0
      broadcast 192.168.11.255
      gateway 192.168.11.1
      dns-nameservers 192.168.11.2 192.168.11.1
      dns-search hiroom2.com
      bridge_ports ens3
      bridge_stp off
      bridge_maxwait 0

4 bridge作成後の状態

ens3と同じMACアドレスを持つbr0が作成され、br0にIPアドレスが割り当てられます。

$ ifconfig
br0       Link encap:Ethernet  HWaddr 52:54:00:cd:e1:2e
          inet addr:192.168.11.92  Bcast:192.168.11.255  Mask:255.255.255.0
          inet6 addr: fe80::5054:ff:fecd:e12e/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:90 errors:0 dropped:0 overruns:0 frame:0
          TX packets:119 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:10232 (10.2 KB)  TX bytes:15201 (15.2 KB)

ens3      Link encap:Ethernet  HWaddr 52:54:00:cd:e1:2e
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:102 errors:0 dropped:0 overruns:0 frame:0
          TX packets:118 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:12437 (12.4 KB)  TX bytes:15111 (15.1 KB)

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:162 errors:0 dropped:0 overruns:0 frame:0
          TX packets:162 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1
          RX bytes:11938 (11.9 KB)  TX bytes:11938 (11.9 KB)