qkhhgdpyg 发表于 2010-10-25 11:52:14

DDNS 脚本问题

本帖最后由 qkhhgdpyg 于 2010-10-25 11:54 编辑

以下是8866网的脚本,设置每隔10秒运行一次。
理论上来说运行过后,在LOG里广应该有显示:DDNS的情况和IP

现在的问题是从OUT拨号进来后,DDNS的脚本第一次运行后在LOG里有显示运行后的记录信息。再过10秒系统会再次运行,可是在LOG里没有显示运行后的信息显示,是什么问题?
是本身脚本就是这样的还是ROS系统有问题或者脚本本身有问题。

请高手指点一二。

:local ednsuser "XX"
:local ednspass "XX"
:local ednshost "XX.8866.org"
:local ednsinterface "pppoe-out1"
:local members "http://members.3322.org/dyndns/update\?system=dyndns"
#:local members "http://members.dyndns.org/nic/update\?"
:local status
:local status running]
:if ($status!=false) do={
:local ednslastip [:resolve $ednshost]
:if ([ :typeof $ednslastip ] = nil ) do={ :local ednslastip "0" }
:local ednsiph [ /ip address get address ]
:local ednsip [:pick $ednsiph 0 [:find $ednsiph "/"]]
:local ednsstr "&hostname=$ednshost&myip=$ednsip"
:if ($ednslastip != $ednsip) do={
/tool fetch url=($members . $ednsstr) mode=http user=$ednsuser password=$ednspass dst-path=$ednshost
:delay 2
:local result
:log info ($ednshost . " " .$result)
/file remove $ednshost ;
}
}

zooyo 发表于 2010-10-25 14:53:35

怎么还使用这样过气脚本?搜索我的帖子有。

qkhhgdpyg 发表于 2010-10-25 15:12:38

楼上的,你的是不是以下内容?能用在8866上吗?



DDNS更新脚本,红字部分,大家根据自己的情况修改。添加在system scheduler中,设定好运行间隔,一般15秒。

:global ddnsip address]
:global ddnsnip [:pick $ddnsip 0 [:find $ddnsip "/"]]
:if ($ddnsnip != [:resolve "XXX.25u.com"]) do={
    :log info dst-address=$ddnsnip]
    :log info
}

ksw520 发表于 2010-10-25 15:48:49

没看明白楼主有啥疑问?难道楼主想要的效果是,不管IP是否发生变化都强行更新一次?

qkhhgdpyg 发表于 2010-10-26 08:56:14

没看明白楼主有啥疑问?难道楼主想要的效果是,不管IP是否发生变化都强行更新一次?
ksw520 发表于 2010-10-25 15:48 http://bbs.routerclub.com/images/common/back.gif


   
运行脚本后在LOG的信息里应该有显示运行后的IP显示的。
但是没有,是脚本的问题还是ROS的问题还是本应该就如此?
页: [1]
查看完整版本: DDNS 脚本问题