房屋裝潢設計新選擇!多年經驗
細膩打造,,價格合理
殺價網搬家優質選!專業服務品質,細心保護物品
精緻包裝服務,提供南北長途搬家

首頁  •  j2h 論壇 • 程式設計討論     • 

DNS 將 Domain 分成內外部不同解析(view)

房東:阿姆
發表時間:2007-02-26


DNS 的設定, 最好將內外部的 DNS 分開,

不然被人 dig 一下, 就跟把整個架構都公開也一樣意思了....

正好看到一篇不錯的文章, 來介紹 DNS View setting.

DNS-如何將1個 domain 分成內部與外部做不同的解析

前言:
其實寫這篇文章的起源是在 news 看到了一篇詢問如何將1個 domain 分成內部與外部的問題,而剛好一位網友 "網中人" 提出了在 bind 9 裡面有新增 "view" 的功能,而這個功能就剛好符合上述的需求,而翻了翻市面上的書對 "view" 的說明並不多,但是我覺得這個功能對於一般企業的應用應該蠻廣泛的,所以參考了 http://sysadmin.oreilly.com/news/views_0501.html 而實作出來,因為不想收到廣告信,恕不公開 email,如果文章有錯誤的話請使用 ICQ:19268670 或是 MSN: [email protected] 聯絡。

作者:Aman Chang Linux 新聞網

設定:
其實 “view” 的設定不會很困難,只是要注意以後要給內外部一起查詢的 domain zone 都要分開設定比較好。

廢話不多說,以下就針對 view 的設定來說明

/etc/named.conf 的設定檔


