DNS를 이해하기위한 지속적인 실험에서 네임 서버가 재귀 쿼리를 수행하는 방법을 이해하려고합니다. 기본 아이디어를 얻습니다. 최상위 수준의 DNS 서버로 시작한 다음 신뢰할 수있는 네임 서버 목록을 보내면 신뢰할 수있는 응답을 얻을 때까지 해당 서버 등에 연결합니다.수동으로 재귀 DNS 쿼리 수행
소리가 충분히 간단합니다.
그러나 실제로 시도해 볼 때 첫 번째 단계가 끝난 후에 붙어 있습니다. 이 명령 줄 도구를 사용하여 수동으로 수행하고 있습니다. (을 회귀에서 해제해야합니다.)
좋습니다. 1 단계 : 루트 이름 서버로 시작하십시오. 나는 root name servers on Wikipedia 목록에서 임의로 198.41.0.4
(Verisign)을 골랐습니다.
"google.com"해결 요청을 보내드립니다.
그것은 다시 다음 날을 보냅니다
+---------------------------------------------------------------------------+
| 47547 | QR: 1 | OP: 00 | AA: 0 | TC: 0 | RD: 1 | RA: 0 | Z: 0 | RCODE: 00 |
+---------------------------------------------------------------------------+
| QDCOUNT: 1, ANCOUNT: 0, NSCOUNT: 13, ARCOUNT: 15 |
+---------------------------------------------------------------------------+
ANSWERS : 0
AUTHORITIES:
NS: m.gtld-servers.net
NS: l.gtld-servers.net
NS: k.gtld-servers.net
NS: j.gtld-servers.net
NS: i.gtld-servers.net
NS: h.gtld-servers.net
NS: g.gtld-servers.net
NS: f.gtld-servers.net
NS: e.gtld-servers.net
NS: d.gtld-servers.net
NS: c.gtld-servers.net
NS: b.gtld-servers.net
NS: a.gtld-servers.net
ADDITIONAL:
A: 192.55.83.30
A: 192.41.162.30
A: 192.52.178.30
A: 192.48.79.30
A: 192.43.172.30
A: 192.54.112.30
A: 192.42.93.30
A: 192.35.51.30
A: 192.12.94.30
A: 192.31.80.30
A: 192.26.92.30
A: 192.33.14.30
AAAA: 2001:0503:231d:0000:0000:0000:0002:0030
A: 192.5.6.30
AAAA: 2001:0503:a83e:0000:0000:0000:0002:0030
좋아, 그래서 모든 추가 레코드의 지점이 무엇인지 확실하지 않다 - 그들은 모두 LAN 그래서 나도 몰라 주소를 현지로 표시 그들이 나에게 무엇을 사용하고 있는지. 그러나 어쨌든 권위 섹션에서 반환 된 결과를 살펴보면 다른 네임 서버 목록을 볼 수 있습니다. 좋아요, 다음 단계는 반환 된 네임 서버 중 하나를 선택하고 IP를 가져와야한다는 것입니다. 그래서 a.gtld-servers.net
을 해결하라는 요청을하고 ...
... 정확히 같은 이름 서버 목록을 반환합니다.
그래서 ... 여기 어떻게 진행해야할지 모르겠습니다. 궁극적으로 "google.com"의 신뢰할 수있는 이름 서버에 어떻게 도달합니까?
편집 :
좋아, 그래서 그 192
주소 내가 잘못 가정으로 LAN이 주소 아니지만, 다른 네임 서버입니다 나타납니다. 나는 권한에 더 가까이 가기 위해 그 네임 서버에 연락 할 수 있다고 가정하고 있습니다. 그러나 이러한 이름 서버를 사용하는 방법을 어떻게 알 수 있습니까? 나는 ARCOUNT 섹션이 추가 정보만을위한 것이라고 생각했습니다 ... 왜 모든 네임 서버가 응답이나 권한 대신 ADDITIONAL 섹션에 배치 되었습니까? 다른 네임 서버로의 참조가 ADDITIONAL 섹션에 들어가는 관례일까요?
이 질문은 일반적인 DNS 질문이며 프로그래밍 질문이 아니기 때문에 주제가 아닌 것 같습니다. – nos