除非貴司是很特殊的大型網路機構,
不然人家都已經跑來問了, 才說大陸ip要找大陸DNS, 這樣很離譜喔!
authoritative DNS server 分佈兩岸是應該的, 但內容應該一致,
Bind9 搭配 view 的應用,
可以因應查詢來源而有不同回答,
比方 www.xxx.com 分別在台灣中國設立兩個網站,
當查詢來源是中國IP, 就回應 www.xxx.com 指向中國網站IP,
查詢來源非中國IP, 就回應 www.xxx.com 指向台灣網站IP
如需再精確界定國家/地理區域, 可再搭 GeoIP.
謝謝您的指教讓我有了方向,感謝大大
ayu大大,請容許我再向您請教一個問題,依照您的說法那是在同一個域名下,做解析不同的IP到不同的網站上去,那我想請教假設我有兩台DNS,www.123.com和一個我向自己的網域申請的subdomain,www.xxx.123.com,那我想將來自中國的ip由www.xxx.123.com做解析到中國網站上去,來自台灣ip由www.123.com解析到台灣網站上去,請問view可以做到這種方式嗎。
意思是說中國來的所有ip由www.xxx.123.com解析,台灣來的ip由www.123.com做解析服務,請問我該如何做。
123.com 和 xxx.123.com 是由同一組(兩台)authoritative dns server負責解析? 還是各管各的?
www.123.com www.xxx.123.com 應該是主機名而不是網域名吧? 我不很確定你的意思.
ayu大大真的抱歉,我已經知道問題點了是我觀念有極大的錯誤,我的方向是錯誤的請容許我重新解釋,我爬了很多文章大部分都是如下所述: 假設我們管理 foo.com.tw 這個 zone,區域網路網段 IP 是 192.168.2.0/255.255.255.0,若是希望來自 192.168.2.0/24 網段發出詢問 www.foo.com.tw 紀錄,解析成 192.168.2.168 這個 IP;而其他外部 IP(例如:4.5.6.7 這個 IP)來查詢 www.foo.com.tw 則是回應成公開 IP(例如:211.21.50.85)。
以往要達到上述功能,都是架設兩台 Name Server 來達成,一台對內解析、一台對外解析,至於為何需要內外解析不同, 假如說更講究的再 master/slave 配置一下,總共就需要管理四台 Name Server!
依您上面解釋所述:只需master/slave就可以做到不同來源IP解析到不同網站,有些文章上說到需要四台是什麼意思,有需要到這麼多台嗎?
Bind view的功能, 最常應用在, 內外網查詢結果不同的需求上, 也就是您所舉的例子;
但! 並不是一定要內網設一台對內解析, 外網設一台對外解析,
如果是這樣, 那何必需要view來區隔呢?
有了view的應用,是可以併在一台內處理的.
master/slave只是角色/管理上的不同,管理者知道就好,沒必要讓外人知道,
我以前服務的大型網路機構, master是躲在某處不現身的, 外界永遠只能攻擊到slave.
(這部份你看看就好先別深入)
任何正式服務的正反解網域, 應該要有至少兩台authoritative dns server負責解析,
除了達到負載平衡, 最重要的用意是容錯, 不至於故障/斷電/斷線時導致網域
完全無法解析, 也因此, 這兩台最好能佈署在不同電路/網段.
(這是理想狀況,但對小企業而言有困難)
可實務上, 錯誤設定的情況相當高, 常未蒙其利先受其害,
比方說, 很多誤以為slave(secondary)是備援機, 平常不用開機, 查詢會先去找master(primary),這是嚴重的錯誤觀念!
有時我寧可他們先徹底管好一台就好.
十幾年來, 網路資安技術要求愈來愈高, 可相關的訓練卻是愈來愈少啊!
感謝大大分享經驗與指教,我懂您的意思了。謝謝您^^感恩!!
include "/var/named/GeoIP.acl";
view "china-hk" {
match-clients { CN;HK; };
zone "123.com" { file "cnhk-123-com"; (略) };
zone "." (略);
zone "1.168.192.in-addr.arpa" (略);
};
view "other" {
zone "123.com" { file "default-123-com"; (略) };
zone "." (略);
zone "1.168.192.in-addr.arpa" (略);
};