Linux下bind9進階視圖的應用 眾所周知網通和電信之間互相的訪問速度是很慢的,但是像新浪這樣的大型網路公司無論你是在哪用的什麼方式接入的網路,訪問起來速度都很快,那麼是怎麼實現的呢!首先想到的會是電信和網通各放一些內容完全相同的伺服器,那麼怎樣才能讓電信的使用者自己去訪問電信的伺服器,網通的使用者訪問網通的伺服器呢,這就要用到我們今天所說的bind9高就視圖。 www.2cto.com 首先開啟Linux系統,檢測系統是否安裝了bind9軟體包,執行如下命令: rpm -q bind 斷行符號, 如果安裝了,我們會看到有 bind-9.2.1-16 的提示;如果未安裝,則是: package bind is not installed 這時我們需要從linux的安裝光碟片裡面找到bind9的安裝包並進行安裝。 執行以下命令: vi /etc/named.conf /開啟bind9的主設定檔 找到 options { directory "/var/named"; /* * If there is a firewall between you and nameservers you want * to talk to, you might need to uncomment the query-source * directive below. Previous versions of BIND always asked * questions using port 53, but BIND 8.1 uses an unprivileged * port by default. */ // query-source address * port 53; }; 將游標移到下面的大括弧這裡,按o鍵插入一行,寫入以下語句: www.2cto.com acl "dianxin" { 10.0.0.0/8; 11.0.0.0/8; }; #聲明電信的IP位址區段 acl "wangtong" { 20.0.0.0/8; 21.0.0.0/8; }; #聲明網通的IP位址區段以下所以內容均寫在controls { inet 127.0.0.1 allow { localhost; } keys { rndckey; };};下面 view "dianxin" { match-clients { dianxin; }; #聲明只允許電信使用者查詢 recursion yes #是否允許遞迴查詢}; notify yes #是否允許主/副DNS同步資料 zone "." IN { type hint; file "named.ca"; }; #當DNS失效時自動查詢13台根 zone "abc.com" IN { type master; #設定為主DNS file "abc.com.dx.zone" #設定abc.com網域名稱的記錄文名 }; }; view "wangtong" { match-clients { wangtong; }; #聲明只允許網通使用者查詢 recursion yes notify yes zone "." IN { type hint; file "named.ca"; }; zone "abc.com" IN { type master; file "abc.com.wt.zone" }; };做完上面的工作以後按esc,然後輸入 :w! 和 :q! 進行儲存退出。進入到 /var/named檔案夾(如果做了chroot,則路徑為 /var/named/chroot/var/named),將裡面的localhost.zone檔案複製到目前的目錄並命名為abc.com.dx.zone 和 abc.com.wt.zone,開啟並編輯在裡面根據需要建立相應的記錄即可,記錄解析到的位址區段依次為10.0.0.0網段或者11.0.0.0網段和20.0.0.0網段或者21.0.0.0網段。儲存退出後執行一次 service named reload ,對DNS服務進行重新整理。之後找兩台位址區段分別為10.0.0.0或者11.0.0.0和20.0.0.0或者21.0.0.0網段的機器用nslookup命令對其測試,如果測試出來得到的IP地址和主機的IP地址在同一個網段,則證明視圖生效,如果不在同一個網段則說明視圖配置的有問題!要讓視圖生效,前提是在記錄檔案中的解析一定要和視圖中聲明的IP位址區段相對應! # 號後面的是注釋,寫設定檔時注意裡面的分號和大括弧,一個都不能少!