[root@localhost internal]# cat /etc/named.conf
// generated by named-bootconf.pl
options {
directory "/var/named"; //Domain Zone 檔案放的目錄
/*
* 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;
};

// a caching only nameserver config
//
//Also you can define IP range like as below
acl "lan" { //設定內部要查詢DNS的IP
192.168.0.0/16; 10.10.0.0/16; localhost;
};

controls {
inet 127.0.0.1 allow { localhost; } keys { rndckey; };
};

view "internal" { //定義給內部查詢的設定檔
match-clients { lan; }; //上面有定義lan的IP range
zone "linuxnews.idv.tw" {
type master;
file "internal/db.linuxnews.idv.tw";
allow-transfer { none; };
};
zone "." IN {
type hint;
file "named.ca";
};
zone "localhost" IN {
type master;
file "localhost.zone";
allow-update { none; };
};
zone "0.0.127.in-addr.arpa" IN {
type master;
file "named.local";
allow-update { none; };
};
};

view "external" { //定義給外部查詢的設定擋
match-clients { any; }; //any不需要額外定義
zone "linuxnews.idv.tw" {
type master;
file "external/db.linuxnews.idv.tw";
allow-transfer { none; };
};
zone "." IN {
type hint;
file "named.ca";
};
zone "localhost" IN {
type master;
file "localhost.zone";
allow-update { none; };
};
zone "0.0.127.in-addr.arpa" IN {
type master;
file "named.local";
allow-update { none; };
};
};

/var/named/external/db.linuxnews.idv.tw 設定給外部查詢的檔案內容

[root@localhost root]# cat /var/named/external/db.linuxnews.idv.tw
$TTL 86400 ; 1 hour
linuxnews.idv.tw. IN SOA ns1.linuxnews.idv.tw. root.linuxnews.idv.tw. (
10816 ; serial
900 ; refresh (15 minutes)
600 ; retry (10 minutes)
86400 ; expire (1 day)
3600 ; minimum (1 hour)
)
NS ns1.linuxnews.idv.tw.
MX 10 mail.linuxnews.idv.tw.
ns1 A 192.168.113.253
hello A 168.95.1.1 //定義hello.linuxnews.idv.tw
/var/named/internal/db.linuxnews.idv.tw 設定給內部查詢的檔案內容


[root@localhost named]# cat /var/named/internal/db.linuxnews.idv.tw
$TTL 86400 ; 1 hour
linuxnews.idv.tw. IN SOA ns1.linuxnews.idv.tw. root.linuxnews.idv.tw. (
10816 ; serial
900 ; refresh (15 minutes)
600 ; retry (10 minutes)
86400 ; expire (1 day)
3600 ; minimum (1 hour)
)
NS ns1.linuxnews.idv.tw.
MX 10 mail.linuxnews.idv.tw.
ns1 A 192.168.113.253
hello A 192.168.113.230 //定義hello.linuxnews.idv.tw
OK,這樣就已經設定好了,還有要注意的就是要將 named.ca、localhost.zone、named.local copy 到相對的目錄去,日後若有要增加的 domain 就必須加在 "view" 的區段裡面,不然的話就會有錯誤的訊息。


Apr 22 11:46:41 localhost named[4064]: loading configuration from '/etc/named.conf'
Apr 22 11:46:41 localhost named[4064]: /etc/named.conf:43: when using 'view' statements, all zones must be in views
Apr 22 11:46:41 localhost named[4064]: loading configuration: failure
Apr 22 11:46:41 localhost named[4064]: exiting (due to fatal error)

由上面的範例可以看出來內部與外部對 hello.linuxnews.idv.tw 的查詢會有不同的解析。



  • 贊助網站       

    廣利不動產-新板特區指名度最高、值得您信賴的好房仲
    您的托付,廣利用心為您服務
    廣利不動產-板橋在地生根最實在--新板特區指名度最高、值得您信賴的好房仲
    完整房訊,房屋、店面熱門精選物件,廣利不動產 優質仲介,房屋租賃、買賣資訊透明,交易真安心!

  • 1 樓住戶:小優
    發表時間:2007-02-26

    BIND9 - Master / Slave DNS 基本設定備忘
    named.conf 重點內容
    Slave 主機向 Master 要求傳送 Zone File 的時機
    Zone File 檔案結構
    named.conf 重點內容

    Master:

    vi /etc/named.conf

    acl "trusted" { 127.0.0.1; 192.168.1.0/24; };

    options {

    allow-recursion { trusted; }; //避免變成 Open DNS
    allow-transfer { none; }; //預設禁止 Zone Transfer
    notify no; //預設不通知轄區 DNS Server

    };

    zone "mydomain.com" in {

    type master;
    file "mydomain.com.zone";
    allow-transfer { slave.ip.address; };
    notify yes;

    };

    zone "1.168.192.in-addr.arpa" in {

    type master;
    file "192.168.1.zone";
    allow-transfer { slave.ip.address; };
    notify yes;

    };

    Slave:

    vi /etc/named.conf

    zone "mydomain.com" in {

    type slave;
    file "slave/mydomain.com.zone";
    masters { master.ip.address; };

    };

    zone "1.168.192.in-addr.arpa" in {

    type slave;
    file "slave/192.168.1.zone";
    masters { master.ip.address; };

    };

    Slave 主機向 Master 要求傳送 Zone File 的時機

    master 主機上的 named 啟動、Reload 時, 發送 dns notify 信號通知 NS 主機 (除本身外) 比對 zone file serial, 且 master serial 大於 slave serial 時.
    slave 主機上的 named 啟動時, 發現 master serial 大於 slave serial, 或無 zone file 存在時.
    slave 主機每隔 refresh 時間, 向 master 查詢 zone file serial, 發現 master serial 大於 slave serial 時.
    Zone File 檔案結構

    Forward Lookup / 正解

    $TTL 1W
    @ IN SOA master_dns_fqdn zone_admin (
    2006092001 ;serial
    2D ;refresh
    4H ;retry
    6W ;expire
    1W ) ;TTL

    IN NS master_dns_fqdn
    IN NS slave_dns_fqdn
    IN MX 10 mail_server_fqdn

    master_dns_hostname IN A ip_address
    slave_dns_hostname IN A ip_address
    mail_server_hostname IN A ip_address
    some_hostname IN CNAME another_hostname_has_A_record

    Reverse Lookup / 反解

    $TTL 1W
    @ IN SOA master_dns_fqdn zone_admin (
    2006092001 ;serial
    2D ;refresh
    4H ;retry
    6W ;expire
    1W ) ;TTL

    IN NS master_dns_fqdn

    entry_in_*.in-addr.arpa IN PTR some_host_fqdn

    ex1. zone: 20.10.150.in-addr.arpa
    in the zone file: 1 IN PTR ms1.mydomain.com
    retult: ms1.mydomain.com=150.10.20.1
    ex2. zone: 10.150.in-addr.arpa
    in the zone file: 2.20 IN PTR ms1.mydomain.com
    retult: ms1.mydomain.com=150.10.20.2

    Ref: Microsoft Support - Description of DNS Reverse Lookups

    Root Domain Zone File: ftp://ftp.internic.net/domain/named.root





     共 1 人回應  選擇頁數 【第1 頁】 

    姓名:
    佈告內容:
    其他選項: