DNS 플러싱은 무엇을합니까?


12

온라인 상태를 확인하기 위해 DNS를 플러시하도록 지시하는 웹 사이트를 방문했습니다. 이것이 무엇을하며 왜 웹 사이트를 표시하는 데 도움이됩니까?

dns 

DNS는 호스트 이름을 IP로 또는 그 반대로 변환합니다. DNS 설정을 비우면 DNS 설정이 잘못되었거나 오래된 경우 클라이언트에서 DNS 설정이 비워지고 다시 채워집니다.
OMG Ponies

"DNS 캐시 플러시 "가 더 명확합니다.
user1686

답변:


10

DNS는 도메인 이름 시스템 입니다. DNS 서버는 도메인 이름 (예 example.com:)을 IP 주소 (이 경우 192.0.32.10)로 변환합니다. 이름과 숫자의 매핑은 수시로 변경 될 수 있습니다.

컴퓨터에는 DNS 항목 기록이있어 매번 조회 할 수 있습니다. 이것은 DNS 캐시입니다. 원하는 경우 언제든지 해당 레코드를 삭제 (캐시 플러시) 할 수 있습니다.

웹 사이트가 최근에 서버를 이동 한 경우 이전 웹 사이트가 잠시 동안 표시 될 수 있습니다. DNS 캐시를 비우면 도움이 될 수 있습니다.


웹 사이트를 다른 서버로 옮길 경우 모든 사용자에게 캐시를 플러시하도록 지시해야합니까? 이전 매핑이 오래되었고 캐시에서 해당 항목을 업데이트해야한다는 것을 자동으로 알 수있는 방법이 없습니까?
사용자

1
@완충기. DNS 항목에는 TTL (Time To Live)이 있으며 그 후에 만료됩니다. 일반적인 TTL은 24 시간과 48 시간이지만 5 분 정도로 낮았습니다. 최대 값은 3 개월이라고 생각합니다. 서버를 이동하기 전에 TTL을 줄이고 전환 한 다음 다시 늘리는 것이 이상적입니다. 이렇게하면 전송 기간 (다른 사람들이 다른 서버를 볼 수있는 기간)이 짧습니다.
TRiG

4

주소 표시 줄에 URL을 입력 할 때마다 해당 IP 주소를 가져와 웹 서버 (모든 종류의 서버 일 수 있음)와 통신합니다. 동일한 URL을 반복적으로 사용하면 IP가 너무 자주 변경되지 않으므로 매번 해당 IP 주소를 가져 오는 데 네트워크 리소스가 낭비됩니다.

따라서 컴퓨터는 도메인 이름과 IP의 조합을 로컬 캐시에 저장하여 동일한 도메인 이름 (URL)을 사용할 때마다 DNS (Domain Name Server)에서 가져 오는 것을 방지합니다.

또한 "시간 초과"라는 중요한 정보를 보유하고 있는데,이 시간 초과시 컴퓨터가 DNS에서 조합을 다시 가져 와서 로컬 캐시에 다시 저장하면 IP 및 도메인 이름 조합의 유효 시간에 대해 알려줍니다.

Dns 플러싱은 사용자가 캐시의 모든 항목을 수동으로 무효화 할 수있는 메커니즘이므로 컴퓨터는 필요할 때마다 로컬 캐시에 저장하고 새 조합을 다시 가져옵니다.


안전합니까? DNS 캐시를 지우면 어떻게됩니까? 내 캐시는 캐시가 어디에 있습니까?
Green

@Green Windows에서 "ipconfig / displaydns"명령을 사용하여 모든 DNS 매핑을 나열 할 수 있습니다. Linux의 경우 DNS 캐싱은 기본적으로 OS 수준에서 활성화되어 있지 않습니다. "nscd가 설치되어 있으면 / usr / sbin / nscd -g
Vishwanath gowda k

1

이전 버전의 Windows를 사용하고 있지 않다면 웹 사이트 운영자가 혼란에 빠졌음을 의미합니다. 그들은 서비스를 새로운 IP 주소로 옮겼습니다. 이를 수행하기 전에 DNS의 이름 데이터에 대한 시간 초과를 약간 줄여서 "이 맵핑은 다음 날에 유효합니다"대신 "이 맵핑은 5 분 동안 유효합니다"와 같이 말해야합니다. 이 작업은 사전에 수행해야합니다.

예외는 이전 Windows 릴리스 (XP를 통해? 잊어 버림)가 하루보다 짧은 시간 초과를 무시하고 이전 매핑을 기억한다는 것입니다. 캐시가 시간 초과 기간에 대해 "하한"을 갖는 것이 일반적이지만 일반적으로 "24 시간"이 아니라 "5 분"정도입니다. 즉, IP 주소를 이동하는 웹 사이트는 실제로 해당 시간 동안 두 개의 다른 IP 주소에서 사용할 수 있어야합니다.

웹 사이트 운영자를위한 솔루션은 기존 IP 주소에서 전달 "프록시"를 실행하여 트래픽을 새 IP 주소로 며칠 동안 전달하여 어리석게 지나친 캐싱의 슬픈 현실을 처리 할 시간을 제공하는 것입니다.

어느 쪽이든, 문제는 당신에게 구멍을 뚫었습니다. 그러나 대규모 전문 사이트에서 요청하지 않는 이유가 있습니다. 문제 자체를 해결하는 것입니다.


0

시스템은 명명 된 사이트의 IP 주소를 보유합니다 ... ipconfig / flushdns를 수행하면 시스템은 이름의 캐시를 ip 항목으로 지우고 연결된 DNS 서버에서 다시로드합니다.


0

DNS 플러시는 응용 프로그램을 이전 서버에서 새 서버로 마이그레이션 할 때 중요합니다. 서버 / 애플리케이션에는 VIP / Wide IP를 가리키는 바인딩이 있습니다. 네트워크 팀이 변경 한 몇 가지 문제에 직면했습니다. 즉, 와이드 IP를 측면에서 변경하지만 DNS 플러시를 수행하지 않았습니다. 응용 프로그램 팀이 DNS를 확인하여 유효성을 검사하면 로컬 캐시에 캐시되기 때문에 트래픽이 여전히 이전 서버로 라우팅됩니다. 새 서버에서 DNS 플러시를 수행 할 수 있으며 다음과 같은 구문을 사용하여 명령 프롬프트에서 NSLOOKUP 명령을 사용하여 확인할 수 있습니다.-구문-NSLOOKUP

현재 DNS가 가리키는 IP 주소를 제공합니다.


안녕하세요. SU에 오신 것을 환영합니다. 답변 주셔서 감사합니다. 그러나 이미 4 가지 답변이있는 다소 오래된 질문에 대답하고 있습니다. 귀하의 답변에 가치를 더하기 위해 게시물을 편집하고 몇 가지 예 (예 : nslookup)로 정교화하는 것이 좋습니다.
Edward
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.