htqt 发表于 2009-11-7 00:04:23

发一个自动更新 允许访问域名 的IP 脚本。兼请教个get函数取值为空白的怪事

本帖最后由 htqt 于 2009-11-7 00:20 编辑

:global web-163-1 [:resolve www.163.net]
:if(0.0.0.0 = $web-163-1)do={:delay 30; :global web-163-1 [:resolve www.163.net]}
:if(0.0.0.0 = $web-163-1)do={:delay 60; :global web-163-1 [:resolve www.163.net]}

:global web-163-2 dst-address ]

:if {($web-163-2 != $web-163-1)&&([ :typeof $web-163-2 ] != nil )&&(0.0.0.0 != $web-163-1)}do={
   /ip firewall nat set dst-address=$web-163-1
   :log info ("web-163 Change IP " . $web-163-2 . " to ". $web-163-1)
}

htqt 发表于 2009-11-7 00:06:08

本帖最后由 htqt 于 2009-11-7 00:17 编辑

当然你还要在 /ip firewall nat 里面有一条 comment=web-163 的目标IP允许通过的规则

比如 /ip firewall nat add chain=dstnat comment=web-163 action=accept

htqt 发表于 2009-11-7 00:16:15

本帖最后由 htqt 于 2009-11-7 00:19 编辑

顺便请教个奇怪的问题,在调试的时候,这部分
:global web-163-2 dst-address ]
&&([ :typeof $web-163-2 ] != nil )
开始以为没有初始IP的情况下会 flase,可是put出来是空白的,却是true。实在想不明白,又尝试改成&&([ :typeof $web-163-2 ] = "" ) ,flase。 既然这样,就暂时保留着了,因为开始怕没有初始IP的情况下不工作。

难道那个put出来的空白是某种值? 既不是 nil 又不是 "" (空字符),那应该是什么符号表示的,?
不知道哪位大侠能解答下???

blacker 发表于 2011-12-31 00:51:42

路过,留个记号。
页: [1]
查看完整版本: 发一个自动更新 允许访问域名 的IP 脚本。兼请教个get函数取值为空白的怪事