iT邦幫忙

0

最近DNS常常解析到錯的外部IP

大家好

DNS是 server 2012 R2,最近user常常反應某一個外部網址常常解析到錯的IP,因為那個外部網址有時候會換IP,導致無法連線,但是如果在外部網路的話就沒有問題,
這樣表示內部的DNS解析有問題。

這個外部網址是一個CNAME record,打開DNS管理介面的cache loopup,
依照這個record找到這個IP,發現他的TTL竟然是10幾個小時。

如果去問8.8.8.8,發現這這個IP的TTL只有30秒,實在差太多了,
難怪公司的DNS都會問到錯的IP。

每次遇到這個問題就是手動去DNS管理介面清除cache,可是最近太常發生了,實在很煩。
DNS server我有設定轉寄站,會去問168.95.1.1。

請教大家我該怎麼處理這個問題呢? 謝謝

echochio iT邦高手 1 級 ‧ 2019-03-14 19:57:48 檢舉
寫排程清cache ...
我都是這樣處理的
CalvinKuo iT邦大師 7 級 ‧ 2019-03-15 09:08:14 檢舉
當然也可以把轉寄站改成8.8.8.8....
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中
1
Ray
iT邦大神 1 級 ‧ 2019-03-15 01:03:37

請試試改這個 Regkey:

在 Server 端:

Path: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\DNS\Parameters 
Key: MaxCacheTtl
Type: REG_DWORD

在 Client 端:

Path: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Dnscache\Parameters 
Key: MaxCacheTtl
Type: REG_DWORD

如果這個參數不存在的話, 請自建一個, 然後設一個比較小的值,
例如: 60 秒

它的預設值是 0x15180 = 86400 秒 = 1 天,
更糟的是, 他會覆蓋原本 DNS 來源的 TTL,
不管原始設多短, 都會被他給蓋掉, 所以我痛恨 MS DNS...

感協雷神大大 今天就遇到 MS DNS TTL 太長的問題
但我只是單一事件,所以這次只需要清除快取就好

gundanz iT邦新手 5 級 ‧ 2019-03-15 10:50:11 檢舉

你好,

請問我要怎麼把這個指令做成一個.reg,然後透過AD的群組原則讓client端執行呢?

Ray iT邦大神 1 級 ‧ 2019-03-16 01:16:21 檢舉
0
ayu
iT邦好手 2 級 ‧ 2019-03-15 05:23:55

很簡單!
你把forwarders(轉送168.95.1.1這部份)給取消掉!
讓你的DNS(cache-only?)server, 老實地從 root-server 開始查起, 遵循原本就該走的正常流程就好.

有的Public DNS為了某些考量, 會刻意忽略原本的TTL, 使得它們的cache時間超乎預期.
( Bind須稍改源碼再編譯, Unbound直接用 cache-min-ttl, 都可以做得到, MS-DNS則如R大神講的 )
godaddy已有很好的解釋
DNS 傳播時間會受哪些因素影響?
裡面提到--有些 ISP 會略過 TTL 設定,且每隔二至三天才更新其快取記錄
這就是造成你所提狀況的原因.

關於forwarders, 很多教學都會說可指定到上游或ISP提供的DNS服務器,就連一些UNIX bind套件裡的example/comment也都還有, 說是可以取得DNS cache的好處, 卻從未提及可能的壞處.
時至今日, 恐怕有很大部份網管也都這麼做!
但在步入21世紀以後, 頻寬已逐漸足夠, 沒有必要去設這個,
soho或中小單位用用無妨, 然而每秒查詢量上萬的大單位還這麼做, 就很不妥當!
就是說同樣的設定, 不同的環境/時空背景, 未必都適用.

看更多先前的回應...收起先前的回應...
gundanz iT邦新手 5 級 ‧ 2019-03-15 11:13:23 檢舉

你好,
我想請教一個問題,如果www.abc.com設定CNAME指到xyz.com,
TTL設定24小時。xyz.com的A record,TTL設定30秒。
那DNS cache這個IP的時間到底是24小時還是30秒呢?

ayu iT邦好手 2 級 ‧ 2019-03-15 12:57:12 檢舉

30秒啊!
www.abc.com. 86400 CNAME xyz.com.
指的是www.abc.com對應到xyz.com這件事的TTL是24h, 瞭解?

Ray iT邦大神 1 級 ‧ 2019-03-16 01:14:09 檢舉

/images/emoticon/emoticon75.gif

ayu iT邦好手 2 級 ‧ 2019-03-16 04:52:44 檢舉

反過來, 如果是這樣呢?
www.abc.com. 20 CNAME xyz.com.
windows dns client 對於這筆的有效時間會是20秒

0
yesongow
iT邦大師 1 級 ‧ 2019-03-15 09:43:06

某一個外部網址(host.domain_a)常常解析到錯的IP

你會設定forward嗎?
使用nslookup查出該domain_a的NS主機IP(xx.yy.zz.gg)

並在你的DNS主機上,設定forward (查詢domain_a,就去問xx.yy.zz.gg)
這樣就不用管host.domain_a的新IP是否變動囉!

gundanz iT邦新手 5 級 ‧ 2019-03-15 10:56:31 檢舉

這招我試過,但是他們的NS主機不給查詢..

yesongow iT邦大師 1 級 ‧ 2019-03-16 01:47:37 檢舉

怎麼可能?
DNS Server不給查?
列出它的domain name,好嗎?

我要發表回答

立即登入回答