Windows에 개인 및 공용 DNS 서버를 모두 추가하면 예기치 않은 동작이 발생하는 이유는 무엇입니까?

Windows에 개인 및 공용 DNS 서버를 모두 추가하면 예기치 않은 동작이 발생하는 이유는 무엇입니까?

Windows의 네트워크 설정에 두 개의 DNS 서버가 구성되어 있습니다.

  • Preferred DNS server:내 DNS 서버
  • Alternate DNS server:ISP에서 제공하는 공용 DNS

내 개인 DNS 서버를 사용하여 확인해야 하는 인트라넷 사이트를 여는 동안 내 브라우저는 공용 인터넷 웹사이트를 엽니다. 대체 DNS 서버인 공용 DNS를 제거하면 인트라넷 사이트가 열립니다.

제가 이해한 바에 따르면, 개인 DNS가 IP를 확인하면 공용 DNS로 확인을 시도해서는 안 됩니다. 명령 프롬프트에서 체크인하면 인트라넷으로만 확인되지만 브라우저에서는 동일하지 않습니다.

왜 이런 일이 발생하며 어떻게 해결할 수 있나요?

답변1

1) 그런 식으로는 작동하지 않습니다.

나는 Windows가 하는 어려운 교훈을 배웠습니다.~ 아니다이 DNS 서버 목록을 순서대로 사용하세요. 너할 수 없다이름을 확인할 수 없으면 단순히 목록을 따라갈 것이라고 가정합니다.

TechNet에서 꽤 긴 설명을 찾을 수 있습니다.여기. 제가 개인적으로 경험한 문제는 다음과 같은 작은 조각으로 인해 발생했습니다.

DNS 클라이언트 서비스는 어떤 서버가 이름 쿼리에 더 빨리 응답하는지 추적하고 서버가 이름 쿼리에 얼마나 빨리 응답하는지에 따라 목록에서 서버를 위아래로 이동합니다.

DHCP 설정에는 5개의 DNS 서버가 나열되어 있었고 마지막 2개는 로컬 ISP였습니다. 나머지 세 대는 매우 오래된 컴퓨터였으며 로컬 ISP의 서버를 백업으로 추가하는 것이 가장 좋을 것이라고 생각했습니다. 누가 더 빨랐을까요?

서버가 내부 이름 확인을 중단하면 재미가 없습니다.

이로 인해 나는 협박을 하게 되었다.리눅스로 전환하세요.

2) 그렇다면 왜 명령 프롬프트에서 작동했습니까?

나는 당신이 를 사용했다고 가정 nslookup합니다.언제나달리 지정하지 않는 한 DNS 목록의 첫 번째 서버를 사용하십시오. 항상 개인 DNS 서버를 확인했기 때문에 항상 작동했습니다. Internet Explorer를 열고 실제로 이름 확인을 시도하면 동작이 달라집니다(위의 긴 순서도에 지정된 대로).

정말 혼란스럽지 않나요? 나는 일주일 동안 이름 확인 문제를 추적하면서 왜 항상 작동하는지 궁금해했지만 nslookup어떤 이유로 Lotus Notes는 메일 서버를 찾을 수 없었습니다. Wireshark를 사용하여 실제로 이름이 어떻게 확인되는지 확인하기 전까지는 그 사실을 알지 못했습니다.

3) 어떻게 고칠 수 있나요?

전달자로 DNS 서버를 구성하여 특정 문제를 해결할 수 있습니다. 개인 DNS 서버가 이름을 찾을 수 없으면 사용자가 지정한 서버로 요청을 전달합니다. 이렇게 하면 DNS 서버만 사용할 수 있으며, 나타나는 이상한 동작을 방지할 수 있습니다.

답변2

두 개의 DNS 서버를 설정하는 대신 개인 DNS만 사용한 다음 해당 DNS 서버가 외부 DNS로 알지 못하는 결과를 확인하도록 하는 것입니다. 이를 구성하는 정확한 방법은 개인 DNS 서버에 따라 다르지만 기본 DNS 서버가 사용 중이라고 생각할 때 대체 DNS 서버가 사용될 수 있으므로 보다 균일한 결과를 제공해야 합니다.

관련 정보