公司没有固定 IP,每次 VPN 过去前都要先电话问一下那边的 IP 是多少,非常不方便,在不花钱的情况下只能曲线解决了。
思路很简单,从提供在线查询 IP 的网站上获取路由当前的 IP,然后和上一次存储的 IP 地址进行对比,不一样的话就覆盖上一次的记录并将现在获取到的 IP 以邮件的形式发送出去。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | #!/bin/sh IPFILE= "extip.txt" SENDTO=ADMINISTRATOR MAIL if [ -f $IPFILE ]; then SAVEDIP=` cat $IPFILE` else SAVEDIP= "0" fi extIP=`wget -O - -q http: //www .3322.org /dyndns/getip ` if [ "$SAVEDIP" = "0" -o "$SAVEDIP" != $extIP ]; then echo $extIP > $IPFILE mail -s "External IP Update" $SENDTO < $IPFILE cat $IPFILE else echo "No change" fi |
将脚本扔到 crontab 里定时运行。