我有一个动态IP地址,每次重启路由器时都会更改。我可以完全访问我的路由器。我每天早上要做的是从终端手动执行此脚本以获取新的更新的租借IP。如果我们不关闭路由器,租赁时间约为一周。我必须每天检查新IP。我们LAN的工作站需要使用租用的外部IP才能使其软件正常工作。
我已经设置了两个单独的php脚本
1)一个普通文件,其中包含实际 ip.php
的值<?php
$ip="200.121.215.117";
?>
2)评估租用的外部IP是否已更改的中间件脚本:
<?php
include 'ip.php';
$oldip = $ip;
$newip = $_SERVER['REMOTE_ADDR'];
echo "Old IP : ".$oldip. " & Current IP : ". $newip;
if ($oldip <> $newip) {
echo "<br>Different IP found, updating workstations IPs done...<br>";
unlink('ip.php');
$file = "ip.php";
$a = fopen($file, "a");
fwrite($a,"<?php"."\n");
fwrite($a,"$"."ip=\"".$newip."\";\n");
fwrite($a,"?>"."\n");
fclose($a);
$a = fopen($file, "r");
fclose($a);
echo "<br> Set IP to :\"".$newip."\"\n";
} else ($oldip == $newip) {
echo "<br>Same IP, nothing done";
}
?>
3)最后从任何LAN工作站以文本形式访问IP
include '/home/myweb/public_html/ip.php';
echo "IP=".$ip;
我一直在考虑通过cron设置直接在路由器上执行此脚本,除非有人有更好更好的方法来执行此脚本。