Fedoraでブリッジ接続する Hatena Bookmark

出典: Asterisk works Wiki

ブリッジ接続したい動機としては仮想OSをインストールした際にゲストOSに外部から接続する場合が多い。


目次

ブリッジを作成する

br0という名前のブリッジインターフェースを作成する場合

次の様な内容の設定ファイルを/etc/sysconfig/network-scripts/ifcfg-br0という名称で作る。

ポイントはTYPEをBridgeとしている点。

DEVICE=br0
TYPE=Bridge
BOOTPROTO=dhcp
ONBOOT=yes

上記はDHCPでアドレスを取得するが、サーバ用途なのだからIPアドレスを固定したい場合は次の様にstaticで設定すればよい。

DEVICE=br0
TYPE=Bridge
BOOTPROTO=static
IPADDR=192.168.10.200
NETMASK=255.255.255.0
NETWORK=192.168.10.0
BROADCAST=192.168.10.255
ONBOOT=yes

eth0の設定

今まで外部に出ていたインターフェース(多くの場合はeth0だろうが)をブリッジに接続する。

これはBRIDGE=<ブリッジIFの名称>という行を /etc/sysconfig/network-scripts/ifcfg-eth0に追加すればよい。

b0という名前のブリッジインターフェースにつなぐ場合は全体としては次の様になる。

root> cat /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
BOOTPROTO=dhcp
HWADDR=00:XX:XX:XX:XX:XX
ONBOOT=yes
BRIDGE=br0

ネットワークの再起動

設定が済んだらネットワークを再起動する

root> service network restart
インターフェース br0 を終了中:                             [  OK  ]
インターフェース eth0 を終了中:                            [  OK  ]
ループバックインターフェースを終了中                       [  OK  ]
ループバックインターフェイスを呼び込み中                   [  OK  ]
インターフェース eth0 を活性化中:                          [  OK  ]
インターフェース br0 を活性化中:  
br0 のIP情報を検出中... 完了。

次にホストOSで自分以外のパケットも受け取るためにeth0をpromiscモードに設定する。

root>ifconfig eth0 promisc

最後に設定を確認する。

root> ifconfig
br0       Link encap:Ethernet  HWaddr 00:1A:4D:42:F2:E7  
          inet addr:192.168.1.XX  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::21a:4dff:fe42:f2e7/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:1690626 errors:0 dropped:0 overruns:0 frame:0
          TX packets:703984 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:895862231 (854.3 MiB)  TX bytes:49116755 (46.8 MiB)

eth0      Link encap:Ethernet  HWaddr 00:1A:4D:42:F2:E7  
          inet6 addr: fe80::21a:4dff:fe42:f2e7/64 Scope:Link
          UP BROADCAST RUNNING PROMISC MULTICAST  MTU:1500  Metric:1
          RX packets:1996171 errors:0 dropped:0 overruns:0 frame:0
          TX packets:889352 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:1262596469 (1.1 GiB)  TX bytes:60929885 (58.1 MiB)
          Interrupt:16

ゲストOSを設定する

virt-managerを使ってkvm+qemuで仮想化したゲストOSでこのブリッジ接続を使う方法を説明する。

  1. virt-managerを起動し、インストールされているゲストOSを開く。
  2. ゲストOSのウィンドウで[詳細]を選択し、左下の[Add Hardware]をクリックする
  3. ハードウェアタイプを問われるので「Network」を選択し、[進む]ボタンをクリック
  4. 2種類から選択できるが、「共有物理装置」を選択する(Fedora11では何のこっちゃわからない訳になっている。きっと機械翻訳なのだろう)
  5. コンボが選択できるようになるので「eth0(ブリッジ br0)」を選択し、[進む]ボタンをクリックする
  6. 最後に確認画面が表示されるので[完了]ボタンをクリックする
  7. ウィザード画面が閉じ、ゲストOSの[詳細]タブの左のハードウェア一覧にいま追加したNICが追加されている
    ゲストOSに元からあったNICは削除してもよい

参考

Bridgeの設定 brctl

個人用ツール