>> Read Reply from No. 24500 article  
RE: (질문)ADSL 하는데 IP 변경시 메일로 통보..

등록 2001-03-20 21:52:00     조회 1
이름 ###    

		유동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 주소와함께 메일로 통보를 받을수
:
:  있는 방법이 있던데.. 어떻게 하죠!!
:
:   여기 질문답변에 있다고도 하는데.. 어딨는지 모르겠어용..
이름
암호


>> 관련글
24500 (질문)ADSL 하는데 IP 변경시 메일로 통보..  또또  2001.03.20  ....
  답장 RE: (질문)ADSL 하는데 IP 변경시 메일로 통보..  ###  2001.03.20  ....
Register [ localhost 목록보기 윗글 아랫글
글쓰기
답장쓰기 수정 삭제
정규표현식 [ 상세 검색 ]
페이지로딩: [ 0.74 초 ] 작업시간: [ 0.13 초 ]

Copyleft 1999-2026 by JSBoard Open Project
Theme Designed by IDOO All right reserved
[TOP]

적수네 동네
+
| 적수네 동네
| 공부방
| 리눅스 잡지 서고
| LSN 소스
| 링크 모음
+---+
게시판
+
| 떠들어보세!
| 질문과 답변
| 새소식과 정보
| 1원짜리 팁?
| 대화방
+---+
칼럼?
+
| 세하 훔쳐보기
| Welcome2nite
| 혜진의 염장판
+---+
리눅스 상표권
+
| 반대 서명란
| 토론 게시판
+---+
GNU
+
| GNU 선언문
| GNU GPL
| GNU 미러 목록
+---+
프로젝트?
+
| 리눅스카운터
| RC5DES
| 실질헌법 제작
+---+
커널 소식
+
| 안정 버젼: 2.4.14
+---+
테마 선택
+
LSN 방송국?
+
| OFF AIR
+---+
회원
+
| 로그인
+---+
[ 적수네 동네 ] [ 리눅스 상표권 독점 반대 ] [ 한글 리눅스 문서 프로젝트 ] [ KrLine ] [ 사랑넷 ] [ Valid HTML 4.0! ] [ SlashDot ] [ Freshmeat ]
Copyleft (C) 1998-2001 Byeong-Chan Kim . License
TIME: 1789593707
System by WYZsoft, HDD by I.O.Linux, Mizi Research, Embryo, WOWLINUX, Domain by SarangNet, Network by KrLine.