目前 Linux 操作系統十分火爆,所以很多朋友希望了解一下Linux下虛擬域名的實現過程。下面就基於目前比較流行的RedHat來討論一下。一、DNS 服務器 的設置 我們知道互聯網網是基於TCP/IP協議的,要進行通信必須獲得對方的IP地址,這是通過DNS服務器來實現的。
目前
Linux操作系統十分火爆,所以很多朋友希望了解一下Linux下虛擬域名的實現過程。下面就基於目前比較流行的RedHat來討論一下。一、DNS
服務器的設置
我們知道互聯網網是基於TCP/IP協議的,要進行通信必須獲得對方的IP地址,這是通過DNS服務器來實現的。因此要想實現虛擬域名首先應當令DNS服務器接受該虛擬域名,即把它映射到指定的IP地址上。因為我們靠Web服務器來區分域名,所以這個IP地址自然應當是Web服務器所管理的。
RedHat6.0操作系統中捆綁有BIND DNS服務器。它的域名配置文件是"/etc/named.conf",一般情況下,域配置文件放在"/var/named"目錄下面。
例1、named.conf文件的配置:
zone "domain.com" {
type master;
file "domain.com";
};
zone "0.10.10.in-addr.arpa" {
type master;
file "10.10.0";
};
該例子說明"domain.com"的域配置文件是"/var/named/domain.com",反向域的配置文件是"/var/named/10.10.0"。domain.com文件負責把DNS域名映射為IP地址。
例2、domain.com文件配置:
@ IN SOA dns.domain.com. hostmaster.dns.domain.com. (
1998111003 ; serial
3600 ; refresh
900 ; retry
1209600 ; expire
43200 ; default_ttl
)
@ IN MX 10 dns.domain.com.
@ IN NS dns.domain.com.
@ IN A 10.10.0.1
www IN A 10.10.0.1
假定要增加的域名是aaa.domain.com,想要指到www.domain.com,DNS服務中應增加一個別名記錄,可寫成:
aaa IN CNAME www.domain.com.
如果需要配置大量的虛擬域名,domain.com文件要很大,而且也相當麻煩。我們可以使用符號 "*" ,即在 domain.com 文件中加入:
* IN CNAME www.domain.com.
這樣它就把所有沒給出設置的以domain.com結尾的記錄全部轉到www.domain.com去了,不管是aaa.domain.com還是bbb.domain.com。這不會影響已有的記錄。配置好DNS服務器後應該重新啟動守護進程named:
[root@domain /root]# /etc/rc.d/init.d/named restart