인디노트

스마트한 DDNS 서비스 ImDNS 본문

내 프로젝트/보안인증 (OTPKEY)

스마트한 DDNS 서비스 ImDNS

인디개발자 2023. 5. 17. 08:24

오늘은 ImDNS 라는 좀더 스마트한 DDNS 무료 서비스를 소개하고 무료 사용자를 모집하고자 블로그에 글을 올립니다.

이 DDNS 서비스는 다른 DDNS 서비스와 차별점이 좀 있습니다.  DDNS 가 좀더 스마트해지면 어떨까? 라는 생각으로 시작하였습니다.

사실 주변에 몇몇 지인들이 DDNS 라는게 특별히 차별되는 기능이 있을 수 있을까? 그럴 필요가 있을까? 라는 의문의 조언도 많이 들었지만 ImDNS 서비스를 만들고 또 직접 사용해보면 이제 DDNS 서비스도 스마트해 질 수 있겠구나 라는 생각을 하게 됩니다.

그 중에서 좀 특이한 사항은 공유기를 설정하거나 서버에 스크립트를 설치할 필요같은게 없이 엄지 손가락 만한 장치 (DDNS Token) 를 이용해서 유동 IP 를 DNS 서버에 업데이트 해 주는 기능입니다.

ImDNS DDNS Token

물론 이 장치를 현재 판매하는것은 아닙니다. 현재 3D 프린터로 제품을 만든 상태입니다. 혹시 사용해 보시려면 이 사이트 관리자 (사실은 개발자) 에게 메일을 보내서 제품 테스터로 사용해 보겠다고 하면 3D 프린터로 만들어 택배로 보내줍니다. 하지만 안에 들어있는 라즈베리파이 피코 W 는 (약 9,000원) 은 별도로 구매해야 합니다. 라즈베리파이 피코 W 에 DDNS 토큰 펌웨어를 넣는것은 간단하지만 (실제로 위 그림과 같은 설정 프로그램은 윈도우용, 맥용, 리눅스용 모두 제공하고 있음) 그것이 여의치 않으면 이 사이트 개발자가 라즈베리파이 피코 W 를 보유하고 있으니 메일로 의논 하시면 될 듯 합니다.

저는 저의 책상위에 이렇게 스마트폰 충전기를 이용해서 전원 꽂아서 켜 놓고 있습니다. 카페 등에서 작업하는 경우가 많고 특히 외부에서 모바일 상으로 작업하는 경우가 많아서 DDNS 를 필수적으로 사용하는 입장입니다. 저의 경우 유동 IP 를 3 개 쓰고 있거든요. 모두 KT 망인데 개발용으로 사용하다 보니 IP 가 종종 바뀝니다.

ImDNS DDNS Token on my desk

 

IP 업데이트 커멘드 라인 API

그렇다고 이 ImDNS 사이트가 이 토큰 장치로만 IP 를 업데이트 하는것은 아닙니다. 다음과 같이 등록한 호스트 도메인 마다 고유의 키 값이 있으며 오른쪽에 메뉴 버튼이 있습니다.

등록한 각 호스트 도메인 별로 고유 키가 있으며 오른쪽 메뉴를 통해 확인할 수 있음

 

다음과 같이 IP 를 업데이트 할 수 있는 Curl API 를 확인할 수 있습니다. 특히, 보상상의 이유로 HTTPS 호출만 지원하며 -u 옵션으로 HTTP Authorization 인증을 하게 됩니다. -k 옵션은 빼도 상관 없습니다. 이 옵션은 api.imdns.org 사이트의 SSL 인증서 검증을 하지 않겠다는 옵션입니다. -k 옵션을 제거하면 매 업데이트마다 api.imdns.org 의 서버 인증서를 매번 체크하게 됩니다. 따라서 응답 속도가 약간(?) 늦어집니다.  이 옵션은 IOT 기기의 동적 IP 를 업데이트하는데 유용할 수 있어서 기본으로 넣었습니다.

유동IP를 DNS 서버에 업데이트하는 커멘드 라인

저의 경우에는 DDNS Token 도 사용하고 이 커맨드 API 명령을 NAS (홈서버) 에서 주기적으로 실행하도록 스크립트하는 방법으로, 즉 이중으로 업데이트를 하고 있습니다. 하나의 호스트 도메인에 대해서 명령줄 업데이트와 DDNS Token 업데이트를 함께 할 수 있기 때문입니다.

 

DDNS Token 등록 및 관리 화면

DDNS Token 장치는 각 장치마다 고유한 8 글자의 ID 값과 10 글자의 REG 값이 있습니다. 이 값들은 DDNS Token 장치의 외부에 표기되어 있습니다.

사이트 상단의 TOKEN 버튼을 이용하면 다음과 같이 토큰을 등록하고 관리할 수 있는 페이지가 표시됩니다. + 버튼으로 토큰을 추가할 수 있습니다.

DDNS Token 등록 관리 화면

 

다음은 DDNS Token 을 등록하는 다이얼로그 화면입니다. Domain 은 콤보박스에서 Token ID 를 이용한 도메인 ({Token ID}.imdns.org} 이 기본으로 설정되며, DOMAIN 화면에서 등록한 호스트 도메인을 선택 할 수 있습니다. 여기서 호스트 도메인을 선택하면 등록되는 DDNS Token 이 호스트 도메인과 연동됩니다.

ImDNS Token 등록 화면

 

모바일 웹 화면

모바일 웹에서도 보기가 나쁜 편은 아닙니다. 다음의 그림은 제 스마트폰에서 캡춰한 이미지를 좀 이쁘게 보이려고 폰 일러스트 이미지와 함께 편집한 그림입니다.

스마트폰에서의 ImDNS 서비스 접속 화면

 

DNS 레코드가 업데이트된 시간과 DNS 레코드가 실제로 검증된 시간을 확인 할 수 있습니다.

 

곧 제공될 추가 기능 - 보안성 강화

또한, 향후 IP 변동에 대한 푸시알림과 IP 변동에 대한 히스토리 조회들의 기능도 추가될 예정입니다. 예를 들어 해커가 우회적으로 DNS 목록을 변경하고 해킹하는 수법을 감시하고 이러한 해킹으로 인해서 피해를 줄이기 위한 기능이라고 생각되어 그러한 보안 기능들을 현재 개발하고 있는 중입니다.

 

평가인 모집

아무래도 사이트 개발자의 생각만으로 만든 DDNS 서비스이기 때문에 많은 분들의 의견을 수렴하는 일이 꼭 필요하다고 생각하고 있습니다. 이 글을 읽고 관심이 있으셔서 한번 사용해 보고 싶으신 분이 계시다면 https://imdns.org 에 방문하셔서 메일 보내 주시면 답신 메일을 받을 수 있습니다.

또한, 현재 해당 사이트에서 본인의 Google 계정으로 특별한 가입 절차 없이 원클릭 로그인 할 수 있습니다. 이 ImDNS 서비스는 Google Firebase 와 아마존 AWS DNS 를 이용하여 서비스되고 있습니다.

 

좋은 날 되시고 좋은 의견이 있으시면 댓글 달아주시면 감사하겠습니다.

감사합니다.

반응형

'내 프로젝트 > 보안인증 (OTPKEY)' 카테고리의 다른 글

OTPKEY 인증자 앱  (0) 2023.03.26
마이크로소프트 윈도우즈 스토어  (0) 2023.03.20
LDAP 인증에 2FA 인증 구현  (0) 2023.02.20
Comments