找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2713|回复: 12

[其它] ROS2.9.17怎么绑定DDNS?

[复制链接]
发表于 2006-6-9 10:56:46 | 显示全部楼层 |阅读模式

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

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

×
我是2M的ADSL,内部有台WEB服务器,想发布出去,但没有固定IP,

请问ros能做域名动态解析(DDNS)吗?怎么做?

高手站出来啊
routeros
发表于 2006-6-9 11:24:00 | 显示全部楼层

回复 #1 230138 的帖子

www.changeip.com上面注册申请个帐号就OK.然后用tool>dns-update,
以前好像有个帖子的,搜搜...
routeros
回复

使用道具 举报

 楼主| 发表于 2006-6-9 11:48:42 | 显示全部楼层
原帖由 cxhfinal 于 2006-6-9 11:24 发表
www.changeip.com上面注册申请个帐号就OK.然后用tool>dns-update,
以前好像有个帖子的,搜搜...



我的2.9.17里的tools里面没看到dns-update这个选项啊
routeros
回复

使用道具 举报

发表于 2006-6-12 12:33:48 | 显示全部楼层
有!在 terminal里

Terminal vt102 detected, using multiline input mode
[admin@WXLH] > tool
bandwidth-server  e-mail      mac-scan     netwatch    torch            
bandwidth-test    export      mac-server   ping-speed  traceroute      
cpu-test          flood-ping  mac-telnet   sigwatch    traffic-monitor  
dns-update        graphing    memory-test  sniffer     
[admin@WXLH] > tool
routeros
回复

使用道具 举报

发表于 2006-6-12 14:58:48 | 显示全部楼层
到changeip.com上申请一个帐号;设置dns ,当然你在设adsl 时选中use peer dns就不用设dns了。
添加以下scheduler 和 script
/system scheduler add name="onreboot" on-event=":global oldip 222.22.2.2" start-time=startup interval=0s

/system  scheduler add name="schddns" on-event="ddns"  interval=30s
/system script add name="ddns" source={:delay 10;:global newip [:pick [/ip address get [/ip address find interface=你adsl介面的名字] address] 0 [:find [/ip address get [/ip address find interface=你adsl介面的名字] address] /]];:if ($newip != $oldip) do={/tool dns-update name=你申请的主机名 zone=你申请的changeip域名 key-name=你在changeip.com上的用户名 key=用户名对应的密码 address=$newip;:log info DDNS成功更新!;:global oldip $newip } else {:log info IP没有发生改变,DDNS未尝试更新!}}


这个方法可以在ip发生改变时及时更新,ip未变时不去更新,有的人用脚本每隔一段时间去dns-update一下,而不管是否需要,这样由于向服务器请求太频繁,你会在log中看到被服务器拒绝的信息的,反而会影响真正需要更新时的成功率。

onreboot中的oldip变量只是初始变量可以任填,只在启动时赋予值,这是必需的。

[ 本帖最后由 loopylf 于 2006-6-12 15:00 编辑 ]
routeros
回复

使用道具 举报

发表于 2006-6-13 12:09:10 | 显示全部楼层

还是不行啊!

我的是ros2。97,按照楼主的做法做了,可是还是不行,脚本一次都没有执行啊!按照官方网站的脚本来做,第一次执行后,提示超时,以后log里面就一直提示地址没有改变,但我的DNS和ip关系还是不正确,怎么搞啊?
routeros
回复

使用道具 举报

发表于 2006-6-14 16:26:33 | 显示全部楼层
原帖由 dingtian 于 2006-6-13 12:09 发表
我的是ros2。97,按照楼主的做法做了,可是还是不行,脚本一次都没有执行啊!按照官方网站的脚本来做,第一次执行后,提示超时,以后log里面就一直提示地址没有改变,但我的DNS和ip关系还是不正确,怎么搞啊?

重启一下,我这里有个变量在起机时要赋值!

或用下面的:
到changeip.com上申请一个帐号;设置dns ,当然你在设adsl 时选中use peer dns就不用设dns了。
添加以下scheduler 和 script

/system  scheduler add name="schddns" on-event="ddns"  interval=30s

