유동IP에 서브도메인을 연결해주는 서비스가 제일 간단할 것 같군요.
아니면... 좀 복잡하긴 해도 다음 방법을 한번 써보시기 바랍니다.
유동IP가 물린 리눅스에 다음 파일을 저장하여 실행권한을
부여(chmod +x /root/bin/ipch)한 후,
#---------- /root/bin/ipch ----------#
#!/usr/bin/perl
use Socket;
$u = ParseURL($ARGV[0]);
Query($u{'proto'}, $u{'server'}, $u{'port'}, $u{'path'});
sub Query {
my ($proto, $server, $port, $request) = @_;
my $result; my $r = "
";
socket(SOCK, PF_INET, SOCK_STREAM, 6) || return 0;
my $sin = sockaddr_in($port, inet_aton($server));
connect(SOCK, $sin) || return 0;
my ($old) = select(SOCK); $|=1; select($old);
print SOCK "GET $proto$server:$port$request HTTP/1.0$r$r";
while(<SOCK>) { $result .= $_; }
close(SOCK);
return $result;
}
sub ParseURL {
my $url = shift; my $u;
($u{'proto'}, $u{'server'}, $u{'port'}, $u{'path'}) =
($url =~ /^([^:]+://)([0-9a-zA-Z-.]+)(:[0-9]+)?(.*)$/);
if ($u{'port'} ne "") { $u{'port'} =~ s/^://; }
else { $u{'port'} = 80; }
if ($u{'path'} eq "") { $u{'path'} = "/"; }
return \%u;
}
다음에서 설명할 PHP 프로그램에 update=1 이라는 인자를 붙인 후
cron에 등록해 둡니다. 다음 예는 5분에 한번씩 실행토록 한 것입니다.
#---------- /etc/crontab ----------#
*/5 * * * * root /root/bin/ipch http://도메인/경로/ipch.php?update=1
그리고 나서 PHP가 지원되는 서버에 다음과 같은 PHP 프로그램을 올려둡니
다.
#---------- http://도메인/경로/ipch.php ----------#
<?
$mail = "myid at domain.ext"; // 메일을 수신할 주소
$cache = "/tmp/ip.cache"; // IP를 저장할 파일명
Header("Content-type: text/plain");
$new_ip = $REMOTE_ADDR;
if (file_exists($cache)) {
$fp = fopen($cache, "r");
$old_ip = fread($fp, filesize($cache));
fclose($fp);
}
if ($update && ($new_ip != $old_ip)) {
$fp = fopen($cache, "w");
fputs($fp, $new_ip);
fclose($fp);
// 메일 송신 부분
$subject = "IP Change : $old_ip -> $new_ip";
$content = $subject;
mail($mail, $subject, $content);
print $new_ip;
}
else { print $old_ip; }
?>
이제 집에 있는 컴퓨터의 IP를 알고 싶다면 브라우져로
http://도메인/경로/ipch.php를 접속해보면 되겠고,
텔렛으로 바로 접속하고자 한다면 다음과 같이 하는게 좋겠지요.
$ telnet `lynx -source http://도메인/경로/ipch.php`
(ESC 키 바로 밑에 있는 ` 기호입니다.)
자주 쓰신다면 이 또한 alias를 걸어두시길...
: 한국통신ADSL 을 사용하고 있는데요.. 음.. 집에서 PC를 켜두고 회사에서
:
: 접속을 할려믄.. 꼭 IP를 까먹어가지구.. 접속을 못하거든요..
:
: 유동IP다보니.. 아이피바뀔때마다.. 외우기도 힘들고..
:
: IP가 바뀔때마다.. 바뀐 IP 주소와함께 메일로 통보를 받을수
:
: 있는 방법이 있던데.. 어떻게 하죠!!
:
: 여기 질문답변에 있다고도 하는데.. 어딨는지 모르겠어용..