Menu Close

Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

18.12. ネットワークフィルターの適用

本セクションは、libvirt のネットワークフィルターと、その目的、概念、および XML 形式の概要を説明します。

18.12.1. はじめに

ネットワークフィルタリングの目的は、仮想システムの管理者が、仮想マシンでネットワークトラフィックフィルタリングルールを設定および適用し、仮想マシンが送受信できるネットワークトラフィックのパラメーターを管理できるようにすることです。ネットワークトラフィックフィルタリングルールは、仮想マシンの起動時にホストの物理マシンに適用されます。フィルタリングルールは仮想マシン内からは回避できないため、仮想マシンユーザーの視点からは必須となります。
ゲスト仮想マシンの視点からは、ネットワークフィルタリングシステムにより、各仮想マシンのネットワークトラフィックフィルタリングルールをインターフェースごとに個別に設定できます。このルールは、仮想マシンの起動時にホストの物理マシンに適用され、仮想マシンの実行中に変更できます。後者は、ネットワークフィルターの XML 記述を変更することで実現できます。
複数の仮想マシンが、同じ汎用ネットワークフィルターを使用できます。このフィルターを変更すると、このフィルターを参照する実行中の仮想マシンのネットワークトラフィックフィルタリングルールがすべて更新されます。起動時に、実行していないマシンが更新されます。
前述のように、ネットワークトラフィックフィルタリングルールを適用する場合は、特定のタイプのネットワーク設定に設定された個別のネットワークインターフェースを使用できます。対応しているネットワークタイプは、次のとおりです。
  • network
  • ethernet -- bridging モードで使用する必要があります。
  • bridge

例18.1 ネットワークフィルタリングの例

インターフェース XML は、トップレベルフィルターを参照するために使用されます。以下の例では、インターフェースの説明は、フィルターの clean-traffic を参照します。
   <devices>
    <interface type='bridge'>
      <mac address='00:16:3e:5d:c7:9e'/>
      <filterref filter='clean-traffic'/>
    </interface>
  </devices>
ネットワークフィルターはXMLで記述されており、他のフィルターへの参照、トラフィックフィルタリングのルール、または両方の組み合わせを含むことができます。上記の参照フィルターの clean-traffic は、他のフィルターへの参照のみが含まれ、実際のフィルタールールがないフィルターです。他のフィルターへの参照も使用できるため、フィルターツリーを構築できます。clean-traffic フィルターは、# virsh nwfilter-dumpxml clean-traffic コマンドを使用して表示できます。
前述のように、1 つのネットワークフィルターを、複数の仮想マシンで参照できます。インターフェースは通常、各トラフィックフィルタリングルールに関連付けられた個々のパラメーターを持つため、フィルターの XML で説明されているルールは、変数を使用して一般化できます。この場合、フィルター XML では変数名が使用され、フィルターが参照される場所に名前と値が提供されます。

例18.2 説明の拡張

以下の例では、インターフェースの説明が、パラメーター IP と、ドット付き IP アドレスを値として拡張されています。
  <devices>
    <interface type='bridge'>
      <mac address='00:16:3e:5d:c7:9e'/>
      <filterref filter='clean-traffic'>
        <parameter name='IP' value='10.0.0.1'/>
      </filterref>
    </interface>
  </devices>
この例では、clean-traffic ネットワークトラフィックフィルターは IP アドレスパラメーター 10.0.0.1 で表されます。ルールでは、このインターフェースからのすべてのトラフィックが常にソース IP アドレスとして 10.0.0.1 を使用することを規定しており、これはこの特定のフィルターの目的の 1 つになります。