“재귀 DNS 쿼리”란 무엇입니까? [닫은]


15

누군가 "재귀 DNS 쿼리"의 의미와 그것이 어떻게 나쁜 것으로 간주 될 수 있는지 간단히 설명 할 수 있습니까 ?


나는 누가 제목에서 이것을 썼는지 알았습니다. 왜 여기에 DNS를 게시하는지 모르겠지만 유닉스 / 리눅스에만 국한된 것은 아닙니다. 개인적으로 나는 그것이 괜찮은 질문이라고 생각하지만 여기서는 주제가 아니며, 우리가 그것을 원하는 네트워크에 다른 사이트가 있다고 생각하지 않습니다.
Michael Mrozek

이게 정말 주제가 아닌가? 전 세계 DNS 서버의 90 %가 유닉스 / 리눅스에서 실행되고 있다고 생각하십니까? 아마도 "재귀 쿼리에 응답하도록 DNS 서버를 어떻게 구성 할 수 있습니까? 왜 이것을 피해야합니까?" 하지만 정말 "오프 토픽"입니까? 그냥 궁금해서
개브.

아마도 security.stackexchange.com에 더 잘 맞는 것으로 간주 될 수 있지만 여기서이를 거부 할 실제적인 이유는 없습니다 ...
Shadur

답변:


25

TL; DR : 재귀 쿼리는 인터넷 및 DNS 작동 방식의 일부이지만 모든 DNS 서버가 재귀 쿼리를 수신해야하는 것은 아니며, 응답하지 않아야하는 서버가 응답 할 때 문제가 발생할 수 있습니다.

더 긴 버전 :

재귀, n : 재귀 아래를 참조하십시오.

재귀 적 DNS 쿼리는 unix.stackexchange.com의 주소를 요청한 DNS 서버가 응답 자체를 알지 못하는 경우 발생하므로 다른 서버와 확인해야합니다.

일반적으로 이것은 실제로 DNS가 작동하는 방식입니다. ISP의 DNS 서버에는 명백한 이유로 전체 인터넷 도메인 레코드가 영구적으로 기억되지 않으므로 다음 교환이 발생합니다.

  1. 당신 : 이봐, 브라우저, http://unix.stackexchange.com 보여줘

  2. 브라우저 : 물론! ... 흠 나는 그것이 어떤 IP 주소인지 실제로 모른다.

    안녕하세요, OS, 어디에서 unix.stackexchange.com을 찾을 수 있는지 말씀해 주시겠습니까?

  3. OS : 물론 ...

    흠. 내 호스트 파일에 없습니다. Lemme는 리졸버 구성을 확인합니다 ...

    ISP의 DNS 서버입니다. unix.stackexchange.com을 어디에서 찾을 수 있습니까?

  4. ISP의 DNS 서버 : 물론!

    ... 흠. 이 도메인은 신뢰할 수있는 도메인 목록에 없으며 지금은 해당 답변을 캐시하지 않았습니다.

    인터넷 루트 서버 여러분, stackexchange.com에 누가 권한이 있는지 말씀해 주시겠습니까?

  5. 인터넷 루트 서버 : 물론! Google 기록에 따르면 ns1.serverfault.com, ns2.serverfault.com 또는 ns3.serverfault.com이 필요합니다.

  6. ISP의 DNS 서버 : 감사합니다, 인터넷 루트 서버!

    안녕하세요, ns2.serverfault.com, 어디에서 unix.stackexchange.com을 찾을 수 있는지 말씀해 주시겠습니까?

  7. ns2.serverfault.com : 물론입니다! 주소 64.34.119.12입니다

  8. ISP의 DNS 서버 : 감사합니다!

    OS, 찾고있는 숫자는 64.34.119.12입니다.

  9. OS : 감사합니다!

    브라우저, 주소 64.34.119.12가 필요합니다

  10. 브라우저 : 감사합니다!

    좋아요, 지금 페이지를 불러 오십시오.

  11. 당신 : 예, 감사합니다 브라우저!

여기에는 실제로 가지 유형의 네임 서버가 조회 된다는 것을 명심 하십시오. 권한있는 DNS 서버 (ISP의 DNS 서버에 SE.com의 DNS 서버를 찾을 수있는 위치를 알려주는 "루트"서버 및 SE.com의 권한있는 DNS 서버) ) 및 재귀 또는 전달 DNS 서버 (ISP의 DNS 서버).

일반적으로, 전 유형이있다 없습니다 특히하지 자신의 도메인 외부에서 재귀 쿼리에 응답 할 예정. 소규모 ISP는 기본 정식 이름 서버를 기본 전달 이름 서버와 동일한 서버로 설정하여 비용을 절약 할 수 있지만 다소 안전하지 않은 정책입니다. 특히 자신의 IP 범위 외부에서 재귀 쿼리를 거부하도록 서버를 구성하지 않는 경우에는 특히 안전하지 않습니다.

Wikipedia에 대한 자세한 내용은 여기를 참조하십시오 .


내가 아는 한, 루트 서버는 서버로 안내해야 .com하며 거기서 ISP의 재귀 서버는 SE.com의 서버를 가리킬 것입니다.
Hanan N.

예, 그러나 나는 적어도 / somesome / 단순화되었지만 이해할 수 있도록 유지할 것이라고 생각했습니다.
Shadur

나는 당신이 12 단계를 잊었다 고 생각합니다. : Michael Mrozek : "이봐, 랜스 베인즈, 난 제목에서 이걸 누가 썼는지 알았어 ..."
Alois Mahdal

엑설런트! 답변이 upwoted1입니다
Valentin Bajrami

5

2 개의 DNS 서버가있는 경우 DNS-A는 도메인 a의 권한이고 DNS-B는 도메인 b의 권한이며 누군가 누군가 도메인 b의 조회를 위해 DNS 쿼리를 DNS-A에 보냅니다. 그런 다음 DNS-A는 도메인 -b를 조회하기 위해 DNS-B에 요청을 보내서 되풀이됩니다. 기본적으로 재귀 쿼리는 쿼리를 보낸 클라이언트 대신 DNS 서버가 DNS를 추적하여 요청을 수행하는 경우입니다.

사무실과 같은 네트워크 용 DNS 서버를 호스팅하고 있고 해당 사무실의 모든 컴퓨터가 DNS 서버를 사용하여 모든 조회를 수행하는 경우에는 문제가 없습니다. 다른 사람이 DNS 재귀 쿼리를 수행하도록 허용하는 경우에는 좋지 않습니다. 특정 도메인에 대한 요청 만 이행해야하는 DNS 서버를 호스팅하는 경우에도 좋지 않습니다. 누군가 다른 도메인에 대한 조회를 요청하면 재귀 대신 DNS 서버가 오류를 반환해야합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.