找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 44393|回复: 77

[其它] ROS更新3322.org动态域名,有需要的拿去看看

[复制链接]
发表于 2008-2-22 10:47:10 | 显示全部楼层 |阅读模式

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

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

×
找了N久,都没有找到ros更新3322.org动态域名的方法,实在找不到了,于是只好自己动手写一个。
    原代码文件名为dyndns.c, 编译后的文件名为dyndns。
使用方法:
    把ROS硬盘接在Linux系统的第3个IDE硬盘位置上,开机,以root登录
    挂载ROS文件系统:
    mount /dev/hdc1 /mnt
    把dyndns.c文件复制到当前目录下,然后编译:
    cc -o dyndns dyndns.c
    不愿意编译的也可以直接用我编译好的文件
    把编译得到的文件复制到ROS系统里:
    cp dyndns /mnt/bin/
    添加执行权限:
    chmod +x /mnt/bin/dyndns
    编辑ROS启动文件,使其开机就运行:
    vi /mnt/etc/rc.d/rc.start
    在文件的最后exit那行前加上下面一行文字(后面有个&):
    [ -x /bin/dyndns ] && dyndns&
    然后保存文件
    卸载ROS文件系统:
    umount /mnt
    关机:
    halt
    把ROS硬盘装回去,开机
    在WINDOWS上打开winbox-->Files, 稍等2分钟,等待系统全部就绪,
    会看见有文件conf.ini,用鼠标把该文件拖到桌面上
    打开桌面上的conf.ini文件,有如下内容:
        #参数配置文件(等号前后不留空格)
        USER=                     #域名拥有者的登录帐号
        PASSWD=                     #域名拥有者的登录密码
        DYNDNS=                    #动态域名
        SERVER=222.185.245.239      #服务器members.3322.org的IP
        DEVICE=ppp0                 #动态IP的设备号
        SLEEP=300                  #检查更新的时间间隔(秒)
    填好前面的三个参数,后面的三个参数为系统默认,也可以修改。
    修改完保存文件,把该文件拖回到winbox-->File里原来的位置
    等待大约SLEEP秒,conf.ini会被更新,打开该文件就看到结果了
遇到的问题:
    1,ROS的内核里面,似乎不支持时区参数,时区偏移量总是0, 也许这就是ROS防火墙的扩展里面,对Time参数支持有问题的原因
    2,ROS对C的域名解析函数似乎不太支持,测试若干次,只成功解析一次
    3,只能得到设备号,不能得到ROS的设备名,有点遗憾,但似乎理论上是得不到的

ROS动态域名.rar

251.25 KB, 下载次数: 578

routeros
 楼主| 发表于 2008-2-22 10:48:17 | 显示全部楼层
部分截图
1.JPG
2.JPG
3.JPG
4.JPG
5.JPG
6.JPG
routeros
回复

使用道具 举报

发表于 2008-2-22 12:56:34 | 显示全部楼层
一头雾水,看不懂linux,不过是个好东西,帮顶
routeros
回复

使用道具 举报

发表于 2008-2-22 16:29:27 | 显示全部楼层
好帖~~多些这样的高手肯共享就好了~强烈支持~~
routeros
回复

使用道具 举报

发表于 2008-2-23 22:06:43 | 显示全部楼层
it is good
routeros
回复

使用道具 举报

发表于 2008-2-24 09:22:47 | 显示全部楼层
虽然不懂linux,但是这是个好东西,顶
routeros
回复

使用道具 举报

发表于 2008-2-24 10:28:55 | 显示全部楼层
diy ros 厉害..绝.
routeros
回复

使用道具 举报

发表于 2008-2-24 11:23:48 | 显示全部楼层
如果有更简单的就好了,能像www.changeip.com的用脚本更新法,那里最好的了!!真希望高手能出来帮弄一下!
routeros
回复

使用道具 举报

 楼主| 发表于 2008-2-24 12:42:32 | 显示全部楼层
3322.org的更新协议比较不同,但更合理,很多嵌入式网络设备都喜欢用3322.org域名,可靠性和可控性比较强
routeros
回复

使用道具 举报

发表于 2008-2-25 10:20:22 | 显示全部楼层
近来小有好文,冒个泡
routeros
回复

使用道具 举报

发表于 2008-2-25 13:20:14 | 显示全部楼层
老大帮一下忙!我想通过脚本获得某网站常变动的IP
:local ip1 [/ip add get [/ip add find broa=0.0.0.0 ping www.baidu.com] address]
这样好像不对,帮我改一改!
routeros
回复

使用道具 举报

 楼主| 发表于 2008-2-25 13:53:15 | 显示全部楼层
晕,脚本详解里面有例子
你可以这样来测试
#变量说明并初始化
:local ip ""
#取得域名的IP
:set ip [:resolve www.baidu.com]
#如果确实取到了IP则接着做其他事,否则做错误处理
:if($ip!="") do={:log info ($ip . " OK")} \
else={:log error notfond}
routeros
回复

使用道具 举报

发表于 2008-2-28 07:25:25 | 显示全部楼层

记号先
routeros
回复

使用道具 举报

发表于 2008-2-28 12:33:44 | 显示全部楼层
从文档来看,ROS的DDNS是一个标准的协议
routeros
回复

使用道具 举报

 楼主| 发表于 2008-2-29 11:26:35 | 显示全部楼层

更新,增加了日志

2008-02-29更新

1,增加了时区参数,请设置成与ROS的时区参数一样,以便正常显示时间,这个问题是ROS的BUG造成的,否则就不用该参数

2,增加了ROS的日志里面,有动态域名更新的日志,时间同步上,略有延迟,但基本不影响使用

安装方法:

1,把dyndns这个文件代替ROS里面原来的同名文件,方法参看原来的方法

2,打开dynlog.rsc文件,全选,把内容复制到 ROS的终端里面,回车即可

注:在ROS 2.9.27 上运行多天,尚未发现不良情况,其他版本没有测试过

[ 本帖最后由 hcb 于 2008-3-1 16:22 编辑 ]
1.JPG
2.jpg

dyndns更新版.rar

156.6 KB, 下载次数: 266

routeros
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-6-13 18:56 , Processed in 0.262700 second(s), 15 queries , Gzip On, Redis On.

Powered by Discuz! X3.5 Licensed

© 2001-2025 Discuz! Team.

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