RouterOS bridge filter 桥防火墙详解


操作路径: /interface filter,
桥防火墙执行包过滤因此提供了用于管理数据流进,流出和流经桥的安全功能。
注:在桥接接口之间的数据包就像其他IP 流一样,也要经过类属的/ip firewall 规则(但桥过滤器总是在IP 过滤器/NAT之前应用,除了在IP防火墙输出之后执行的output)。这些规则可以同真实的物理接收/发送接口一起使用,也可以和简单对桥接在一起的接口划分的桥接口同时使用。
有三种桥过滤器列表:
• filter – 有三个预先设定的桥防火墙链表:
o input -其目的地是桥(进入桥设备的数据包,无论什么情况下以本地桥MAC地址为目标的数据)。
o output – 来自于桥(由桥设备本身处理发出的数据)
o forward – 通过桥转发(即有桥设备转发到另外网络的数据)。
• nat -桥网络地址翻译提供了改变遍历桥的数据包的源/目的MAC地址的方法。它有连条内置的链:
o scnat -用于在一个不同的MAC地址后“隐藏”一个主机或者一个网络。这个链适用于通过一个桥接口离开路由器的数据包
o dstnat -用于把一些包重定向到另一个目的地址
• broute – 使一个桥变为一个桥路由器— 一种在一些包上起路由作用而在其他包起桥作用的路由器。它有一个预定义链:brouting,当一个包进入一个受控接口后它便进行遍历(在“Bridging Decision”之前)。
注:桥的目标网络地址翻译在桥接判定之前执行。当需要涉及到三层过滤时或者流量控制,需要将桥的use-ip-firewall
启用,否则三层过滤和流量控制将无法工作。
你可以在桥防火墙(filter, broute and NAT)中设置数据包标记,就像用mangle在IP防火墙中设置数据包标记一样。
所以用桥防火墙设置的包标记可以在IP 防火墙中使用,反之亦然。普通桥防火墙属性在这部分描述。一些在nat,,broute和filterrules 之间有区别的参数将在后面的部分描述。
属性描述
802.3-sap (整型)- DSAP(目的文件服务访问点) 和 SSAP(源端业务接入点)是两个1 字节域,它们识别使用链路层服务的网络协议实体。这些字节总是相等的。两个十六进制数字可以在这里指定以匹配SAP字节。
802.3-type (整型)- 以太网协议类型,放置在IEEE 802.2 帧标题后面。仅当 802.3-sap 为0xAA(SNAP——子网连接点标题)时才生效。例如:AppleTalk可以由跟随在0x8098SNAP 类型码后面的0xAASAP 码说明。
arp-dst-address (IP 地址; 默认: 0.0.0.0/0) – ARP 目的地址
arp-dst-mac-address (MAC 地址; 默认: 00:00:00:00:00:00) – ARP 目的MAC 地址
arp-hardware-type (整型; 默认: 1) – ARP 硬件类型
arp-opcode (arp-nak | drarp-error | drarp-reply | drarp-request |inarp-request | reply |reply-reverse | request | request-reverse) – ARP opcode(数据包类型)
arp-nak – 消极ARP 应答 (很少使用,主要在ATM 网络中使用)
drarp-error – 动态RARP 错误代码, saying that an IP address for the given MACaddress can not
beallocated 表明一个给定MAC 地址的IP 地址不能分配
drarp-reply – 动态RARP 应答,带有一个主机临时地址分配
drarp-request – 动态RARP 请求一个对给定MAC 地址的临时IP 地址
reply – 带有一个MAC 地址的标准ARP 应答
reply-reverse – 带有一个以分配IP 地址的反向ARP(RARP)应答
request – 向一个已知IP 地址询问未知MAC 地址的标准ARP 请求
request-reverse – reverse ARP (RARP) request to a known MACaddress to find out unknown IP向已知MAC 地址询问未知IP 地址的凡响ARP(RARP)请求(intended to be used by hosts to find out theirown IP address 主机有意用来查明其本身IP 地址,类似于DHCP 服务)
arp-src-address (IP 地址; 默认: 0.0.0.0/0) – ARP 源IP 地址
arp-src-mac-address (MAC 地址; 默认: 00:00:00:00:00:00) – ARP 源MAC 地址
chain (文本) – 过滤器工作其中的桥防火墙链(内置或用户定义的)
dst-address (IP 地址; 默认: 0.0.0.0/0) – 目的IP 地址(仅当MAC 协议设置为IPv4 时)
dst-mac-address (MAC 地址; 默认: 00:00:00:00:00:00) – 目的MAC 地址
dst-port (整型: 0..65535) – 目标端口号或范围(仅对TCP 或UDP 协议)
in-bridge (名称) – 数据包进入的桥接口
in-interface (名称) – 数据包进入的物理接口(例如:桥端口)
ip-protocol (ipsec-ah | ipsec-esp | ddp | egp | ggp | gre | hmp |idpr-cmtp | icmp | igmp | ipencap
|encap | ipip | iso-tp4 | ospf | pup | rspf | rdp | st | tcp | udp | vmtp |xns-idp | xtp) – IP 协议(仅
当MAC 协议设置为IPv4)
ipsec-ah – IPsec AH 协议
ipsec-esp – IPsec ESP 协议
ddp – 数据报投递协议
egp – 外部网关协议
ggp – 网关-网关协议
gre – 通用路由压缩
hmp – 宿主监督协议
idpr-cmtp – idp 控制报文传输
icmp – 因特网控制报文协议
igmp – 因特网分组管理协议
ipencap – ip 压缩至ip
encap – ip 压缩
ipip – ip 压缩
iso-tp4 – iso 传输协议类型4
ospf – 开放式最短路径优先
pup – parc 通用包协议
rspf – 广播最短路径优先
rdp – 靠数据报协议
st – st 数据报模式
tcp – 传输控制协议
udp – 用户数据报协议
vmtp – 通用信息传输
xns-idp – xerox ns idp
xtp – xpress 传输协议
jump-target (名称) – 如果指定action=jump,那么指定用户定义的防火墙链来处理数据包
limit (整型/时间{0,1},整型) – 以给定值限制包匹配率,有助于减少日志消息的总量
Count – 除非跟随在Time 选项之后否则以包每秒(pps)衡量最大平均包率
Time – 指定包率测量的时间间隔
Burst – 要匹配的脉冲串中的包数量8
log-prefix (文本) – 在日志信息之前定义用于打印的前缀
mac-protocol (整型 | 802.2 | arp | ip | ipv6 |ipx | rarp | vlan) – 以太网有效负载类型(MAC 等级协议)
mark-flow (名称) – marks existing flow
packet-type (broadcast | host | multicast | other-host) – MAC 帧类型:
broadcast – 广播MAC 包
host -目的为桥本身的数据包
multicast – 多重MAC 包
other-host – 定位到其他联合广播地址而非到桥本身的数据包
src-address (IP 地址; 默认: 0.0.0.0/0) – 源IP 地址(仅当MAC 协议设置为IPv4 时)
src-mac-address (MAC 地址; 默认: 00:00:00:00:00:00) – 源MAC 地址
src-port (整型: 0..65535) – 端口号或范围 (仅对TCP 或 UDP 协议)
stp-flags (topology-change | topology-change-ack) – BPDU (网桥协议数据单元)标志。桥之间为阻止环路定期地互相交换名为BPDU 的配置信息。
topology-change – 拓扑变化标志是当一个桥检测到端口状态改变时设置,它命令所有其他桥丢弃它们的主机列表并重新计算网络拓扑
topology-change-ack – 拓扑变化确认标志是作为通告数据包回应而设置的
stp-forward-delay (time: 0..65535) – forward delay timer 转发延迟计时器
stp-hello-time (time: 0..65535) – stp hello 数据包时间
stp-max-age (time: 0..65535) – 最大STP 信息年龄
stp-msg-age (time: 0..65535) – STP 信息年龄
stp-port (整型: 0..65535) – stp 端口识别
stp-root-address (MAC 地址) – 根桥MAC 地址
stp-root-cost (整型: 0..65535) – 根桥代价
stp-root-priority (时间: 0..65535) – 根桥优先级
stp-sender-address (MAC 地址) – stp 信息发射机MAC 地址
stp-sender-priority (整型: 0..65535) – 发射机优先级
stp-type (config | tcn) – BPDU 类型
config – 配置BPDU
tcn – 拓扑变化通告
vlan-encap (802.2 | arp | ip | ipv6 | ipx | rarp | vlan) -压缩在VLAN 帧中的MAC 协议类型
vlan-id (整型: 0..4095) – VLAN 识别域
vlan-priority (整型: 0..7) – 用户优先级域
注:仅当目的MAC 地址为01:80:C2:00:00:00/FF:FF:FF:FF:FF:FF(桥组地址)时,stp 匹配器才有效,同时stp 应被启用。仅当mac-protocol 为 arp 或 rarp 时ARP匹配器才有效。VLAN匹配器仅对vlan 以太网协议有效。IP相关匹
配器仅当mac-protocol 被设置为ipv4 时才有效如果实际帧和 IEEE 802.2 和IEEE 802.3 标准一致时,802.3匹配器就会被询问(注意:它并不是在全世界网络使用的工业标准以太网帧格式)。这些匹配器对其他包会被忽视。
桥数据包过滤
操作路径: /interface bridge filter
这部分描述的是桥数据包过滤器详细的过滤选项,在一般的防火墙描述中这部分通常都被省略掉了。
属性描述
action (accept | drop | jump |log | mark | passthrough | return; default: accept)- 如果数据包匹配了其中一个规则就采取动作:
accept – 接受包,无动作。例如:数据包通过而没有任何动作,并且没有其他规则会在相关列表/链中处理。
drop – 悄然地丢弃包(不发送ICMP拒绝信息)
jump – 跳转到由jump-target变量指定的链
log – 记录数据包
mark – 标记数据包以便后面使用
passthrough – 忽视这条规则并到下一个。除了对包计数外像一个被禁用的规则一样动作
return – 从跳转发生的地方回到前一个链
out-bridge (名称)- 流出桥的接口
out-interface (名称)- 数据包离开桥的接口