用电信ADSL拨号的用户都知道,每次获得IP都是不一样的,而且一个IP也不会长久让你使用,一段时间后就会要重新拨号,又获得一个新的IP,这让很多要使用远程访问,或者做远程操作的同学很受伤。
虽然可以选择使用动态域名,用花生壳。但毕竟那是人家的东西,登录不上去,或者IP不更新也常有的事。
最好就自己能通过其他办法获得动态的IP,那就省事多了。下面用到的方法,你只需要用到一个可以访问的空间,当然需要支持PHP。
建立两个文件postip.php和getip.php
postip.php
$content = file_get_contents ( 'ip.txt' );
|
if ( $_GET [ "pwd" ] == '123qaz' ) //简单认证
|
{
|
$ip = $_SERVER [ "REMOTE_ADDR" ];
|
if ( $content != $ip ) {
|
$xieru = fopen ( 'ip.txt' , 'w' );
|
$result = fwrite( $xieru , $ip );
|
fclose( $xieru );
|
if ( $fwrite === false) {
|
echo "update error!<br/>" ;
|
} else
|
echo "Change to " . $ip ;
|
} else
|
echo "No change " . $ip ;
|
} else {
|
echo "Sorry,you don't have permission<br/>" ;
|
//echo "Server ip: " . $content;
|
}
|
getip.php
$content = file_get_contents ( 'ip.txt' );
|
if ( $_GET [ "pwd" ] == '123qaz' ){
|
echo $content . '<br />' ;
|
} else {
|
echo "Sorry,you don't have permission<br/>" ;
|
}
|
再建立一个批处理setip.bat
@echo off
|
rem 关闭回显命令
|
cd C:\Program Files\Internet Explorer\
|
rem 跳入IE所在目录
|
start iexplore.exe "http://www.xxx.cn/postip.php?pwd=123qaz"
|
rem 启动IE GET提交到外部空间
|
ping 127.1 -n 4 >nul
|
rem 延时4秒
|
taskkill /im iexplore.exe /f
|
rem 关闭IE
|
rem 将以上代码保存到 postip.bat
|
最后,把postip.php和getip.php放在空间根目录,假如域名是xxx.cn
在需要获得动态ip的电脑设定windows计划任务每天执行setip.bat
这样,要想知道动态IP就访问http://www.xxx.cn/getip.php?pwd=123qaz
打开后就知道你的动态IP了。