仮想NIC方式の仮想インタフェースでは、OSのネットワークサービスと連動して、活性化/非活性化が行われます。このため、resethanetコマンドにより、GLSを再起動する場合でも、仮想インタフェースは活性状態を維持します。
仮想NIC方式では、通常のNICと同様に、IPアドレスの設定をインタフェース用の設定ファイル(/etc/sysconfig/network-scripts/ifcfg-shaX)に記述します。他の通信方式のように、hanetconfigコマンドでIPアドレスを設定する必要はありません。
仮想NIC方式で使用する物理インタフェースに対して、タグVLANインタフェースを設定しないでください。タグVLANインタフェースを設定した場合、仮想インタフェースの活性化は失敗します。
仮想NIC方式の場合、仮想インタフェースのインタフェース設定ファイル(/etc/sysconfig/network-scripts/ifcfg-shaX)は、以下のタイミングで作成/削除されます。
作成の場合:hanetconfig createコマンドで仮想インタフェースを設定したとき
削除の場合:hanetconfig deleteコマンドで仮想インタフェースを削除したとき
RHEL6以降の場合、OSの起動により、libvirtdサービスが起動する際、LRO(large-receive-offload)機能をサポートするNIC(例:10G NIC)が、一時的にリンクダウンする場合があります。この場合、GLSは、NICのリンクダウンを検出して、システムログにエラーメッセージを出力することがあります。
リンクダウンを防ぐには、以下のいずれかを実施してください。
/etc/sysctl.confファイル内の“net.ipv4.ip_forward =”に“1”を設定する。
libvirtdサービスを無効化する。(仮想マシン機能を使用しない場合)
詳細は、OSのマニュアルを参照してください。
ethtoolコマンドを利用して物理NICの設定を変更した場合、物理NICのドライバがリセットされることがあります。このとき仮想インタフェースは一時的にリンクダウンを検出します。
使用するインタフェースのMTU長を変更する場合は、プライマリインタフェースおよびセカンダリインタフェースの設定ファイル(ifcfg-ethX)と、仮想インタフェースの設定ファイル(ifcfg-shaX)に、同じ値を設定してください。変更した値は、システムのリブート後に有効となります。
# cat /etc/sysconfig/network-scripts/ifcfg-eth1 DEVICE=eth1 (省略..) MTU=9000 # cat /etc/sysconfig/network-scripts/ifcfg-eth2 DEVICE=eth2 (省略..) MTU=9000 # cat /etc/sysconfig/network-scripts/ifcfg-sha0 DEVICE=sha0 (省略..) MTU=9000 |
SR-IOV機能により作成されたインタフェースは使用できません。
仮想NIC方式で使用できる物理インタフェースの名前は、大文字または小文字の"a"~"r"の文字で始まる名前です。
MTU長を変更する場合は、必ず1280以上を設定してください。
仮想NIC方式の仮想インタフェースに仮想ブリッジが接続された構成の場合、仮想インタフェースの活性化およびインタフェースの動的追加/削除において、以下のメッセージがシステムログに出力される場合があります。本メッセージは無視してください。
kernel: brX: received packet on shaX with own address as source address |
firewalldサービスが有効になっている場合は、デフォルト設定されているゾーンで動作します。
物理インタフェースのLLDP(Link Layer Discovery Protocol)機能は有効にしないでください。
仮想NIC方式を使用する際、カーネルパラメタ設定ファイルに以下の設定が記載されている場合は、その行を削除してください。GLSで設定した値が上書きされ、正常に動作しない場合があります。
net.ipv6.conf.all.disable_ipv6 = X net.ipv6.conf.default.disable_ipv6 = X net.ipv6.conf.<dev>.disable_ipv6 = X |
X:数値
<dev>:GLSの仮想インタフェースが束ねるNIC名
OS | カーネルパラメタ設定ファイル |
---|---|
RHEL6 | /etc/sysctl.conf |
RHEL7 | /etc/sysctl.conf |