找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 6017|回复: 8

[脚本] hcb老大帮我看看这个脚本对吗?

[复制链接]
发表于 2008-3-6 19:08:57 | 显示全部楼层 |阅读模式

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

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

×
:local nat1
:set nat1 [/ip address get [/ip address find dynamic=yes interface=pppoe-out1] address]
/ip fir nat set [/ip fir nat find comment="1"] to-addresses=$nat1


不知道怎么改变不了。是哪里错了。如果把address改成network可以取得网关的地址。就是不能获得address地址!
谢谢了
1.gif
2.gif
routeros
发表于 2008-3-6 19:55:12 | 显示全部楼层
:local nat1
:set nat1 [/ip address get [/ip address find dynamic=yes interface=pppoe-out1] address]
:set nat1 [:pick $nat1 0 [:find $nat1 "/"]]]
/ip fir nat set [/ip fir nat find comment="1"] to-addresses=$nat1
routeros
回复

使用道具 举报

发表于 2008-3-6 20:27:08 | 显示全部楼层
UP
routeros
回复

使用道具 举报

 楼主| 发表于 2008-3-6 20:30:28 | 显示全部楼层
谢谢,楼上的回答,还是无法更新.晕
routeros
回复

使用道具 举报

 楼主| 发表于 2008-3-6 20:36:50 | 显示全部楼层
:local nat1
:set nat1 [/ip address get [/ip address find dynamic=yes interface=pppoe-out1] address]
:set nat1 [:pick $nat1 0 ([:len $nat1] -3)]
/ip fir nat set [/ip fir nat find comment="1"] to-addresses=$nat1
搞定了.哎.谢谢楼上两位..
routeros
回复

使用道具 举报

发表于 2008-3-6 20:45:03 | 显示全部楼层
:set nat1 ""
:set nat1 [/ip address get [/ip address find interface=pppoe-out1] address]
#nat1有可能取不到值,所以要判断一下
:if($nat1!="") do={
  :set tmp [:find $nat1 "/"]
  :if($tmp!=[:nothing]) do={:set nat1 [:pick $nat1 0 $tmp]}
  :set tmp ""
  :set tmp [/ip fir nat find comment="1"]
#tmp有可能取不到值,所以要判断一下
  :if($tmp!="") do={/ip fir nat set $tmp to-addresses=$nat1}
  }
写脚本要考虑健壮性,要做错判断,才能更稳定的运行

[ 本帖最后由 hcb 于 2008-3-6 20:49 编辑 ]
routeros
回复

使用道具 举报

发表于 2008-3-7 12:19:24 | 显示全部楼层
少了个dynamic
hcb 的脚本不错!
routeros
回复

使用道具 举报

发表于 2011-1-20 10:41:51 | 显示全部楼层
确实很东西,自动更新脚本!
routeros
回复

使用道具 举报

发表于 2011-4-10 11:54:59 | 显示全部楼层
顶上一顶
routeros
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-24 19:29 , Processed in 0.174207 second(s), 5 queries , Gzip On, Redis On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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