리버스 DNS
IT위키
더 많은 작업
리버스 DNS(Reverse DNS, 역방향 DNS 조회)는 DNS에서 IP 주소를 주고 그 주소에 해당하는 도메인 이름(호스트 이름)을 돌려받는 조회이다.
보통의 DNS 조회는 도메인 이름을 IP 주소로 바꾸는 정방향 조회다. 리버스 DNS 는 그 반대 방향이다. 클라이언트가 IP 주소를 제공하면 DNS 서버가 그 IP 에 등록된 이름을 반환한다. 메일 서버가 접속해 온 상대 서버의 IP 를 이름으로 확인할 때, 로그에 IP 대신 호스트 이름을 남길 때, nslookup·ping -a 로 IP 의 주인을 확인할 때 쓴다.
- 역방향 조회는 PTR 레코드(Pointer)로 한다 → DNS 자원 레코드
- IPv4 주소는 옥텟 순서를 뒤집어 in-addr.arpa 도메인 아래의 이름으로 바꿔 질의한다. 192.0.2.10 은
10.2.0.192.in-addr.arpa의 PTR 레코드를 찾는다. IPv6 는 ip6.arpa 를 쓴다 - 정방향 영역(A·AAAA 레코드)과 역방향 영역(PTR 레코드)은 따로 관리한다. 정방향만 등록하고 역방향을 등록하지 않으면 리버스 조회가 실패한다
윈도우 서버의 DNS 서버 역할에서는 'DNS 관리자'에 정방향 조회 영역과 역방향 조회 영역이 따로 있다.
| 구분 | 클라이언트가 주는 것 | 서버가 돌려주는 것 | 레코드 |
|---|---|---|---|
| 정방향 조회 | 정규화된 도메인 이름(FQDN) | IP 주소 | A, AAAA |
| 역방향 조회 | IP 주소 | 도메인(호스트) 이름 | PTR |
- 역방향 조회 영역은 네트워크 ID 로 만든다(예: 192.168.1.x 대역이면 1.168.192.in-addr.arpa)
- 호스트(A) 레코드를 만들 때 '연결된 포인터(PTR) 레코드 만들기'를 선택하면 역방향 레코드가 함께 생긴다
- 도메인 이름을 주면 IP 를 돌려주는 것은 정방향 조회다
- 한 도메인에 IP 를 여러 개 등록해 차례로 돌려주는 것은 DNS 라운드 로빈이다
- 도메인을 주면 하위 도메인 목록을 돌려주는 기능은 조회가 아니다. 영역의 하위 도메인은 위임(NS 레코드)으로 관리한다
- 리버스 DNS 결과는 그 IP 대역을 관리하는 쪽이 마음대로 정할 수 있으므로 그것만으로 상대를 믿으면 안 된다. 역방향으로 얻은 이름을 다시 정방향 조회해 같은 IP 가 나오는지 확인한다(FCrDNS). 많은 메일 서버가 이렇게 확인해 스팸 서버를 거른다