2012-01-12 9 views
0
다음과 같이

가 현재 내 네트워크 설정은 다음과 같습니다기본 및 보조 DNS, 하나 개의 서버

1 서버 3 개 이더넷 카드를.

eth0 - ISP1 eth1 - ISP2 eth2 - 로컬 네트워크.

기본 및 보조 DNS를 구성하는 올바른 방법은 무엇입니까? 주석 사용.

현재 구성 : NS1 :

.domain.lv:10.10.10.10:ns.domain.lv 
.domain.lv:20.20.20.20:ns2.domain.lv 
@domain.lv:10.10.10.10:mail.didzis.lv:10:256:: 
@domain.lv:20.20.20.20:mail.domain.lv:20:256:: 
+www.domain.lv:10.10.10.10 
동일한 머신상에서 실행 2 tinydns 서비스 각각이 서로 다른 IP에 구성 (NS1 = eth0를, NS2는 = eth1에)는

각 DNS 구성 모두 레코드를 포함

NS2 :

.domain.lv:20.20.20.20:ns.domain.lv 
.domain.lv:10.10.10.10:ns2.domain.lv 
@domain.lv:10.10.10.10:mail.didzis.lv:10:256:: 
@domain.lv:20.20.20.20:mail.domain.lv:20:256:: 
+www.domain.lv:20.20.20.20 

제 2 링크보다 경우 백업 같은 첫 번째 실패되고 그 반대의 경우도 마찬가지입니다. eth1이 다운되고 www가 해결되면이 구성은 실패합니다.

고마워요!

답변

1

이러한 종류의 구성은 작동하지만 문제가있을 수 있습니다. 당신이하고 싶은 것은 "www.domain.lv"의 TTL을 만드는 것입니다. 정말로 낮은 기록. TTL은 응답을 캐시 할 수있는 시간을 다른 DNS 서버에 알려줍니다. 당신이 그것을 낮추면, 더 빠른 고객은 당신의 ISP 중 하나가 고장 났을 때 알게 될 것입니다.하지만 그것을 낮추면 IP 주소를 더 자주 다시 검사해야하므로 시간이 걸릴 것입니다. 합리적인 타협이 300 초 (5 분) 일지 모르지만 페일 오버가 15 분이 걸리는 경우 900 초와 같이 길게 만들 것을 제안합니다.

그런데 나는 tinydns에서 레코드의 TTL을 설정하는 방법을 모르겠습니다. 나는 결코 그것을 사용하지 못했다. 솔직하게 말하면, zonefiles의 성적표가 무엇이든 간결하고 무서운 구문을 찾는다.

두 ISP가 모두 작동하면 모두 정상적으로 작동합니다.

이 솔루션의 주요 단점은 ISP 중 하나가 다운되었을 때 무엇이 ​​있더라도 DNS 확인 지연이 발생한다는 것입니다. 행운이있는 고객은 아직 응답중인 네임 서버를 쿼리하고 응답을 위해 작동하는 IP 주소를 다시 가져옵니다. 불행한 클라이언트는 먼저 이름 서버에 질의를 시도합니다. 이것은 작동하지 않습니다. 그들은 결국 아직 작동중인 IP 주소로 전환하여 작동하는 IP 주소를 얻지 만 이러한 일이 발생하기까지는 몇 초 정도 지연 될 수 있습니다.