ROS软路由论坛 ROSABC.com 网络方案网络工程交流

 找回密码
 会员注册

QQ登录

只需一步,快速开始

查看: 33538|回复: 24

[交流] passthrough

[复制链接]
发表于 2010-5-12 00:35:35 | 显示全部楼层 |阅读模式

马上注册成为ROSABC会员,随时发帖回复。

您需要 登录 才可以下载或查看,没有账号?会员注册

x
passthrough设置为no 或YES 有什么区别,,要在什么情况下为NO 或YES 我新手
发表于 2014-10-13 00:06:30 | 显示全部楼层
本帖最后由 zengle1 于 2014-10-13 00:26 编辑

我研究总结的经验证分享一下
yes 就是往下传,下面有新的规则符合的话,就会把之前标记的改成新的标记。(标记只有各一个[连接] [数据包] [路由])
如一个数据包,是192.168.1.5:2000--〉8.8.8.8:80端口的数数据对它做标记
第一条MANGLE规则,标记目的地址是8.8.8.8的数据标记为 “连接=GOOLE DNS_con”   PASSTHOTHER=YES
第二条MANGLE规则,标记目的端口是80的“数据包=HTTP_packet”          PASSTHOUGHT=YES
第三条MANGLE规则,标记目的端口是80的“连接=HTTP _con”          PASSTHOUGHT=YES
最后“192.168.1.5:2000--〉8.8.8.8:80“这条数据的标记是    标记了“”连接=HTTP _con  数据包=HTTP_packet"

若是NO
第一条MANGLE规则,标记目的地址是8.8.8.8的数据标记为 “连接=GOOLE DNS_con”   PASSTHOTHER=NO
第二条MANGLE规则,标记目的端口是80的“数据包=HTTP_packet”          PASSTHOUGHT=NO
第三条MANGLE规则,标记目的端口是80的“连接=HTTP _con”          PASSTHOUGHT=NO
最后“192.168.1.5:2000--〉8.8.8.8:80“这条数据的标记是    标记了“连接=GOOLE DNS_con "  (不会再有标记数据包,因为这个数据标记完连接就不再往下传了。所以它只标记了连接,没有标记数据包的。)


混合
第一条MANGLE规则,标记目的地址是8.8.8.8的数据标记为 “连接=GOOLE DNS_con”   PASSTHOTHER=YES
第二条MANGLE规则,标记目的端口是80的“数据包=HTTP_packet”          PASSTHOUGHT=NO
第三条MANGLE规则,标记目的端口是80的“连接=HTTP _con”          PASSTHOUGHT=NO
最后“192.168.1.5:2000--〉8.8.8.8:80“这条数据的标记是    标记了“连接=GOOLE DNS_con  数据包=HTTP_packet"


再混合
第一条MANGLE规则,标记目的地址是8.8.8.8的数据标记为 “连接=GOOLE DNS_con”   PASSTHOTHER=YES
第二条MANGLE规则,标记目的端口是80的“数据包=HTTP_packet”          PASSTHOUGHT=YES
第三条MANGLE规则,标记目的端口是80的“连接=HTTP _con”          PASSTHOUGHT=NO
最后“192.168.1.5:2000--〉8.8.8.8:80“这条数据的标记是    标记了“连接=HTTP _con 数据包=HTTP_packet "



发表于 2010-5-12 21:08:36 | 显示全部楼层
本帖最后由 2135816 于 2011-6-27 15:37 编辑

如果passthrough为yes,表示这条规则在匹配相应条件并执行action操作后,数据继续向下传递并会被后面的规则所匹配;为no时则不向下传递。
例:
/ip firewall mangle pri
21   chain=forward action=mark-packet new-packet-mark=up passthrough=yes
     in-interface=bridge1-lan
22   chain=forward action=mark-packet new-packet-mark=webup passthrough=no
     protocol=tcp in-interface=bridge1-lan dst-port=80
上面两条规则第一条匹配从内网接口brideg1-lan进入路由器并标记为up,并设置passthough为yes,
第二条匹配从bridge1-lan进入的并且目标端口为TCP:80的数据标记为web-up
我们看结果图
2011-6-27 15:36 上传
下载附件 (13.06 KB)



然后我们将上面一条的规则passthough改为no
21   chain=forward action=mark-packet new-packet-mark=up passthrough=no
     in-interface=bridge1-lan
22   chain=forward action=mark-packet new-packet-mark=webup passthrough=no
     protocol=tcp in-interface=bridge1-lan dst-port=80
结果图:
2011-6-27 15:36 上传
下载附件 (12.66 KB)



因为第一条规则已经匹配了所有从内网进入的数据,当这条规则的passthrough为yes的时候,已经被匹配的数据将向下传递,被下面的规则所匹配,
如果passthrough为no则不向下传递,所以下面的规则匹配不到任何数据
发表于 2010-5-14 00:57:22 | 显示全部楼层
意思就是,如果为yes,这条标记的数据将,继续向下标记,,,如果为NO,就是标记完这条数据,就不再往下继续标记,,,
例如,,,如果你标记了一个连接,,,然后第二条规则,从这个连接提取小包32-512的数据包,并标记为xiaobao-pack,如果如果你passthrough为yes的话,这个被标记了xiaobao-pack的数据包,又会继续向下,被标记,,,也就是重复标记,,,,,,



所以你觉得这个数据包没必要,再向下继续被标记,就不要为YES了,,,,
发表于 2010-5-16 02:25:58 | 显示全部楼层
认真学习过,但还有不懂。在配制路由的时候,如果参考资料中没有提到passthough选项是“yes”or“no”的时候,配置选项中又默认是“yes”时,我该怎么选?最近在折腾pcc双线遇到问题。
发表于 2010-5-16 03:57:50 | 显示全部楼层
好像意思是通过或者不通过
发表于 2010-5-17 17:48:32 | 显示全部楼层
还在学习中。
发表于 2010-5-18 04:28:48 | 显示全部楼层
又学到一点以点.呵呵.
发表于 2010-5-18 10:00:03 | 显示全部楼层
友情帮顶,我也有同样的困惑
发表于 2010-5-19 01:50:51 | 显示全部楼层
好帖呀,加分加分!!
发表于 2010-5-19 04:07:14 | 显示全部楼层
选择yes就是数据继续向下传,选择no就是数据不在向下走了。比如你标记一个链接,就的选yes不然标记包就要出问题了
您需要登录后才可以回帖 登录 | 会员注册

本版积分规则

不良信息举报Q:2000617

软路由

不良信息举报Q:2000617|Archiver|ROS软路由论坛 ROSABC.com 网络方案网络工程交流

GMT+8, 2024-5-19 10:22 , Processed in 0.141588 second(s), 19 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表