권장 DNS SOA 레코드 TTL 기본값?


43

현재 stackoverflow.com에 대해 DNS SOA 레코드 가 다음으로 설정되어 있습니다.

    primary name server = ns1.p19.dynect.net
    serial  = 2009090909
    refresh = 3600 (1 hour)
    retry   = 600 (10 mins)
    expire  = 604800 (7 days)
    default TTL = 60 (1 min)

하루에 1M에 가까운 페이지 뷰를 수신하는 stackoverflow.com과 같은 사이트에 대한 새로 고침 / 재시도 / 만료 / 기본 TTL에 대한 더 나은 선택이 있습니까?

답변:


48

사이트의 실제 트래픽 속도는 관련이 없습니다.

이러한 모든 설정 ( "기본 TTL"제외)은 도메인의 보조 DNS 서버가 업데이트를 위해 주 DNS 서버를 폴링하는 빈도에만 영향을줍니다.

귀하의 영역이 드물게 변경되는 경우 (내 생각에 따라) "새로 고침"에 대한 귀하의 가치는 현재 낮은 편입니다. 일반적으로 NOTIFY2 차 노드가 영역 파일을 즉시 가져 오는 업데이트가있을 때마다 1 차 서버는 각 2 차 서버에 메시지를 보내야 합니다. 요즘 "새로 고침 / 다시 시도 / 만료"메커니즘은 그에 대한 역전 일뿐입니다.

어쨌든 DNS 공급자가 DNS의 기본 제공 동기화 메커니즘을 사용하지 않고 변경 사항을 모든 관련 DNS 서버와 자동으로 자동 동기화하므로 실제 값과 관련이 없을 수 있습니다.

"기본 TTL"필드는 더 이상 말하는 것을 의미하지 않습니다. 실제 기본 TTL은 $TTL지시문 과 함께 (적어도 BIND로) 설정되며 각 레코드에 명시 적 TTL이 설정되지 않은 경우에만 사용됩니다.

"default TTL"필드의 의미는 RFC 2308 에서 변경되었으며 실제로 네거티브 캐싱에 대한 힌트입니다 . 서버가 부정적인 응답을 반환하면 (예 : NXDOMAIN또는 NODATA) 원격 서버가 다시 시도하기 전에 대기해야하는 시간입니다.

현재 값은 낮은쪽에 약간 있지만 그대로 두는 데 아무런 해가 없습니다. 어쨌든 종종 무시됩니다.


"기본 TTL"값은 음수 캐싱 TTL이 SOA 레코드 자체의 TTL보다 작은 경우에만 사용됩니다. 자세한 내용 5 - Caching Negative Answers은 참조 된 RFC를 참조하십시오. 자세한 정보는 여기 : serverfault.com/questions/426807/…
htaccess

8

흥미롭게도 dyn guys (DNS 호스트)의 DNS 진단 페이지 ..

http://dnscog.com/report/stackoverflow.com

.. MINTTL에서 다음과 같이 말합니다.

SOA MINTTL 확인

SOA minttl 값은 60 초이며 일반적인 DNS 사용에 권장되는 최소값보다 낮습니다. DNS 영역을 정기적으로 변경하거나 DNS 기반로드 밸런싱 서비스를 사용하는 경우 여기에 작은 값이 있습니다.

추천

SOA 민트 틀 필드에 1800에서 86400 사이의 가치를 두는 것을 고려하십시오.

그리고 이것은 SOA 새로 고침에

SOA 새로 고침 확인

SOA 새로 고침 필드는 3600 초로 권장 최소값보다 낮습니다. 새로 고침 값이 낮 으면 특히 0 값을 사용하는 경우 불필요한 쿼리 볼륨 또는 예기치 않은 동작이 발생할 수 있습니다. 정기적으로 DNS 영역을 변경하거나 DNS 기반로드 밸런싱 서비스를 사용하는 경우 더 작은 값을 사용하면 변경 사항이 최대한 빨리 전파됩니다.

추천

SOA 새로 고침 필드에 7200과 10800 사이의 가치를 두는 것이 좋습니다.

http://www.intodns.com/stackoverflow.com의 다른 진단 페이지에는 실제 힌트가 없습니다.


12
그들의 민트 추천은 가짜입니다. 그 분야는 10 년 이상 그 의미를 갖지 못했습니다. 새로 고침에 대한 설명도 의심됩니다. 새로 고침 간격 은 1 차-> 2 차 슬레이브 에만 영향을 미치며 사용자와 같은 작은 영역에서는이 값이 문제를 일으키지 않습니다. 또한 DNS 공급자가 대역 외 동기화 메커니즘을 사용하는 경우 실제 값은 약합니다. (NB : 나는 생계를 위해 DNS를한다)
Alnitak

4
추신 누군가가 실제로 이것을 자신의 설명과 가치에 대한 추천으로 주었으면 나는 -1 투표를합니다. 당신이 다른 사람을 인용 할 때 나는 ;-)하지 않을 것이다
Alnitak

2
명확히하기 위해 SOA 최소 TTL 필드에는 존재하지 않는 일부 리소스에 대한 영역에 대한 요청 인 부정 요청 을 캐시하는 데 사용되는 TTL 값이 저장 됩니다. 그들의 설명은 사실이지만 부정적 반응에 대해서만 명확하지 않습니다. 둘째, SOA 새로 고침은 일반적인 DNS 쿼리에서 사용되지 않으며 보조 (슬레이브) 네임 서버가 기본 (마스터) 네임 서버에서 자신을 업데이트하는 상황에서만 사용됩니다. 따라서 해당 분야에 대한 설명은 사실이 아닙니다.
thomasrutter

3
실제로,이 기록이 온라인에서 의미하는 바에 대한 잘못된 정보가 너무 많아 실제로 사실을 찾기가 어렵습니다. 요약하면 SOA 레코드의 대부분의 값은 실제 DNS 쿼리에는 의미가 없으며 기본 네임 서버에서 보조 네임 서버로 내부 영역 전송 메커니즘에 사용하기위한 것입니다. MinTTL은 예외이지만 표준에서 제안한 것처럼 최소 TTL도 "기본"TTL도 아니며 부정적인 결과를 캐싱하기 위해 제안 된 TTL도 아닙니다. 더 중요한 것은 A 및 NS와 같은 레코드에 대한 개별 TTL입니다.
thomasrutter 2018 년

4
intodns / dnscog / dnsstuff 등의 유형 사이트는 모두 동일한 잘못된 정보를 복사합니다. 많은 텍스트를 복사하여 붙여 넣을 수 있습니다. MXToolbox ( mxtoolbox.com/DNSCheck.aspx ) 가보다 안정적인 리소스라는 것을 알았습니다 . 예를 들어, SOA MINTTL 값들의 설명은 여기가 정확 - 희귀 품질.
thomasrutter 2016 년

8

Pingdom에서 : http://dnscheck.pingdom.com/

SOA TTL  recommended >= 3600.
SOA refresh  recommended >= 14400.
SOA retry  recommended >= 3600.
SOA expire  recommended >= 604800.
SOA minimum  recommended between 300 and 86400.
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.