OpenWrt ddns 설치 및 설정

ddns

여러 ddns 중에서 넷기어 라우터 기본 ddns인 mynetgear.com(noip.com)와 대중적?으로 많이 쓰이는 duckdns.org, 자기 소유의 도메인이 있는 경우 사용할 수 있는 cloudflare.com 설정 예를 설명합니다. OpenWrt는 20-30개 정도되는 많은 ddns를 지원합니다. 기존에 쓰던것 있으면 그것 쓰면 되고 없다면 잘 모르겠지만 duckdns 추천합니다.

duckdns

duckdns.org에 로그인하여 token과 내가 설정한 host(subdomain)를 확인합니다. 처음 duckdns에 가입했다면 host(subdomain)을 정하세요.

duckdns ddns

라우터에 ssh로 접속해 ddns와 https 지원을 위해 ca-certificates, wget 또는 curl 패키지를 다운받습니다.

opkg update
opkg install luci-app-ddns ca-certificates ca-bundle wget curl

duckdns.org에 설정한 host가 myhost.duckdns.org 이고 token이 'sjsjsjsj-iiiiaiia-zizizizi-ddpaqq-oiiajaja'라면 /etc/config/ddns화일을 아래와 같이 설정합니다.(이러한 설정은 luci를 통해서도 할 수 있습니다.)

...
config service 'duckdns'
        option service_name 'duckdns.org'
        option lookup_host 'myhost.duckdns.org'
        option domain 'myhost'
        option password 'sjsjsjsj-iiiiaiia-zizizizi-ddpaqq-oiiajaja'
        option interface 'wan'
        option ip_source 'network'
        option ip_network 'wan'
        option use_https '1'
        option cacert '/etc/ssl/certs'
        option enabled '1'

설정을 마친 후 ddns 데몬을 재시작 합니다.

/etc/init.d/ddns restart

mynetgear.com (noip.com)

넷기어 라우터 사용자의 경우 정펌의 ddns는 noip.com와 제휴하여 host.mynetgear.com의 주소로 ddns를 지원합니다. 기존 ddns를 그대로 사용하려면 ddns설정을 위해 ssh로 접속해 아래처럼 패키지를 다운받습니다. (설치하는 패키지는 duckdns와 동일합니다.)

opkg update
opkg install luci-app-ddns ca-certificates ca-bundle wget curl

noip.com 웹페이지에 접속하는 id(이메일 주소)와 password 그리고 설정한 host를 이용해 /etc/config/ddns를 수정합니다. id : [email protected], password : strongpassword, host가 myhost.mynetgear.com이라면 아래와 같이 설정합니다. (이러한 설정은 luci를 통해서도 할 수 있습니다.)

...
config service 'mynetgear'
        option update_url 'http://[USERNAME]:[PASSWORD]@dynupdate.no-ip.com/nic/update?hostname=[DOMAIN]&myip=[IP]'
        option lookup_host 'myhost.mynetgear.com'
        option domain 'myhost.mynetgear.com'
        option username '[email protected]'
        option password 'strongpassword'
        option interface 'wan'
        option ip_source 'network'
        option ip_network 'wan'
        option use_https '1'
        option cacert '/etc/ssl/certs'
        option enabled '1'

설정을 마친 후 ddns 데몬을 재시작 합니다.

/etc/init.d/ddns restart

cloudflare

mynetgear.com이나 duckdns.org와 다르게 cloudflare의 ddns를 이용하려면 자기 소유의 도메인이 필요합니다. (이미 등록한 도메인이 없다면 굳이 돈주고 도메인 사서 라우터에 dns 연결할 필요는 없습니다. 기존에 도메인을 보유하고 있어서 자신의 도메인을 사용하려는 분에게 해당됩니다.)

  1. 예시)
    • 소유 도메인 : qquack.org
    • ddns를 이용할 host : myhost.qquack.org
    • cloudflare 로그인 계정(이메일) : [email protected]
    • cloudflare grobal api key : sdfsmdkfkskdzjk1128s78dsdu2qw88 (계정정보에서 확인 가능)
  2. 먼저 cloudflare.com에 로그인하고 dns설정 페이지에서 레코드 추가를 눌러 dns레코드를 추가합니다.
    • type : A
    • Name : myhost
    • ipv4 address : 192.168.1.1 (아무 아이피를 일단 넣습니다.)
    • TTL : auto
    • proxied : off (프록시 기능은 nslookup으로 ip를 확인할 경우 도메인의 실제 ip를 보여주는게 아니고 프록시된 cloudflare의 ip를 보여주는 보안기능입니다. http가 아닌 외부에서 ssh로 접속을 위해서는 off(회색 아이콘)로 해야 합니다. openwrt에서 직접 on/off하는 기능은 확인이 안되네요.)
    • save
  3. 도메인을 구입한 경우 도메인등록기관(도메인 구입처)에 cloudflare.com에서 알려주는 네임서버로 네임서버주소를 변경합니다.
cloudflate dns

라우터에 ssh로 접속해 다음 패키지를 다운 받습니다.

opkg update
opkg install ddns-scripts_cloudflare.com-v4 luci-app-ddns ca-certificates ca-bundle wget curl

/etc/config/ddns 화일을 다음과 같이 수정합니다.(luci를 통해서도 할 수 있습니다.)

...
config service 'cloudflare'
	option service_name 'cloudflare.com-v4'
	option lookup_host 'myhost.qquack.org'
	option domain '[email protected]'
	option username '[email protected]'
	option password 'sdfsmdkfkskdzjk1128s78dsdu2qw88'
	option use_https '1'
	option cacert '/etc/ssl/certs'
	option ip_source 'web'
	option ip_url 'http://checkip.dyndns.com'
	option ip_network 'wan'
        option enabled '1'

ddns 데몬을 재시작 합니다.

/etc/init.d/ddns restart

참고사이트

Comments

No comments yet. Why don’t you start the discussion?

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 항목은 *(으)로 표시합니다

22  −  15  =