17.14. 应用网络过滤


本节介绍 libvirt 的网络过滤器、目标、概念和 XML 格式。

17.14.1. 简介

网络配置的目标是使虚拟化系统的管理员能够对虚拟机配置和强制实施网络流量过滤规则,并且管理虚拟机可以发送或接收的网络流量的参数。当虚拟机启动时,网络流量过滤规则会在主机物理机器上应用。由于过滤规则不能从虚拟机内部绕过,因此从虚拟机用户的角度看来就是必须的。
从客户机虚拟机的角度来看,网络过滤系统允许每个虚拟机的网络流量过滤规则,每个接口单独配置。这些规则在虚拟机启动时应用到主机物理机器上,并可在虚拟机运行时对其进行修改。可以通过修改网络过滤器的 XML 描述来实现后一种。
多个虚拟机可以使用相同的通用网络过滤器。当修改了这个过滤器时,会更新引用此过滤器的所有正在运行的虚拟机的网络流量过滤规则。未运行的机器将在启动时更新。
如前文所述,可以在为特定类型的网络配置而配置的独立网络接口上实施应用网络流量过滤规则。支持的网络类型包括:
  • network
  • Ethernet -- 必须在桥接模式中使用
  • bridge

例 17.1. 网络过滤示例

接口 XML 用于引用顶级过滤器。在以下示例中,接口描述引用过滤器 clean-traffic。
   <devices>
    <interface type='bridge'>
      <mac address='00:16:3e:5d:c7:9e'/>
      <filterref filter='clean-traffic'/>
    </interface>
  </devices>
Copy to Clipboard Toggle word wrap
网络过滤器使用 XML 编写,可能包含:引用其他过滤器、流量过滤规则或两者的组合。以上引用的过滤器 clean-traffic 是一个过滤器,仅包含对其他过滤器的引用,而不包含实际过滤规则。由于可以使用对其他过滤器的引用,因此可以构建过滤器树。可以使用命令查看 clean-traffic 过滤器: # virsh nwfilter-dumpxml clean-traffic
如前文所述,多个虚拟机可以引用一个网络过滤器。由于接口通常具有与其相应流量过滤规则关联的个别参数,因此可使用变量来常规化过滤器 XML 中描述的规则。在这种情况下,变量名称在过滤器 XML 中使用,并在引用过滤器的位置提供名称和值。

例 17.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>
Copy to Clipboard Toggle word wrap
在这个特定示例中,清理流量过滤器将以 IP 地址参数 10.0.0.1 表示,根据规则规定该接口的所有流量始终都使用 10.0.0.1 作为源 IP 地址,这是此特定过滤器的一种目的。
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat