希网的动态域名服务一直都很稳定,而且非常易用。可最近铁通的网络不知道在抽什么风,访问 IP 更新服务器 members.3322.org 非常困难,导致我的路由器长时间无法远程登录,今天花了点时间用 PHP 写了个用于希网的 IP 更新代理,测试可用。
部署这个代理程序的服务器需要支持 curl,在需要更新的客户端上可以使用 wget curl lynx 等命令行直接调用,参数尽量跟希望官方格式保持一致,具体格式为 http://USERNAME:PASSWORD@proxyserver/ip-update.php?hostname=YOURHOST&myip=YOURIP,更新代理程序的代码如下
<?
if (!isset($_SERVER['PHP_AUTH_USER'])) {
header(‘WWW-Authenticate: Basic realm=”3322 IP Update Proxy”‘);
header(‘HTTP/1.0 401 Unauthorized’);
echo ’3322.org IP Update Proxy’;
exit;
} else {
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, “http://members.3322.org/dyndns/update?system=dyndns&hostname=”.$_GET["hostname"].”&myip=”.$_GET["myip"].”&wildcard=OFF”);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
curl_setopt($curl, CURLOPT_USERPWD, $_SERVER['PHP_AUTH_USER'].”:”.$_SERVER['PHP_AUTH_PW']);
$data = curl_exec($curl);
curl_close($curl);
echo $data;
}
?>