libvirt网络过滤规则简单总结
libvirt网络过滤规则, 一个过滤规则定义的示例:
< filter name='no-ip-spoold'chain='ipv4' >
< uuid >fce8ae33-e69e-83bf-262e-30786c1f8072< /uuid >
< rule action='drop' direction='out' priority='500' >
< ip match='no' srcipaddr='192.168.1.1'/ >
< /rule >
< filterref filter='no-mac-spoofing'/ >
< /filter >
根元素 < filter >的主要属性包括“name"和“chain”,子元素主要包括“< uuid >”、“< filterref >”、“< rule >”等。“name”属性定义该过滤规则的名称,“chain”属性定义该过滤器所在的链,过滤链用于组织过滤规则。目前,可用的chain只有root、ipv4、ipv6、arp和rarp。子元素"< rule > "定义一条规则。“<filterref >”可以直接引用其它定义好的过滤器。在这个例子中,规则匹配“IP”协议,因此,过滤器在“IPV4”链中。
在XML定义中,一条过滤规则就是一个rule节点,rule节点主要有三个属性:
“action”:可以是“drop”,表示丢弃;
“reject”,拒绝但同时生成一个ICMP拒绝消息;
“accept”表示允许通过;
“return”返回到调用该过滤器的上一级过滤器进行配;
“continue”跳到下一条规格进行匹配。
“direction”:数据包到方向,可以是“in”,入方向;“out”,出方向;“inout",双方向。
“priority”:相对于其它规则的顺序,值越低,优先级越高,取值范围为-1000到1000。如果缺省,自动赋值500。
“statematch ”:连接状态匹配,缺省为'true',还可以选择'false'忽略连接状态。
过滤规则在做匹配时,所有条件都须同时满足,即进行逻辑与。
过滤规则支持的协议,即“rule”标签下的内容(例如上面例子中的ip):
Mac
srcmacaddr MAC_ADDR 源MAC地址
srcmacmask MAC_MASK 源MAC地址掩码
dstmacaddr MAC_ADDR 目标MAC地址
dstmacmask MAC_MASK 目标MAC地址掩码
protocolid STRING 第三层协议的ID,可以是arp, rarp, ipv4, ipv6
comment STRING
Vlan
srcmacaddr MAC_ADDR 源MAC地址
srcmacmask MAC_MASK 源MAC地址掩码
dstmacaddr MAC_ADDR 目标MAC地址
dstmacmask MAC_MASK 目标MAC地址掩码
vlanid UINT16 (0x0-0xfff, 0 - 4095) VLANID
encap-protocol String 封装的第三层协议ID,可以是arp, ipv4, ipv6
comment STRING
IPv4
srcmacaddr MAC_ADDR 源MAC地址
srcmacmask MAC_MASK 源MAC地址掩码
dstmacaddr MAC_ADDR 目标MAC地址
dstmacmask MAC_MASK 目标MAC地址掩码
srcipaddr IP_ADDR 源IP地址
srcipmask IP_MASK 源IP地址掩码
dstipaddr IP_ADDR 目标IP地址
dstipmask IP_MASK 目标IP地址掩码
protocol UINT8, STRING 第四层协议到标识,可以是tcp,udp, udplite, esp, ah, icmp, igmp, sctp
srcportstart UINT16 源端口范围的开始值
srcportend UINT16 源端口范围的结束值
dstportstart UINT16 目标端口范围的开始值
dstportend UINT16 目标端口范围的结束值
dscp UINT8 (0x0-0x3f, 0 - 63) 服务区分代码点
comment STRING
TCP/UDP/SCTP
srcmacaddr MAC_ADDR 源MAC地址
srcipaddr IP_ADDR 源IP地址
srcipmask IP_MASK 源IP地址掩码
dstipaddr IP_ADDR 目标IP地址
dstipmask IP_MASK 目标IP地址掩码
srcipfrom IP_ADDR 源IP地址范围的开始值
srcipto IP_ADDR 源IP地址范围的结束值
dstipfrom IP_ADDR 目标IP地址范围的开始值
dstipto IP_ADDR 目标IP地址范围的结束值
srcportstart UINT16 源端口范围的开始值
srcportend UINT16 源端口范围的结束值
dstportstart UINT16 目标端口范围的开始值
dstportend UINT16 目标端口范围的结束值
dscp UINT8 (0x0-0x3f, 0 - 63) 服务区分代码点
comment STRING
state STRING 逗号分隔的列表,可以是NEW,ESTABLISHED,RELATED,INVALID,NONE
flags STRING 只适用于TCP,逗号分隔的列表,可以是SYN,ACK,URG,PSH,FIN,RST,NONE,ALL
ICMP
该类规则chain的参数被忽略
srcmacaddr MAC_ADDR 源MAC地址
srcmacmask MAC_MASK 源MAC地址掩码
dstmacaddr MAC_ADDR 目标MAC地址
dstmacmask MAC_MASK 目标MAC地址掩码
srcipaddr IP_ADDR 源IP地址
srcipmask IP_MASK 源IP地址掩码
dstipaddr IP_ADDR 目标IP地址
dstipmask IP_MASK 目标IP地址掩码
srcipfrom IP_ADDR 源IP地址范围的开始值
srcipto IP_ADDR 源IP地址范围的结束值
dstipfrom IP_ADDR 目标IP地址范围的开始值
dstipto IP_ADDR 目标IP地址范围的结束值
type UINT16 ICMP类型
code UINT16 ICMP代码
dscp UINT8 (0x0-0x3f, 0 - 63) 服务区分代码点
comment (Since 0.8.5) STRING
state STRING 逗号分隔的列表,可以是NEW,ESTABLISHED,RELATED,INVALID,NONE
IGMP, ESP, AH, UDPLITE, 'ALL'
该类规则chain的参数被忽略
srcmacaddr MAC_ADDR 源MAC地址
srcmacmask MAC_MASK 源MAC地址掩码
dstmacaddr MAC_ADDR 目标MAC地址
dstmacmask MAC_MASK 目标MAC地址掩码
srcipaddr IP_ADDR 源IP地址
srcipmask IP_MASK 源IP地址掩码
dstipaddr IP_ADDR 目标IP地址
dstipmask IP_MASK 目标IP地址掩码
srcipfrom IP_ADDR 源IP地址范围的开始值
srcipto IP_ADDR 源IP地址范围的结束值
dstipfrom IP_ADDR 目标IP地址范围的开始值
dstipto IP_ADDR 目标IP地址范围的结束值
dscp UINT8 (0x0-0x3f, 0 - 63) 服务区分代码点
comment (Since 0.8.5) STRING
state STRING 逗号分隔的列表,可以是NEW,ESTABLISHED,RELATED,INVALID,NONE。
libvirt网络过滤规则简单总结的更多相关文章
- tcpdump 选项及过滤规则
tcpdump tcp -i eth1 -t -s 0 -c 100 and dst port ! 22 and src net 192.168.1.0/24 -w ./target.cap (1)t ...
- Wireshark-BPF过滤规则
设置过滤规则就是让网络设备只是捕获我们感兴趣的网络数据包,如果没有设置过滤规则,即上面的 filter_app 是空字符串,那么网络设备就捕获所有类型的数据包,否则只是捕获过滤规则设置的数据包,此时过 ...
- Wireshark技巧-过滤规则和显示规则
Wireshark是一个强大的网络协议分析软件,最重要的它是免费软件. 过滤规则 只抓取符合条件的包,在Wireshark通过winpacp抓包时可以过滤掉不符合条件的包,提高我们的分析效率. 如果要 ...
- Logback中如何自定义灵活的日志过滤规则
当我们需要对日志的打印要做一些范围的控制的时候,通常都是通过为各个Appender设置不同的Filter配置来实现.在Logback中自带了两个过滤器实现:ch.qos.logback.classic ...
- Wireshark技巧-过滤规则和显示规则【转】
转自:https://www.cnblogs.com/icez/p/3973873.html Wireshark是一个强大的网络协议分析软件,最重要的它是免费软件. 过滤规则 只抓取符合条件的包,在W ...
- wireshark抓包的过滤规则
使用wireshark抓包的过滤规则.1.过滤源ip.目的ip.在wireshark的过滤规则框Filter中输入过滤条件.如查找目的地址为192.168.101.8的包,ip.dst==192.16 ...
- 【转】Wireshark技巧-过滤规则和显示规则
原文: http://www.cnblogs.com/icez/p/3973873.html ----------------------------------------------------- ...
- 干货,Wireshark使用技巧-过滤规则
- 过滤规则使用 在抓取报文时使用的规则,称为过滤规则,Wireshark底层是基于Winpcap,因此过滤规则是Winpcap定义的规则,设置过滤规则后,抓到的报文仅包含符合规则的报文,其它报文则被 ...
- 组件注册-自定义TypeFilter指定过滤规则
组件注册-自定义TypeFilter指定过滤规则 4.1 FilterType.ANNOTATION 按照注解方式 4.2 FilterType.ASSIGNABLE_TYPE 按照给定的类型 @Co ...
随机推荐
- Valgrind 内存泄漏工具
Valgrind 是一款 Linux下(支持 x86.x86_64和ppc32)程序的内存调试工具,它可以对编译后的二进制程序进行内存使用监测(C语言中的malloc和free,以及C++中的new和 ...
- TYVJ-P1864 守卫者的挑战 题解
P1864 [Poetize I]守卫者的挑战 时间: 1000ms / 空间: 131072KiB / Java类名: Main 描述 打开了黑魔法师Vani的大门,队员们在迷宫般的路上漫无目的地搜 ...
- iOS:转载:IOS谓词--NSPredicate
IOS谓词--NSPredicate 分类: IOS应用2013-02-19 17:24 6792人阅读 评论(1) 收藏 举报 Cocoa 提供了NSPredicate 用于指定过滤条件,谓词是指在 ...
- C#类的访问修饰符
默认情况下,类声明为内部的,即只有当前工程中的代码才能访问它.可以用internal访问修饰符关键字显式指定,但这不是必须的,类在定义时默认为此类型的类.但是C# 方法默认访问级别: private. ...
- PyDev:warning: Debugger speedups using cython not foun
在eclipse下调试代码开始时总提示一个警告: warning: Debugger speedups using cython not found. Run '"C:\Python36\p ...
- linux 的命令 -exec 的使用
linux中的 exec命令,-exec 后面跟的是linux的 command 命令,exec命令以分号结束‘:’, 该分号前面要放 反斜杠转义 . find . -name jquery.js - ...
- 更改DNS轻松访问google.com,FaceBook,Youtube等
将默认的Dns更改为42.120.21.30即可打开 https://www.google.com/ https://www.facebook.com/ https://www.youtube.com ...
- Unity 事件2
UIMouseEvent.cs: using UnityEngine; using System; public abstract class UIMouseEvent : MonoBehaviour ...
- sae python中Mysql中文乱码的解决
一開始我用的是: db=MySQLdb.connect(db=sae.const.MYSQL_DB,user=sae.const.MYSQL_USER,passwd=sae.const.MYSQL_P ...
- 谈谈 Java 线程状态相关的几个方法
http://blog.jrwang.me/2016/java-thread-states/ 发表于 2016-07-23 在 Java 多线程编程中,sleep(), interrupt(), wa ...