十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
为了更好的理解RouterOS的防火墙,特地给大家补一下科学知识,ROS的防火墙,其实运作的就是iptables,也为四表五链。这篇文章教你快速理解ROS的防火墙,看懂了也就懂iptables是什么原理了。
成都创新互联主要从事网站设计、成都网站制作、网页设计、企业做网站、公司建网站等业务。立足成都服务平谷,10多年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:18982081108
四表五链大致如下。
Raw表——关闭连接追踪机制。用在prerouting,output链上。
Mangle表——拆解报文,分析报文,修改报文。用在prerouting,input,forward,output,postrouting链路上。
Nat表——网络地址转换,用在prerouting,output,postrouting链路上。
Filter表——负责过滤功能,用在input,forward,output链路上。
每个表优先级:
Raw—>Mangle—>Nat—>Filter
A.input——进来的数据包应用此规则链中的策略
(经过了第一次路由选择的数据包)
B.output
——外出的数据包应用此规则链中的策略
(经过了第二次路由选择的数据包)
C.forward
——转发数据包时应用此规则链中的策略
(经过了第一次路由选择的数据包)
D.prerouting
——对进来的数据包作路由选择前应用此链中的规则(还没有经过任何路由选择的所有数据包进来的时侯都先由这个链处理)
E.postrouting
——对出去的数据包作路由选择后应用此链中的规则(经过了所有的路由选择的所有数据包出来的时侯都先由这个链处理)
先看五链的图:
也许有人会问,为什么要判断两次路由呢?
其实路由是判断这个数据从哪里来到哪里去,要不要路由器出手干活,可以这么理解:
A.目的IP是路由器,但是不需要内核处理的数据,如内网对内网,只要经过一次判断就一条直线传出去了。
B.目的IP是路由器,且需要内核处理的数据,如内网对公网、公网对内网,都要拐个弯处理。因为涉及修改IP数据的处理。
所以,第一次是判断是否要路由器出手处理,第二次是修改完IP数据之后决定往哪个接口(网关)上面送数据。慢慢理解,不要急。
然后就是ROS里面用的链和表的关系图,告诉你链可以在哪里被处理。
看起来还是很烦,那么如何选用合适的链处理规则呢?
五链可以这样快速理解:
A.——处理进来路由器的的数据包。(目的IP在路由器上的)
B.output——处理从路由器出去的数据包。
C.forward——数据包源IP和目的IP都不在路由器上的。
D.prerouting——外面进来路由器接口的数据包。
E.postrouting——路由器从接口送出去的数据包。
这样子就很好理解了。
以上就是RouterOS的防火墙一个大致处理过程。
任何数据经过路由器都会经过链式处理,我们在合适的地方配置规则,匹配了,就可以进行相应的处理。
那么怎么选择合适的链路进行配置,配置的处理动作又有那些呢?下一章节我们开始介绍下ROS防火墙的每个表是如何设置规则的。