プロジェクト

全般

プロフィール

Linux KVMホストのネットワーク設定-CentOS 7

CentOS 7をKVMホストとするときのネットワーク設定メモです。
CentOS 7では、NetworkManagerを介した設定が推奨で、直接/etc/sysconfig/network-script/ifcfg-* を編集するのは非推奨となっています。
NetworkManagerのコマンドラインツールnmcliが提供され、サーバー(GUIレス)な環境でも対応可能となっています。

KVMゲストが外部ネットワークへブリッジ接続する場合の設定方法

KVMゲストがネットワークにKVMホストをブリッジして接続する場合、あらかじめKVMホストにブリッジデバイスを設けておく必要があります。
CentOS 7を仮想サーバーとしてインストールした直後は、KVMホスト内部のブリッジ(virbr0)が生成されていますが、このブリッジではKVMゲストは直接外部のネットワークへ接続することができません(KVMホストをNATとして外部のネットワークに接続)。

そこで、KVMホストに外部ネットワークに接続するブリッジを作成し、KVMホストのNICデバイスはこのブリッジに接続するように構成します。

以下、作成するブリッジのデバイス名をbr0、NICデバイス名 enp4s0 とします。

NetworkManager (nmcli) を使用した設定

  • 既存のenp4s0 を削除
    # nmcli connection delete enp4s0
  • br0 を新規作成
    # nmcli connection add type bridge autoconnect yes con-name br0 ifname br0
  • br0 のスパニングツリー設定を無効化
    # nmcli connection modify br0 bridge.stp no
  • enp4s0 を作成
    # nmcli connection add type bridge-slave autoconnect yes con-name enp4s0 ifname enp4s0 master br0
  • br0 のIPアドレス設定(CentOS 7.0時代の設定、7.1以降はエラーとなる)
    # nmcli connection modify br0 ipv4.method manual ipv4.addresses "192.168.0.101/24 192.168.0.1" \
    ipv4.dns 192.168.0.2

設定を変更したら、対象デバイスを一旦停止し再起動します。

# nmcli dev disconnect iface enp4s0
# nmcli dev connect iface enp4s0
  • nmcli con down / up でもできるようですが、「con downすると手動モードになって・・・dev disconnectを推奨する」という記述がRed Hatのマニュアルにありました。

クリップボードから画像を追加 (サイズの上限: 1 GB)