Red Hat Training

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

18.12. 네트워크 필터링 적용

이 섹션에서는 libvirt의 네트워크 필터, 해당 목표, 개념 및 XML 형식에 대한 소개를 제공합니다.

18.12.1. 소개

네트워크 필터링의 목표는 가상화 시스템의 관리자가 가상 시스템에서 네트워크 트래픽 필터링 규칙을 설정 및 적용하고 가상 머신이 보내거나 받을 수 있는 네트워크 트래픽의 매개 변수를 관리할 수 있도록 하는 것입니다. 가상 시스템이 시작될 때 네트워크 트래픽 필터링 규칙이 호스트 실제 시스템에 적용됩니다. 필터링 규칙을 가상 머신 내에서 우회할 수 없기 때문에 가상 머신 사용자의 관점에서 의무화됩니다.
게스트 가상 머신의 관점에서 네트워크 필터링 시스템을 사용하면 각 가상 시스템의 네트워크 트래픽 필터링 규칙을 인터페이스별로 개별적으로 구성할 수 있습니다. 이러한 규칙은 가상 시스템이 시작될 때 호스트 물리적 시스템에 적용되며 가상 시스템이 실행되는 동안 수정할 수 있습니다. 후자는 네트워크 필터의 XML 설명을 수정하여 수행할 수 있습니다.
여러 가상 머신은 동일한 일반 네트워크 필터를 사용할 수 있습니다. 이러한 필터를 수정하면 이 필터를 참조하는 실행 중인 모든 가상 시스템의 네트워크 트래픽 필터링 규칙이 업데이트됩니다. 실행 중이 아닌 머신이 시작 시 업데이트됩니다.
앞에서 언급했듯이 특정 유형의 네트워크 구성에 대해 구성된 개별 네트워크 인터페이스에서 네트워크 트래픽 필터링 규칙을 적용할 수 있습니다. 지원되는 네트워크 유형은 다음과 같습니다.
  • network
  • 이더넷 - 브리징 모드에서 사용해야 합니다.
  • 브릿지

예 18.1. 네트워크 필터링의 예

인터페이스 XML은 최상위 필터를 참조하는 데 사용됩니다. 다음 예제에서 인터페이스 설명은 필터 정리를 참조합니다.
   <devices>
    <interface type='bridge'>
      <mac address='00:16:3e:5d:c7:9e'/>
      <filterref filter='clean-traffic'/>
    </interface>
  </devices>
네트워크 필터는 XML로 작성되며 다른 필터에 대한 참조, 트래픽 필터링 규칙 또는 둘 다의 조합을 포함할 수 있습니다. 위의 참조된 필터 정리-traffic는 다른 필터에 대한 참조만 포함하고 실제 필터링 규칙을 포함하지 않는 필터입니다. 다른 필터에 대한 참조를 사용할 수 있으므로 필터 트리를 빌드할 수 있습니다. clean-traffic 필터는 명령을 사용하여 볼 수 있습니다. # virsh nwfilter-dumpxml clean-traffic.
앞에서 언급했듯이 여러 가상 머신에서 단일 네트워크 필터를 참조할 수 있습니다. 일반적으로 인터페이스에는 해당 트래픽 필터링 규칙과 연관된 개별 매개 변수가 있으므로 필터 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을 사용하고 있으며, 이 필터의 용도 중 하나인 소스 IP 주소로 10.0.0.1을 사용합니다.