发新话题
打印

[葱头原创] 动态IP更新攻略

[葱头原创] 动态IP更新攻略

葱头一直使用希网3322.org动态DNS,至于如何下载和设置客户端我就不详细说明了,3322.org里面有详细的设置方法。

使用的过程中我发现了一些问题,虽然ADSL自动拨号可以利用3322.org来更新DNS,但有些时候却会失效,这是在ADSL有时候会产生一些死 IP,如果不手工删除这些"死IP",即使运行希网的客户端程序也没有用,它只会提交旧的那个"死IP"。就是这样,使葱头决心要把整个更新的过程自动化而不需要手工介入。

操作系统:FreeBSD 4.7

第一、以root身份在/sbin中创建一个叫ipupdate.sh的文件:

ipp=$(ifconfig |grep -- '-->;' | awk '/inet/{print $2}')
#echo $ipp
oldip=$(echo $ipp|awk '//{print $1}')
newip=$(echo $ipp|awk '//{print $2}')
if [ "$newip" != "" ]; then
        /sbin/ifconfig tun0 delete $oldip
        echo "It have deleted the old ip address and updated the DNS";
else
        echo "There is no New IP Addess." ;
fi
/usr/local/ez-ipupdate/ez-ipupdate -c /usr/local/ez-ipupdate/qdns.conf  (这一行是希网客户端提交IP地址)

然后,chmod 744 ipaddress.sh,为什么只能root执行? 因为脚本里面删除ip地址只能root操作,所以其他人运行了这个脚本也没用。

第二,建立/etc/ppp/ppp.linkup 文件,目的是拨号后执行里面的脚本
adsl:
!bg /sbin/ipupdate.sh     
(注意,!bg之前必须有一个空格!)

这样,当ADSL拨号的时候就会自动删除旧的IP地址,将新IP提交到希网。

欢迎大家指正!

TOP

发新话题