网站大量收购闲置独家精品文档,联系QQ:2885784924

routeros-中文脚本教程.pdf

  1. 1、本文档共30页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
版本 S1.2 MikroTik Script 教程 该手册是提供对 MikroTik RouterOS 嵌入式脚本介绍,主机脚本提供了自动维护路由器任务的功能,通 过借助用户自定义发生事件脚本。对于 RouterOS 的脚本操作,需要读者有一定的编程知识,而且对 RouterOS 各个功能熟悉和掌握。 内容如有更新,恕不通知。 第一章 RouterOS 脚本基本操作 在 RouterOS 中一个脚本配置构成由控制命令和表达式(ICE - internal console expression 内部 控制台表达式)。 RouterOS 操作命令,例如:/ip firewall filter add chain=forward protocol=gre action=drop 这 个是描述在防火墙中过滤 gre 协议的操作,即通过 “/”来达到命令执行的目的。在脚本 ICE 表达式前缀 需要用 “ : ”并能在任何目录路径下操作。 一个事件(event)用来触发脚本执行,在RouterOS 下包括:System Scheduler, Traffic Monitoring Tool, Netwatch Tool 。 功能包需求: system 操作路径: /system script 注:RouterOS2.9 本版与 RouterOS 3.0 的脚本有一定的区别: 1、RouterOS3.0 字符参数后需要使用引号注明 如 comment=”test”;name=”pppoe-out1”;:set i $”tx-current” 2、RouterOS3.0 的变量定义不支持“中横杠”的定义 如 :global test-address 这样定义在 3.0 和 4.0 中是非法的 脚本在 RouterOS 中的调用 操作路径:/system script 脚本编写进入 script 目录下,在script 中我们可以定义多条脚本规则,如下图: 我通过 script 编辑器编辑脚本: 我们可以通过 Run Script 命令运行当前的脚本,在 Run Count 中会纪录脚本运行的次数: 在 Script 中我们编辑好脚本后,我们可以通过 RouterOS 相应的功能调用脚本,并执行这些脚本,如 /system scheduler (计划任务)、/tool 中的 netwatch、traffic-monitor 等。通常执行脚本在 scheduler 计划任务中最常用,如这里我们使用了 ADSL 脚本,需要每间隔 1 分钟执行一次,我们可以通过 scheduler 来完成,通过/system scheduler 进入计划任务目录: 添加一个名称为 adsl 的计划任务规则,设置 Interval 时间 1 分钟,On Event 中添加脚本名称: 注:我们也可以在 on event 中直接输入脚本的命令: 第二章 RouterOS 脚本语法 RouterOS 脚本被划分为多个命令行,命令行是一个接一个单元执行直到脚本结束或者直到 错误发生。 命令行结构 RouterOS 控制台是使用下面的命令语法: [前缀] [路径] 命令 [未命名参数] [参数=[值]] .. [参数=[值]] • [前缀] – 如果命令是 ICE 或者路径通过: 或者 / 字符表示 • [路径] – 得到操作菜单的路径 • 命令 – 一个命令获取在指定的菜单路径下 • [未命名参数] – 即事先定义参数,如果命令需要必须指定该参数 • [参数] – 按先后顺序各自定义值 命令行结束以 “;”标识为代表或者换行,在结束命令行有时不需要 “;”或者换行 独立的命令包含 (), [] 或者 {}不需要任何的结尾命令字符,命令结尾取决于脚本的内容 :if ( true ) do={ :put lala } 每条命令行包含其他命令行,起始通过方括号定义[ ] :put [/ip route get [find gateway=]]; 注意,上面这条代码包含 3 条命令行: • :put • /ip route get • find gateway= 命令行能通过多余一个行的方式建立,可以查看后面的行连接规则. 几种常见的命令实例 • Prefix (前缀) - 指示那一个命令到一个 ICE,如:脚本:put 或者命令部分从根目录下执行

文档评论(0)

文档终结者 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档