找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 5659|回复: 12

[脚本] 奉献一个自动获取外网ip的关联脚本---脚本的风采

[复制链接]
发表于 2007-9-5 17:18:57 | 显示全部楼层 |阅读模式

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

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

×
:global checkrun [/interface get WanDPPPOE run]
:if ($checkrun=false) do={
{/system scheduler enable "check interface Wandpppoe running"}
{/system scheduler disable "check_wand"}
} else={
:global reWanDAdd
:global curWanDAdd
:global curgw
:set reWanDAdd [/ip address get [/ip address find interface=WanDPPPOE] address]
:set curWanDAdd ([/ip fi nat get T6644 dst-address] . "/32")
:set curgw [/ip address get [/ip address find interface=WanDPPPOE] network]
:if ($reWanDAdd!=$curWanDAdd) do={
{/ip route set wandpppoe gate $curgw}
{/ip route set "benlang s_route" gate $curgw}
#{/system script run "ddns script"}
{/system script run "ddns_script2"}
{:set cport "T60021,T8899,T13050,U13050,T13005,U13005,T4709,U4709,T8000,U8001,U6501,T6500,T13001,T8821,T15190,U15190,U20715,U6654,T6644"
:set countportnumber [:len $cport]
:set i 0
:while ($i<$countportnumber) do={{:set ccport [:pick $cport $i]}
{/ip firewall nat set $ccport dst-address=$reWanDAdd}
{:set i ($i+1)}
}}
}
}
==========================================================================================
:global aaa
:set aaa [/interface get WanDPPPOE run]
:if ($aaa=false) do={:beep length=100ms frequency=2080} else={
{/system scheduler enable "check interface check_wand"}
{/system scheduler disable "check interface Wandpppoe running"}
{:set f "262,247,220,196,165,147,165,195,165,20000,262,247,247,220,196,165,165,165,220,196";:set d "500ms,500ms,250ms,500ms,750ms,500ms,500ms,500ms,1500ms,1000ms,500ms,250ms,250ms,500ms,250ms,750ms,500ms,250ms,1750ms,1500ms";:set i 0 ; :while ($i<20) do={:beep freq=([:pick $f $i ($i+1)]*2) len=[:pick $d $i ($i+1)];:delay [:pick $d $i ($i+1)];:set i ($i+1)}}
}
===================================================================================================
上面是两个脚本,我自己的定的是每30秒执行一次。本人脑袋最近有点僵硬,这两个脚本写了足足一个小时,累啊~~~希望给大家减少点脑力劳动,呵呵

[ 本帖最后由 cracks 于 2007-11-4 12:06 编辑 ]
routeros
发表于 2007-9-5 17:38:41 | 显示全部楼层
呵呵...看花眼
routeros
回复

使用道具 举报

 楼主| 发表于 2007-9-5 18:08:47 | 显示全部楼层
其实这两个脚本可以合成一个脚本的,但我自己看着都乱,更不要说给大家看了,所以就分开了~呵呵
routeros
回复

使用道具 举报

发表于 2007-9-5 18:14:36 | 显示全部楼层
一头雾水
routeros
回复

使用道具 举报

 楼主| 发表于 2007-9-5 18:19:32 | 显示全部楼层
:global Interface_Vlaue "自己的端口名称"
:global checkrun [/interface get $Interface_Vlaue run]
:if ($checkrun=false) do={
{:beep length=100ms frequency=2080}
}
else={
:global reWanDAdd [/ip address get [/ip address find interface=$Interface_Vlaue] address]
:global curWanDAdd ([/ip fi nat get T6644 dst-address] . "/32")
:global curgw [/ip address get [/ip address find interface=$Interface_Vlaue] network]

:if ($reWanDAdd!=$curWanDAdd) do={
{/ip route set $Interface_Vlaue gate $curgw}
{/ip route set "benlang s_route" gate $curgw}

#{/system script run "ddns script"}
{/system script run "ddns_script2"}
{:set cport "T60021,T8899,T13050,U13050,T13005,U13005,T4709,U4709,T8000,U8001,U6501,T6500,T13001,T8821,T15190,U15190,U20715,U6654,T6644"
:set countportnumber [:len $cport]
:set i 0
:while ($i<$countportnumber) do={{:set ccport [:pick $cport $i]}
{/ip firewall nat set $ccport dst-address=$reWanDAdd}
{:set i ($i+1)}
}}
}
}
====================================================================
这是一个脚本的,去掉端口成功后的音乐提示,呵呵。这个更容易让大家去用! 我加注释吧,希望大家能多看懂一些

[ 本帖最后由 yftg 于 2007-9-5 19:06 编辑 ]
routeros
回复

使用道具 举报

 楼主| 发表于 2007-9-5 19:04:27 | 显示全部楼层
咖啡色:定义自己动态获取ip地址的端口名称 检查端口活动情况,如果端口没有处于非在线状态那么就发出一声2080hz100ms的警告声。
绿色:端口处于在线状态执行获取端口地址,从nat池中抽取一个nat值对比,如果当前端口地址和nat池中的地址不一致,那么执行红色,黑色,蓝色代码。
红色:更新路由表
黑色:执行DDNS更新脚本
蓝色:更新nat池中所需更新的地址。比如你的BT映射端口,或者ftp之类的端口。(备注:这些标记都是要用Comment在nat里事先标注的)
routeros
回复

使用道具 举报

 楼主| 发表于 2007-9-7 09:23:03 | 显示全部楼层
晕,好像没有人顶哦~这么好的东西~~~唉!
routeros
回复

使用道具 举报

发表于 2007-9-7 10:30:20 | 显示全部楼层
说句实话,确实太冗余了。
routeros
回复

使用道具 举报

 楼主| 发表于 2007-9-7 12:48:32 | 显示全部楼层
冗余,呵呵,老兄还能帮忙指出哪边有冗余的地方,我再改改..呵呵
routeros
回复

使用道具 举报

发表于 2007-9-7 22:21:45 | 显示全部楼层
不是有CHANGEIP.COM吗
routeros
回复

使用道具 举报

 楼主| 发表于 2007-9-10 16:02:09 | 显示全部楼层
嗯,是有的,在脚本里面,这个只是在获取新的ip后调用脚本更新ddns 用的就是changeip的还是蛮好用的。
routeros
回复

使用道具 举报

发表于 2007-9-14 15:51:12 | 显示全部楼层
想借问声在那里加呢?~请甘多位大佬指教下!!THANK YOU@
routeros
回复

使用道具 举报

发表于 2007-11-4 11:47:08 | 显示全部楼层
冗余的口水风波!!
routeros
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-5 20:37 , Processed in 0.061340 second(s), 6 queries , Gzip On, Redis On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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