미분류

linux 환경에서 dnsever 서비스 이용하기

홈페이지를 만들면서 또는 블로그를 운영하면서 나만의 도메인이 있었으면 하는 바램은

다들 한번쯤은 가지지 않을까 싶다.

하지만 호스팅 비용이라던가 도메인 유지비용의 문제로 결국 포기하는 사람이 더 많고

실제로도 나도 그런 이유로 포기하고 있었다.

 

다만 최근에 와서 iptime 등의 공유기에서 제공하는 ddns 서비스를 이용해서

내 홈서버로 접속을 하는 방법등이 있었기에 그 쪽을 사용하고 있었다.

 

그러다가 다시 내 도메인 주소를 가지고 싶다! 라는 욕심이 꿈틀거린건

아래의 몇가지 이유가 동시에 작용했기 때문이었다.

 

1. 나한테는 도메인 열풍 시절에 사둔 몇개의 도메인이 고스란히 파킹되어 있고

(파킹이란 사용하지 않고 그대로 소유권만 유지하고 있는 것)

2. 네이버와 티스토리 등에 이미 내 블로그를 운영하고 있었으며

3. 이 블로그에 내 도메인을 연결하기엔 블로그에서 제공하는 여러가지 서비스중에 제약이 많았다. (특히 용량이나 디자인의 부분)

4. 게다가 나는 남들과 다르게 서버 구성능력이 있다.

(다만 당장 구동시킬 하드웨어는 없었다…)

 

일단 그래서 해보자(!)라는 목적의식이 생겼고…

우선은 라즈베리파이가 내가 필요로 하는 목적성인

소규모, 개인수준의 블로그를 구동할 수 있는 능력 + 저전력에 가장 맞다고 생각이 되어서

냉큼 구매를 했다.

(그리고선  1주일 넘게 고생한것은 비밀…)

 

환경 구성을 다 하고서 내가 필요로 하는 블로그 구성이 워드프레스와 가장 잘 맞다는 생각이 들어서 워드프레스를 설치했다.

네이버 블로그 글을 몇개 테스트 삼아서 이전해봤는데 큰 문제가 없이 잘 되는 것을 확인하고서는 도메인을 옮길 준비를 하게 되었다.

 

그러던 중에 발생한 문제가 나는 집에서 구성한 서버이다보니 유동 IP였고

유동 IP는 네임서버를 구성 할 수가 없었다.

그러던 와중 나같은 유동 IP를 쓰는 사람들의 서버에도 도메인을 연결시켜주는 서비스(DDNS)를 찾았고 그것이 DNSEVER였다.

 

DNSEVER(https://kr.dnsever.com)에서 제공해주는 DDNS서비스는 내가 필요로 하는 기능을 모두 가지고 있었고 당연하게도 냉큼 진행을 하였다.

(성격이 급하다보니…)

 

DDNS는 DYNAMIC DNS의 약자인데 어떤 기능을 하는지는 위에 적었듯이 IP가 유동적이라 서버 설정을 할 수 없는 사람들에게 DNS 설정을 할 수 있게 해주는 서비스이다.

게다가 나같은 어설픈 초짜를 위해서 사용 설명법도 친절하게 설명해주고 있다.

(https://kr.dnsever.com/index.html?user_domain=&selected_menu=aboutddns&skey=)

 

나는 리눅스의 환경에서 사용하고 있으니까 윈도우 환경에서처럼 실행파일로는 설정할 수가 없지만 대신 쉘(SH)환경에서 WGET명령어로 지속적으로 연결을 유지하는 방법을 하기로 결정했다.

시작하기전에 당연하지만 파킹되어있던 도메인중 사용할 것을 하나를 결정해서 그간 파킹되어서 정해져 있지 않앗던 네임서버를 dnsever.com에서 알려주는 네임서버로 변경할 필요성이 있다.

상황에 따라서 다르지만 (나의 경우 파킹중이어서 그랬던건지 금방 완료되었다.) 2-3일까지 시간이 걸린다고 한다.

네임 서버의 주소는 아래 그림을 보면 될거 같다.

 

 

untitled01

 

 

 

보면 네임 서버가 5차까지 있는데 나의 경우엔 도메인을 파킹하고 있던 업체에서 2차까지밖에 지원을 하지 않아서 위에서부터 1, 2차 네임서버를 지정해줬다.

(나중에 확인해도 큰 문제는 없었다.)

혹시나 그래도 이해가 안되는 사람은 아래 링크를 참고하면 될 것이라고 생각한다.

(https://kr.dnsever.com/help/wiki/wiki.php/NameServerChange)

 

위의 절차가 완료 되었다면 내 서버측의 설정을 바꿀 차례인데

DNSEVER.COM 의 설명에서대로라면 리눅스 환경에서도 몇가지 선택지가 있다.

그중에서 나는 WGET 환경에서 진행을 하기로 결정했고 WGET 패키지가 설치된 기준으로 아래와 같이 넣으면 된다.

 

wget -O - --http-user=아이디 --http-passwd=인증코드 'http://dyna.dnsever.com/update.php?업데이트_인자값'

 

다만 저기서 조금 착각해서 한참을 헤메었는데 “업데이트 인자값” 이라는 부분이었다.

dnsever.com 홈페이지 내부에서 설명을 찾다가 스스로 해결을 했는데

host[도메인주소 / www.abc.com] 과 같이 하여야 연결이 된다는 것이 주의 점이었다.

저 부분을 몰라서 20여분을 헤멘 것을 제외하곤 꽤 스무스하게 진행하였던 것 같다.

 

문제는 쉘(SH)에 해당 내용을 적어 넣더라도 지속적으로 갱신을 해주는 것은 아니기 때문에 갱신을 위해서 CRON등에서 갱신을 지속적으로 해주게 할 필요성이 있었다.

 

 

그래서 편집기를 이용해서 우선 위의 쉘을 작성후 저장한다.

(나는 root 상태에서 작성했으므로 root 계정이 아닐경우 sudo 등이 필요하다.)

nano /usr/local/bin/xxx.sh (xxx.sh 라는 이름은 필요한대로 변경하면 된다.)

 

 

그 다음 스크립트 실행 권한을 부여

chmod +x /usr/local/bin/xxx.sh

 

 

그 다음 크론탭에서 시간단위로 갱신 명령어 입력

nano /etc/crontab (크론탭은 사용자마다 위치가 다름)
*/5 * * * * root /usr/local/bin/xxx.sh > /dev/null 2>&1

 

 

그 다음 작성된 스크립트 쉘의 실행 라인을 실행시마다 추가할 수있도록 수정

(주의점은 리눅스 배포본에 따라서 rc.d의 위치가 다 다르므로 확인이 필요하다.)

nano /etc/rc.d/rc.local
/usr/local/bin/xxx.sh

 

 

위와 같이 작성이 되었고 스크립트가 실행되는지 확인 후 문제가 없다면

네임서버가 연결이 된 직후에 나의 서버측으로 도메인이 연결되는 것을 확인 할 수 있다.

 

이전과 다르게 세상이 참 좋아졌구나 싶은게 이런 서비스를 제공해주는 업체도 있다니…

정말 위와 같은 서비스를 제공해주는 dnsever.com 에 감사드린다.