在討論 DNS 的穩定性時,都會要求要把網域名稱多設幾個 NS RR,而且要在不同的網路上。不過很多人都認為有兩台機器就好了,如果連外斷掉那麼服務本來就會中斷,沒有影響。
這是錯誤的觀念,尤其是電子郵件。
台大計中停電維修六個小時,而負責 ntu.edu.tw 的三台 DNS 主機都連不上。這使得 ntu.edu.tw 以及 *.ntu.edu.tw 的信件的進出都造成嚴重的異常。
進入的部份,我從交大寄信到 user@ntu.edu.tw
時會直接收到退信 (錯誤是 "Domain not found" 這類的訊息),但如果台大的 DNS 主機有請其他單位幫忙做 DNS Slave,那麼這封信會被交大的郵件系統暫時存放,而不會直接退給發信人。
出來的部份,假設有教職員在家使用 HiNet,以 user@ntu.edu.tw
的來源發信到交大,交大的郵件系統在檢查信件來源時,就會以 "Domain not found" 的訊息拒絕掉,這個問題一樣可以透過其他單位的 DNS Slave 解決。
這次影響的單位最少包括了:*.ntu.edu.tw (三台 DNS 主機都不通) 及 *.tp.edu.tw (三台 DNS 主機都在台大下游而不通)。
雖然 cschen 一直推這件事情,不過直到這兩年我才看到交大與工研院國網中心合作,雙方互相幫對方做 nctu.edu.tw 與 nchc.org.tw 的 DNS Slave。
Gmail 使用的 ns{1,2,3,4}.google.com 看起來很接近 (216.239.{32,34,36,38}.10),也是四個完全不同網段,這點可以從美國的主機 traceroute 走的路線看出來似乎有幾個是不同國家。
等台大網路恢復後,寄封信請他們改善這部份...
Update:工研院改成國網... :/
Update:我才寄了十分鐘,台大計中的 madeline 就回信說他們會朝這個方向改進,nice job :)
呃.....我記得 nchc 是國高,工研院是 itri.....
改了 Orz
TTL 設長一點, secondary MX 也多設幾台, 長期抗戰吧~
你又搞錯方向了,MX 多設個兩百台在整個斷網時還是會遇到一樣問題。TTL 設的再長,如果對方的 DNS server 是第一次查,連不到一樣會被退信...
wiki.yichi.org 打不开了啊。。。
其實苦主單位還有 *.ilc.edu.tw
如果你 primary DNS server 爛掉然後 TTL 設不夠長的話, secondary DNS server 設在兩百個不同的網路上也是一樣找不到資料啊 @_@
你沒事放著 primary DNS 爛掉一個禮拜幹什麼?
有時候爛掉不能修又不能換也是不得已的... 話說某個資本額不到一千萬的超小公司 DNS servers 在世界好幾個地方... :p