什么是 DNS
DNS 全稱是 Domain Name System,大意是域名解析系統(tǒng),它的職責(zé)是把域名翻譯成一個(gè)一個(gè)可以識別的 IP 供不同的計(jì)算機(jī)設(shè)備連接。
linux 有關(guān) DNS 解析的配置和文件
linux 中有三個(gè)文件是關(guān)于 dns 解析的:
- /etc/hosts 記錄 hostname 對應(yīng)的ip地址
- /etc/resolv.conf 設(shè)置DNS服務(wù)器的ip地址
- /etc/host.conf 指定域名解析的順序(是從本地的hosts文件解析還是從DNS解析)
- /etc/hosts 的存在是早期網(wǎng)絡(luò)并不是特別發(fā)達(dá),僅僅在 hosts 中保存主機(jī)名和 ip 地址的對應(yīng)關(guān)系即可滿足需要,隨著網(wǎng)絡(luò)的發(fā)展逐漸出現(xiàn)分布式 DNS 服務(wù),但是 /etc/hosts 形式保留下來了。
/etc/resolv.conf 是配置DNS 域名和 ip 地址的,網(wǎng)上有很多資料可以參考一下。
一個(gè)域名是如何被解析的
How the Domain Name System (DNS) Works這篇大致解釋了域名被解析的過程,基本可以分為:
- 向根域名服務(wù)請求頂級域名所在所在域名服務(wù)
- 向頂級域名服務(wù)請求二級域名服務(wù)
- 向二級域名服務(wù)請求具體的 ip 地址
簡易DNS配置案例(基于CentOs7)
服務(wù)器端
1.安裝bind
yum install bind
2.修改/etc/named.conf配置文件
vim /etc/named.conf
options {
listen-on port 53 { any; }; //開啟監(jiān)聽端口53,接受任意IP連接
listen-on-v6 port 53 { ::1; }; //支持IP V6
directory "/var/named"; //所有的正向反向區(qū)域文件都在這個(gè)目錄下創(chuàng)建
dump-file "/var/named/data/cache_dump.db";
statistics-file "/var/named/data/named_stats.txt";
memstatistics-file "/var/named/data/named_mem_stats.txt";
allow-query { 0.0.0.0/0; }; //允許任意IP查詢
recursion yes;
dnssec-enable yes;
dnssec-validation yes;
dnssec-lookaside auto;
/* Path to ISC DLV key */
bindkeys-file "/etc/named.iscdlv.key";
managed-keys-directory "/var/named/dynamic";
};
logging {
channel default_debug {
file "data/named.run";
severity dynamic;
};
};
zone "." IN {
type hint;
file "named.ca";
};
include "/etc/named.rfc1912.zones"; //主要配置文件
include "/etc/named.root.key";
3.修改/etc/named.rfc1912.zones文件,添加duiyi.com的正向區(qū)域
vim /etc/ named.rfc1912.zones
zone "localhost.localdomain" IN {
type master;
file "named.localhost";
allow-update { none; };
};
zone "localhost" IN {
type master;
file "named.localhost";
allow-update { none; };
};
zone "1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa" IN {
type master;
file "named.loopback";
allow-update { none; };
};
zone "1.0.0.127.in-addr.arpa" IN {
type master;
file "named.loopback";
allow-update { none; };
};
zone "0.in-addr.arpa" IN {
type master;
file "named.empty";
allow-update { none; };
};
//duiyi.com的正向區(qū)域
zone "duiyi.com" IN {
type master;
file "duiyi.com.zone";
allow-update { none; };
};
4.創(chuàng)建正向區(qū)域資源文件
vim /var/named/duiyi.com.zone
$TTL 1D
@ IN SOA duiyi.com. rname.invalid. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS @
A 127.0.0.1
AAAA ::1
www IN A 192.168.81.1
mail IN A 192.168.81.2
ftp IN A 192.168.81.3
5.啟動(dòng)named服務(wù)
systemctl start named
6.開機(jī)自啟動(dòng)
systemctl enable named
## 客戶端
操作系統(tǒng):windows和linux都可以
IP地址:能夠ping通DNS服務(wù)器的IP(192.168.81.133)都可以,
作用:測試DNS服務(wù)器是否正常工作。
1.修改DNS:

2.ping 服務(wù)端ip(192.168.81.133),測試能否訪問服務(wù)器

3.使用nslookup命令測試三個(gè)DNS解析能否成功

如圖所示則表示DNS正向解析成功
Linux作為客戶端測試:
1. 安裝bind-utils包,以便能使用nslookup、dig和host工具
yum install bind-utils
2. 修改DNS配置使用我們的DNS服務(wù)器
vim /etc/resolv.conf
nameserver 192.168.81.133
nameserver 114.114.114.114
nameserver 8.8.8.8
3. 正向解析測試,使用nslookup命令(與windows測試一致)
nslookup
總結(jié)
以上所述是小編給大家介紹的Linux域名服務(wù)DNS配置方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
如果你覺得本文對你有幫助,歡迎轉(zhuǎn)載,煩請注明出處,謝謝!