找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 11589|回复: 7

[layer7] 谁知道 ROS 3.X 里 Layer7-protocol 的语法?

[复制链接]
发表于 2008-12-30 20:30:55 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

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

×
本帖最后由 久久动一动 于 2008-12-30 20:38 编辑

研究了好几天才知道这个语法叫“正则表达式”。根据我这几天的研究,“正则表达式”有众多版本,基本格式大致一样,但是细微上有所不同。不同版本之间的表达式不通用(有LINUX的,有JAVA的,有C++的,有UNIX的)。可怜的我照着这个教程 http://www.unibetter.com/deercha ... hi-jiaocheng-se.htm 钻研了4天,进入实际在ros上试验时才发现行不通。郁闷啊!(到现在我还不知道这个教材说教的正则表达式究竟可以用在什么系统之上)

   网大你个JB!你就甩一句“Regexp可以通过网上搜索相关资料了解。”害得人家钻研了4天后才发现你说的东西是没谱的!你不是误人子弟嘛?!


举个例子来说明: 限制QQ。QQ登陆的数据包特征是以16进制字符02开头,以16进制字符03结尾。只需要把这个特征的数据包标示出来。即可精确标明QQ登陆请求的数据包
QQ-fenxi.gif

那么:Iptables上的正则表达式为“^\x02.+ \x03$”   而ROS却表示为:“^.\?\02.+\03\$”   何解?

以上,相同的语法有:"^" 都是代表数据包的开头 "$"都是代表数据包的结尾。“.+”代表重头到尾(我的理解)

不同的是:Iptables 用\x来表示16进制。ROS直接\02就能表示16进制的02了。

矛盾的是。多数教材上都是说,"\"是取消元字符的符号,如要表示"?" 则应该用"\?"  那$也是个元字符啊,代表结尾的元字符。ROS的"\$"是什么意思? 我以为ROS错了,但是直接输入\03$输不了,提示错误。郁闷了。。。。。。。。。


看来ROS的layer7-protocol 的编写一定有专门的规则。也就是语法。谁能提供个教程?或则告诉俺应该参考哪方面的资料呀?官方网我上过了,没有关于Regexp的介绍。官方网站都不告诉我们应该参考什么资料啊?!!!!!那成都网大上的“常用程序的7层协议脚本”是怎么写出来的?
routeros
发表于 2008-12-31 09:35:54 | 显示全部楼层
本帖最后由 zooyo 于 2008-12-31 09:37 编辑

mikrotik以后就是你孙子,我重孙子,3.0的脚本语法也变了,官方也没资料,到了后面完全是在猜。
routeros
回复

使用道具 举报

 楼主| 发表于 2008-12-31 12:40:31 | 显示全部楼层



哦~~我想起来了。好像看过谁的帖子,里面也有人发牢骚说“ROS没事变语法干什么。”

那关于L7,只能转向IPtables阵营咯。
routeros
回复

使用道具 举报

发表于 2009-1-1 08:51:39 | 显示全部楼层
还是省事从官网上选择现成的吧
routeros
回复

使用道具 举报

发表于 2009-4-2 18:53:40 | 显示全部楼层
用“^\x02.+ \x03$”和ros自己的效果是一样的
ros应该是支持标准的l7规则
routeros
回复

使用道具 举报

发表于 2009-4-2 18:54:11 | 显示全部楼层
去看看官方脚本里的表达式把
routeros
回复

使用道具 举报

发表于 2009-6-25 00:48:40 | 显示全部楼层
我也很想学学,可惜没有资料参考,真是郁闷
routeros
回复

使用道具 举报

发表于 2009-9-24 17:12:43 | 显示全部楼层
我试验了ROS兼容标准语法
routeros
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|小黑屋|软路由 ( 渝ICP备15001194号-1|渝公网安备 50011602500124号 )

GMT+8, 2024-6-1 21:55 , Processed in 0.081000 second(s), 5 queries , Gzip On, Redis On.

Powered by Discuz! X3.5 Licensed

© 2001-2023 Discuz! Team.

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