LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1328|回复: 1

巧用curl代替ez-ipupdate更新动态dns

[复制链接]
发表于 2007-2-1 23:30:54 | 显示全部楼层 |阅读模式
以前在我的FC3上一直用www.3322.org上提供的ez-ipupdate做动态dns,解析家里因拨号不断改变的机器ip地址,没什么问题
但自从我昨天把机器升到FC6后,问题来了
一开始也没注意,后来想从公司远程登录主机发现死活登不上,dns解析出的地址不对
郁闷了一天,回到家发现貌似FC6新的LIBC和ez-ipupdate用的老的有些不兼容,运行失败

于是从3322.org上下了源码本来想自己编译,没想到居然编译也通不过
再仔细一看代码,原来这东西用的http协议,极其简单,curl即可代替

高兴之余,特此把经验拿来给大家分享:

ez-ipupdate被我放在/etc/ppp/ip-up.local里执行,每次PPPoE拨号上去就自动更新dns:
  1. /usr/local/bin/ez-ipupdate -i ppp0 -h myhost.3322.org -S qdns -u user:pass
复制代码
现在只要改成
  1. curl -su user:pass 'http://members.3322.org/dyndns/update?system=dyndns&hostname=myhost.3322.org' &> /dev/null &
复制代码
即可发送http包给3322.org的服务器,更新dns记录

-s是silence,不产生进度条等没用的输出
-u是http认证用户名密码
&> /dev/null &把所有输出扔掉并在后台运行,这样不浪费启动时间
url里的值都不要改,否则服务器可能会不认,除了最后一个hostname=myhost.3322.org改成自己的

其实wget也可以用来做这个,我已经用了curl就不高兴研究了,有兴趣的可以看看man wget,命令格式应该差不多
发表于 2007-2-2 11:38:15 | 显示全部楼层
lynx也可以的。
回复 支持 反对

使用道具 举报

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

本版积分规则

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