/system script add name="ddns" source={:delay 10;;if ([:typeof $oldip]=nil) do={:global oldip 222.22.2.2};:global newip [:pick [/ip address get [/ip address find interface=你adsl介面的名字] address] 0 [:find [/ip address get [/ip address find interface=你adsl介面的名字] address] /]];:if ($newip != $oldip) do={/tool dns-update name=你申请的主机名 zone=你申请的changeip域名 key-name=你在changeip.com上的用户名 key=用户名对应的密码 address=$newip;:log info DDNS成功更新!;:global oldip $newip } else {:log info IP没有发生改变,DDNS未尝试更新!}}


这个方法可以在ip发生改变时及时更新,ip未变时不去更新,有的人用脚本每隔一段时间去dns-update一下,而不管是否需要,这样由于向服务器请求太频繁,你会在log中看到被服务器拒绝的信息的,反而会影响真正需要更新时的成功率。

注:你adsl介面的名字大小写敏感!,提示超时一定是没有设dns。

[ 本帖最后由 loopylf 于 2006-6-14 16:30 编辑 ]
routeros
回复

使用道具 举报

发表于 2006-8-16 13:48:46 | 显示全部楼层
这个地方有错,大家使用时把第一个if前的;要改为:,否则不能使用,要报错,完整的如下:
/system  scheduler add name="schddns" on-event="ddns"  interval=30s

/system script add name="ddns" source={:delay 10;:if ([:typeof $oldip]=nil) do={:global oldip 222.22.2.2};:global newip [:pick [/ip address get [/ip address find interface=你adsl介面的名字] address] 0 [:find [/ip address get [/ip address find interface=你adsl介面的名字] address] /]];:if ($newip != $oldip) do={/tool dns-update name=你申请的主机名 zone=你申请的changeip域名 key-name=你在changeip.com上的用户名 key=用户名对应的密码 address=$newip;:log info DDNS成功更新!;:global oldip $newip } else {:log info IP没有发生改变,DDNS未尝试更新!}
routeros
回复

使用道具 举报

发表于 2006-8-16 14:54:11 | 显示全部楼层

回复 #7 loopylf 的帖子

到changeip.com上申请一个帐号;设置dns ,当然你在设adsl 时选中use peer dns就不用设dns了。
添加以下scheduler 和 script

/system  scheduler add name="schddns" on-event="ddns"  interval=30s
下面一行已吧:delay 10;;if 该成:delay 10;:if 以前打字打错了,是回答一网友时发现的,抱歉.
/system script add name="ddns" source={:delay 10;:if ([:typeof $oldip]=nil) do={:global oldip 222.22.2.2};:global newip [:pick [/ip address get [/ip address find interface=你adsl介面的名字] address] 0 [:find [/ip address get [/ip address find interface=你adsl介面的名字] address] /]];:if ($newip != $oldip) do={/tool dns-update name=你申请的主机名 zone=你申请的changeip域名 key-name=你在changeip.com上的用户名 key=用户名对应的密码 address=$newip;:log info DDNS成功更新!;:global oldip $newip } else {:log info IP没有发生改变,DDNS未尝试更新!}}
routeros
回复

使用道具 举报

发表于 2006-8-17 01:55:34 | 显示全部楼层
看不懂!!能否做个脚本出来!!!直接导进去就好了吗??
routeros
回复

使用道具 举报

发表于 2006-8-17 02:20:29 | 显示全部楼层
是直接复制进去吗???真不懂用啊。.
routeros
回复

使用道具 举报

发表于 2007-8-28 09:55:38 | 显示全部楼层
提示是成功了 ,但是从外网还是不能访问我的路由器的80和21端口,
郁闷一下
routeros
回复

使用道具 举报

发表于 2007-8-28 12:21:09 | 显示全部楼层



方法一、还是在内网机接一台支持ddns的路由器(100来快的破合子的天天开着比一台机省电)通上电配置好ddns的域名就可以

方法二、自己在内网一台工作站机子上,天天开机用软件实现在内网机域名与ip同步。

三、关于端口映射你可以基于"接口"的方法实现你要的发布内网服务器。


[ 本帖最后由 cracks 于 2007-8-28 12:24 编辑 ]
a.JPG
routeros
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-17 16:48 , Processed in 0.069412 second(s), 5 queries , Gzip On, Redis On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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