用 XML 定义网络数据包规则
防火墙允许以 XML 格式导出网络数据包规则。然后可以修改文件,例如,添加大量相同类型的规则。
XML 文件包含两个主要节点:Rules和Resources。Rules节点列出网络数据包规则。此节点包含默认配置的规则(预定义规则)以及用户添加的规则(自定义规则)。
网络数据包规则标记
<key name="0000">
<tDWORD name="RuleId">100</tDWORD>
<tDWORD name="RuleState">1</tDWORD>
<tDWORD name="RuleTypeId">4</tDWORD>
<tQWORD name="AppIdEx">0</tQWORD>
<tDWORD name="ResIdEx">812</tDWORD>
<tDWORD name="ResIdEx2">0</tDWORD>
<tDWORD name="AccessFlag">2</tDWORD>
</key>
XML 格式的网络数据包规则设置
参数
|
描述
|
值
|
<key name="0000">
|
规则优先级。值越低,优先级越高。
|
整数
优先级值必须由 4 位数字组成。XML 文件中的节点必须按优先级值排列,从 0000 开始。
|
RuleId
|
规则 ID。
|
预定义规则
100 – 通过 TCP 请求 DNS 服务器。
101 – 通过 UDP 请求 DNS 服务器。
102 – 发送电子邮件消息。
110 – 任何网络活动(受信任网络)。
125 – 任何网络活动(本地网络)。
130 – 远程桌面网络活动。
131 – 通过本地端口的 TCP 连接。
132 – 通过本地端口的 UDP 连接。
133 – 传入的 TCP 流。
134 – 传入的 UDP 流。
137 – ICMP 目的地无法接通传入响应。
138 – ICMP 回显应答传入数据包。
140 – ICMP 超时传入响应。
142 – 传入的 ICMP 流。
266 – ICMPv6 回显请求传入数据包。
|
RuleState
|
规则状态。
|
0 – 预定义规则已禁用
1 – 预定义规则已启用
2 – 自定义规则已禁用
3 – 自定义规则已启用
|
RuleTypeId
|
规则类型 ID。
|
4 – 网络数据包规则。
|
AppIdEx
|
网络数据包规则所属的应用程序的 ID。
|
如果规则不属于任何应用程序,则值是 0。
|
ResIdEx
|
具有规则设置的资源的主 ID。您可以使用此标识符在“Resources”节点中查找具有规则设置的块。
|
整数
|
ResIdEx2
|
网络类型 ID。
|
0 – 任何地址。
50 – 受信任网络。
51 – 本地网络。
52 – 公用网络。
<Network Identifier> – 来自列表的地址 (地址是手动定义的)。
|
AccessFlag
|
操作参数的值。
|
0 – 允许。
2 – 根据应用程序规则。
3 – 阻止。
4 – 允许 和 记录事件。
6 – 根据应用程序规则 和 记录事件。
7 – 阻止 和 记录事件。
|
</key>
|
|
|
“Resources”节点包含网络数据包规则设置。自定义网络数据包规则设置列于“<key name="0004">”块中。
自定义网络数据包规则标记
<key name="0026">
<key name="Data">
<key name="RemotePorts"> </key>
<key name="LocalPorts"> </key>
<key name="AdapterBindings">
<key name="0000">
<key name="IpAddresses">
<key name="0000">
<key name="IP">
<key name="V6">
<tQWORD name="Hi">0</tQWORD>
<tQWORD name="Lo">0</tQWORD>
<tDWORD name="Zone">0</tDWORD>
<tSTRING name="ZoneStr"/>
</key>
<tBYTE name="Version">4</tBYTE>
<tDWORD name="V4">16909060</tDWORD>
<tBYTE name="Mask">32</tBYTE>
</key>
<key name="AddressIP"> </key>
<tSTRING name="Address"/>
</key>
</key>
<key name="MacAddresses">
<key name="0000">
<tDWORD name="Type">0</tDWORD>
<tQWORD name="AddressData0">1108152157446</tQWORD>
<tQWORD name="AddressData1">0</tQWORD>
</key>
</key>
<tSTRING name="AdapterName">ADAPTER TEST 123</tSTRING>
<tDWORD name="InterfaceType">3</tDWORD>
</key>
</key>
<tTYPE_ID name="unique">3213697024</tTYPE_ID>
<tBYTE name="Proto">2</tBYTE>
<tBYTE name="Direction">2</tBYTE>
<tBYTE name="IcmpType">0</tBYTE>
<tBYTE name="IcmpCode">0</tBYTE>
<tDWORD name="Flags">1</tDWORD>
<tBYTE name="TTL">255</tBYTE>
</key>
<key name="Childs"> </key>
<tDWORD name="Id">1073747214</tDWORD>
<tDWORD name="ParentID">7</tDWORD>
<tDWORD name="Flags">38</tDWORD>
<tSTRING name="Name">TEST1</tSTRING>
</key>
自定义网络数据包规则设置
参数
|
描述
|
值
|
<key name="Data">
|
参数 ID 块。
|
整数
|
RemotePorts
|
远程端口参数的值。
|
远程端口范围列表。
|
LocalPorts
|
本地端口参数的值。
|
本地端口范围列表。
|
AdapterBindings
|
网络适配器参数的值。
|
IpAddresses – IP 地址参数的值。
MacAddresses – MAC 地址参数的值。
AdapterName – 网络适配器的名称。
InterfaceType – 界面类型参数的值:
0 – 其他。1 – 环回网络。2 – 有线网络(以太网)。3 – 无线网络(Wi-Fi)。4 – 隧道。5 – PPP 连接。6 – PPPoE 连接。7 – VPN 连接。8 – Modem 连接。
|
unique
|
结构的内部 ID。
|
整数
建议保持此参数不变。
|
Proto
|
协议参数的值。
|
0 – 已禁用。
1 – ICMP。
2 – IGMP。
6 – TCP。
17 – UDP。
47 – GRE。
58 – ICMPv6。
|
Direction
|
方向参数的值。
|
1 – 入站(包)。
2 – 出站(包)。
3 – 入站/出站。
4 – 入站。
5 – 出站。
|
IcmpType
|
ICMP 类型参数的值。
|
ICMP 协议
0 – Echo Reply(ICMP)或已禁用。
3 – Destination Unreachable(ICMP)。
4 – Source Quench。
5 – Redirect。
6 – Alternate Host Address。
8 – Echo Request。
9 – Router Advertisement。
10 – Router Solicitation。
11 – Time Exceeded。
12 – Parameter Problem。
13 – Timestamp。
14 – Timestamp Reply。
15 – Information Request。
16 – Information Reply。
17 – Address Mask Request。
18 – Address Mask Reply。
30 – Traceroute。
31 – Datagram Conversion Error。
32 – Mobile Host Redirect。
33 – IPv6 Where-Are-You。
34 – IPv6 I-Am-Here。
35 – Mobile Registration Request。
36 – Mobile Registration Reply。
37 – Domain Name Request。
38 – Domain Name Reply。
40 – Photuris。
ICMPv6 协议
1 – Destination Unreachable。
2 – Packet Too Big。
3 – Time Exceeded。
4 – Parameter Problem。
128 – Echo Request。
129 – Echo Reply。
130 – Multicast Listener Query。
131 – Multicast Listener Report。
132 – Multicast Listener Done。
133 – Router Solicitation。
134 – Router Advertisement。
135 – Neighbor Solicitation。
136 – Neighbor Advertisement。
137 – Redirect Message。
138 – Router Renumbering。
139 – ICMP Node Information Query。
141 – Inverse Neighbor Discovery Solicitation Message。
142 – Inverse Neighbor Discovery Advertisement Message。
143 – Version 2 Multicast Listener Report。
144 – Home Agent Address Discovery Request Message。
145 – Home Agent Address Discovery Reply Message。
146 – Mobile Prefix Solicitation。
147 – Mobile Prefix Advertisement。
148 – Certification Path Solicitation Message。
149 – Certification Path Advertisement Message。
151 – Multicast Router Advertisement。
152 – Multicast Router Solicitation。
153 – Multicast Router Termination。
|
IcmpCode
|
ICMP 代码参数的值。
|
0 – 代码 0 或已禁用。
1 – 代码 1。
2 – 代码 2。
|
Flags
|
结构属性指针。
|
整数
建议保持此参数不变。
|
TTL
|
生存时间(TTL)参数的值。
|
以秒为单位的值。如果禁用,则值为 0。
|
</key>
|
|
|
Id
|
资源的主 ID(参见“Rules”节点)。
|
整数
|
ParentID
|
父组 ID。
|
整数
建议保持此参数不变。
|
Flags
|
规则状态。
|
6 – 规则已禁用。
38 – 规则已启用。
|
Name
|
网络数据包规则名称。
|
字符串
|
页面顶部