linux初學者-DNS配置篇
linux初學者-DNS配置篇
DNS在之前的網絡管理篇已經做過介紹,下文將敘述DNS在學習工作中的一些配置以及應用。
1、高速緩存DNS
一臺主機通過DNS服務器詢問域名解析IP是需要一定的時間的,如果再次詢問這個域名,同樣需要之前的時間,這無疑延長了解析時間以及增加了服務器的負擔,如果DNS服務器能夠記住並且分享詢問過的域名,那麽其他主機在詢問這個域名時就會快很多。這就是高速緩存DNS。
配置高速緩存,需要在DNS服務器上做如下配置:
a、"yum install bind -y",安裝named服務,DNS的高速緩存服務就是由這個服務提供的。安裝完成後輸入"systemctl start named"開啟服務。
b、配置防火墻。輸入"firewall-config",在"Permanent"下開啟"public"裏的"dns",使得防火墻允許dns服務。完成後輸入"firewall-cmd --list-all"查看是否開啟。
c、"vim /etc/resolv.conf"。輸入"nameserver DNSip",配置DNS。
d、輸入"vim /etc/named.conf"。配置named服務的配置文件,將第11行改為"listen-on port 53 { any; };",這是將所有網絡的53號端口打開。將第17行改為"allow-query { any; };",這是允許所有人詢問。在第18行添加"forwarders {172.25.254.250; };",這是在DNS服務器不知道域名解析的時候詢問這個IP的主機,這個IP的主機必須聯網。完成後重啟服務。
在另一臺主機上做測試,需先將這臺主機的DNS設置為DNS服務器的IP。然後輸入兩次"dig 域名"來測試兩次域名解析所需要的時間,如下圖所示,輸入"dig www.taobao.com",第一次解析所用時間為"145 msec",而第二次用"0 msec",由此可見,高速緩存能記錄詢問過的域名解析,在重復詢問時可以大大減少反應時間。
2、DNS的正向解析
DNS的正向解析是詢問域名,然後解析出IP。在做正向解析時,需要註釋掉之前配置的"/etc/named.conf"下的第18行。
DNS的正向解析的配置如下所示:
a、"vim /etc/named.rfc1912.zones"。在這個配置文件的第24行後,輸入以下內容:
zone "we.com" IN {
type master;
file "we.com.zone";
allow-update { none; };
};
其中,"we.com"為需要解析的域名,可以自己編寫,"we.com.zone"為記錄域名解析IP的文件,名字可以自己編寫。
b、"cp -p /var/named/named.localhost /var/named/we.com.zone"。為"we.com.zone"文件復制模版,權限也必須復制。
c、"vim /var/named/we.com.zone"。編輯這個文件,內容如下圖所示。其中"root.we.com."為管理員郵箱,"NS"下的"A"代表正向解析,"music"和"www"代表域名,設置後域名為"music.we.com"和"www.we.com",後面輸入對應的IP。完成後重啟named服務。
配置完成後,用另一臺主機進行測試,例如,輸入"dig www.we.com"和"dig music.we.com"後即可看到之前配置的域名對應的IP。
在配置解析IP的文件"we.com.zone"也可以加入"CANME",即別名記錄,就是將一個域名指向另一個域名。如下圖,將"wps.we.com"的域名指向"music.we.com",重啟服務後在測試主機上輸入"dig wps.we.com"就會出現這個指向域名以及IP。
DNS配置還可以使用輪詢技術來達到負載均衡,即一個域名對應多個IP,這個可以減輕主機在被訪問時的負擔。在"wps.we.com"中再編輯一個同樣域名對應不同IP即可,如下圖所示,重啟服務後,查看這個域名就會出現兩個對應IP。
3、DNS的反向解析
DNS的反向解析就是詢問IP,解析對應的域名。反向解析的配置如下:
a、"vim /etc/named.rfc1912.zones"。在這個文件中編輯以下內容,如下圖所示:
zone "254.25.172.in-addr.arpa" IN {
type master;
file "we.com.ptr";
allow-update { none; };
};
其中的"254.25.172"為反向解析的IP網段,這個網絡必須反著寫,即這個網段是"172.25.254",則要寫成"254.25.172"。"we.com.ptr",為記錄IP對應的域名解析的文件,名字可以自己編寫。
b、"cp -p /var/named/named.loopback /var/named/we.com.ptr"。復制"named.loopback"的模版,並復制權限。
c、"vim var/named/we.com.ptr"。在文件中編入如下圖所示內容,"202"和"101"為詢問的IP,"PTR"代表反向解析,後面的為解析的域名。需要註意的是,反向解析和正向解析是兩種不同的解析,IP和域名不必要對應。完成後重啟服務。
用測試主機輸入"dig -x 172.25.254.202"和"dig -x 172.25.254.102"對IP進行解析,則可以看到對應的域名。
4、DNS的雙向解析
在DNS的使用中,有時候需要局域網內和網外的IP詢問DNS域名解析不同的IP,這時就需要用到雙向解析了,雙向解析就是使局域網內解析域名得到和局域網外解析域名不同的IP。
DNS雙向解析的步驟如下所示:
a、"vim /etc/named.conf"。使用"/*"註釋掉下圖所示內容。
b、"vim /etc/named.conf"。在其中編寫下圖中第61行至第83行內容:
view localnet {
match-clients { 172.25.254.2; };
zone "." IN {
type hint;
file "named.ca";
};
include "/etc/named.rfc1912.zones";
};
view any {
match-clients { any; };
zone "." IN {
type hint;
file "named.ca";
};
include "/etc/named.rfc1913.zones";
};
第61行至第71行編寫的是局域網內主機的配置,為了測試方便將局域網主機寫為"172.25.254.102",‘include "/etc/named.rfc1912.zones"‘,表示上面網段的主機在詢問域名時訪問"/etc/named.rfc1912.zones"這個文件。
第73行至第83行編寫的是其他網段配置,‘include "/etc/named.rfc1913.zones"‘表示其他網段的主機詢問域名時訪問"/etc/named.rfc1913.zones"這個文件。
c、"cp -p /etc/named.rfc1912.zones /etc/named.rfc1913.zones" 。
d、"vim /etc/named.rfc1913.zones"。在其中編輯下圖內容,只需要把第27行的"file "we.com.zone""改為其他文件。
e、"cp -p /var/named/we.com.zone /var/named/we.com.any"。
f、"vim /var/named/we.com.any"。在這個文件中設置其他網段的主機在訪問時DNS服務器想要反應給其的IP。例如下圖所示,此IP只是為了舉例方便編輯,無關合理性。
上述配置完成後,在不同網段的主機訪問時就會訪問不同的文件,從而得到不同的IP。如上述設置後,測試時,在"172.25.254.102"主機上測試"www.we.com",顯示IP為"172.25.254.101"。在其他IP的主機上測試時,顯示IP為"1.1.1.2"。
linux初學者-DNS配置篇