Netgear wndr3700v2 路由器刷OpenWrt打造全能服务器(四)动态域名

来源:互联网 发布:nginx最大上传文件大小 编辑:程序博客网 时间:2024/06/11 02:29

    在第一章中已经提到,在花生壳网站注册一个账号,将会得到一个免费的域名。这一章介绍一下如何更新域名的IP映射。

    花生壳官方网站看到这样一个更新域名IP的方法:

    

    只要将上面的网址中的username,password,yourhostname,ipaddress换成自己注册的,再用浏览器访问一次,花生壳就会把域名映射到自己的ipaddress

    下面就把这个任务交给路由器来做,同样,首先要用SecureCrt连接到路由器。

     1. 写一个sh脚本

     vi /etc/hotplug.d/iface/25-Oray

    文件内容如下:

    #!/bin/sh-

    USER="username"

    PASS="123456"

    DOMAIN="username.xicp.net"

    URL="http://${USER}:${PASS}@ddns.oray.com:80/ph/update?hostname=${DOMAIN}"

    if [ -f /ddns ]; then
        current_ip=$(grep network.wan.ipaddr /tmp/state/network | grep -o -E "[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}")
        echo "current_ip=$current_ip"
        old_ip=$(cat /ddns | grep -o -E "[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}")
        echo "old_ip=$old_ip"
        if [ ! -z "${old_ip}" ]; then
                echo "old_ip is not empty"
                if [ "${old_ip}" = "${current_ip}" ]; then
                        echo "old_ip==current_ip exit;"
                        exit
                fi
        fi
    fi
    echo "wget -O /ddns -q ${URL}"
    wget -O /ddns -q ${URL}

    大概意思就是:如果发现当前路由器的ip和上一次保存在临时文件里的ip不一样,就访问花生壳网站,更新ip

    2. 给脚本文件增加执行权限

    chmod a+x /etc/hotplug.d/iface/25-Oray

    3. 给路由器增加定时任务,每隔一分钟执行一次上面的脚本。

echo "*/1 * * * * sh /etc/hotplug.d/iface/25-Oray >& /mylog">> /etc/crontabs/root

4. 启动路由器的定时任务服务

/etc/init.d/cron restart

5. 查看是否启动成功

ps | grep cront

显示内容如下:

root@OpenWrt:/mnt/web# ps | grep cront

1362 root      1392 S   crond -c /etc/crontabs -l 8

5652 root      1372 S   grep cront

至此,花生壳免费注册的动态域名就可以使用了。

比如,注册获得的域名为:test.xicp.net,那么就可以使用SecureCrt或者Flashxp在任何一台电脑上通过这个域名连接路由器,而不需要一定在局域网内才行。

既然外网电脑都可以访问路由器了,后面的章节将介绍安装一些常用的服务。

下一章介绍OpenWrt系统SVN服务端的安装与配置。