집에서 사용중인 인터넷의 IP가 종종 바뀔때가 있다.
사무실이나 외부에서 맥미니 서버에 접근할때는 DNSEver 의 DDNS 서비스를 무료로 사용하고 있다.
그런데 윈도우를 사용할때는 IP갱신이 프로그램으로 되어서 별다른 신경을 쓰지 않아도 되었는데
맥에서는 왠일로 죽어라 되지 않았다.
서핑도 꽤나하고 삽질을 좀 해보다가 결국 해결!!!!!!!!!
눈물 흘릴뻔했다.
혹시 모를 다른 분들을 위해서 정리해둔다.
OS X에서 DNSEver DDNS를 갱신하는 방법은 리눅스나 유닉스에서 사용하는 방법과 틀린점이 없는데 한부분이 틀려서 되지 않았다.
1. DNSEver에 DDNS를 등록한다.
2. DDNS 등록을 위한 스크립트를 작성한다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | // vi 명령어로 파일 생성후 vi dnsever.sh // 하위 명령어를 작성한다. curl -u 아이디:인증코드 'http://dyna.dnsever.com/update.php?업데이트_인자값' 업데이트_인자값 : 다이나믹DNS로 업데이트할 내용을 적습니다. 형식은 다음과 같습니다. 예) 1. 한개의 호스트만 업데이트할 경우 (온라인 상태로 설정되며, IP주소는 서버에서 자동으로 설정) host[호스트이름] 2. 특정IP(예:110.120.130.140)로 호스트를 업데이트할 경우 host[호스트이름]=110.120.130.140 3. 호스트를 오프라인으로 설정할 경우 host[호스트이름]=offline 4. 여러개의 호스트를 업데이트할 경우에는 '&'로 나열하여 입력할 수 있습니다. 예1) bbs.myhome.com, www.myhome.com 을 자동 IP으로 업데이트하며, 온라인상태로 설정 host[bbs.myhome.com]&host[www.myhome.com] 예2) bbs.myhome.com은 offline 상태로 바꾸며, www.home.com은 자동으로 IP를 업데이트하며, 온라인상태로 설정 host[bbs.myhome.com]=offline&host[www.myhome.com] |
3. 스크립트 실행을 위한 권한 변경
1 | chmod 707 dnsever.sh |
4. 5분 단위 스크립트 실행을 위해 crontab 등록
1 | */5 * * * * /파일위치경로/dnsever.sh > /dev/null 2>&1 |
5. crontab 등록 확인
1 2 3 | crontab -l //상위 명령어 실행시 등록되어 있는 crontab 확인 가능 */5 * * * * /파일위치경로/dnsever.sh > /dev/null 2>&1 |
6. 중요
이렇게 진행하면 DDNS가 갱신되지 않는다.
문제는 2번 단계에서 업데이트_인자값에 “[“, “]” 특수문자를 변환해주어야 한다.
[ => %5B
] => %5D
상위 문자로 교체하여 등록하면 끝!
Usually, I don’t read long posts, but it absolutely was worth the time. Nice article.
Great, thanks for sharing this article.