2014-12-27 30 views
1

我有一個帶有5個網絡接口(3個WLAN和兩個有線局域網)的覆盆子pi。 另外,我建立了一個BIND 9服務器。現在我想給PI(主機名爲「DEV」)提供每個接口的不同IP地址。BIND9根據子網返回不同的IP地址

例如:當來自網絡192.168.2.0/24的客戶端查找主機名「DEV.home.lan」時,他應該得到「DEV.home.lan」的IP爲192.168.2.100的響應。 當192.168.10.0/24網絡的客戶端查找該主機名時,IP應該是192.168.10.1。

據我所知,這可以使用視圖來完成。我無法讓它工作,所以我有一些問題。 Q1:爲什麼我從192.168.2.0/24和192.168.10.0/24網絡獲得「DEV.home.lan」的IP地址「192.168.2.100」?

的配置文件設置如下:1.

/etc/bin/named.conf

include "/etc/bind/named.conf.options"; 
include "/etc/bind/named.conf.local"; 
#include "/etc/bind/named.conf.default-zones"; 

我不得不註釋掉用默認區域的最後一行的文件,否則我得到的錯誤/etc/bind/named.conf.default-zones:2: when using 'view' statements, all zones must be in views(我想這是一個默認配置文件,但我可以在必要時提供)。

Q2:文件中的區域究竟是什麼?我需要他們嗎?

2.

/etc/bind/named.conf.options

options { 
    directory "/var/cache/bind"; 
    forwarders { 
     8.8.8.8; 
     8.8.4.4; 
    }; 
    dnssec-validation no; 
    empty-zones-enable yes; 
    auth-nxdomain no; # conform to RFC1035 
    listen-on-v6 { any; }; 
}; 

我不認爲錯誤是在該文件中。

3. /etc/bind/named.conf.local

view "local" { 
    match-clients { any; }; 
    zone "home.lan" IN { 
     type master; 
     file "/etc/bind/db.home.lan"; 
    }; 
}; 
view "ext" { 
    match-clients { 192.168.2.0/24;}; 
    zone "2.168.192.in-addr.arpa" { 
     type master; 
     file "/etc/bind/db.rev.2.168.192.in-addr.arpa"; 
    }; 
}; 
view "wlan0" { 
    match-clients { 192.168.3.0/24;}; 
    zone "3.168.192.in-addr.arpa" { 
     type master; 
     file "/etc/bind/db.rev.3.168.192.in-addr.arpa"; 
    }; 
}; 
view "wlan00" { 
    match-clients {192.168.4.0/24;}; 
    zone "4.168.192.in-addr.arpa" { 
     type master; 
     file "/etc/bind/db.rev.4.168.192.in-addr.arpa"; 
    }; 
}; 
view "wlan01" { 
    match-clients {192.168.5.0/24;}; 
    zone "5.168.192.in-addr.arpa" { 
     type master; 
     file "/etc/bind/db.rev.5.168.192.in-addr.arpa"; 
    }; 
}; 
view "int" { 
    match-clients {192.168.10.0/24;}; 
    zone "10.168.192.in-addr.arpa" { 
     type master; 
     file "/etc/bind/db.rev.10.168.192.in-addr.arpa"; 
    }; 
}; 

4. /etc/bind/db.home.lan

home.lan. IN SOA DEV.home.lan. hostmaster.home.lan. (
    2013120101 ; serial 
    8H ; refresh 
    4H ; retry 
    4W ; expire 
    1D ; minimum 
) 
home.lan. IN NS DEV.home.lan. 
home.lan. IN MX 10 DEV.home.lan. 
; Set the address for localhost.home.lan 
localhost IN A 127.0.0.1 
; Set the hostnames in alphabetical order 
DEV IN A 192.168.2.100 
router IN A 192.168.2.1 
proxy IN CNAME DEV.home.lan. 
wpad IN CNAME DEV.home.lan. 

最後,/etc/bind/db.rev.10.168.192.in-addr.arpa

; IP Address-to-Host DNS Pointers for the 192.168.10 subnet 
@ IN SOA DEV.home.lan. hostmaster.home.lan. (
    2013120101 ; serial 
    8H ; refresh 
    4H ; retry 
    4W ; expire 
    1D ; minimum 
) 
; define the authoritative name server 
      IN NS DEV.home.lan. 
; our hosts, in numeric order 
1   IN PTR router.home.lan. 
1   IN PTR DEV.home.lan. 

謝謝!

回答

0
view "local" { 
    match-clients { any; }; 
    zone "home.lan" IN { 
     type master; 
     file "/etc/bind/db.home.lan"; 
    }; 
}; 

認沽在配置文件的底部這部分