DNS域名服務及常用國內DNS服務器地址


DNS域名服務

DNS服務器分類

緩存域名服務器

  1. 也稱為高速緩存服務器
  2. 通過向其他域名服務器查詢獲得域名 -> IP 地址記錄
  3. 將域名查詢結果緩存到本地,提高重復查詢時的速度

主域名服務器

  1. 特定 DNS 區域的官方服務器,具有唯一性
  2. 負責維護該區域內所有域名 -> IP 地址的映射記錄

從域名服務器

  1. 也稱為輔助域名服務器
  2. 其維護的域名 -> IP 地址記錄來源於主域名服務器

搭建DNS服務器

安裝軟件

[root@wpt ~]# yum install bind bind-chroot bind-utils -y

配置文件介紹

使用BIND軟件構建域名服務是,主要涉及兩種類型的配置文件:主配置文件和區域數據文件。其中,主配置文件用於設置named服務的全局選項、注冊區域及訪問控制等各種運行參數;區域數據文件用於保存 DNS 解析記錄的數據文件(正向或反向記錄)。
BIND配置文件保存在兩個位置:
/etc/named.conf BIND服務主配置文件
/var/named/ zone文件(域的dns信息)
如果安裝了bind-chroot,BIND會被封裝到一個偽根目錄內,原先的文件配置文件的路徑位置變為:
/var/named/chroot/etc/named.conf ----BIND服務主配置文件
/var/named/chroot/var/named/ ---------zone文件

復制配置相關文件


[root@wpt ~]# cp -rv /usr/share/doc/bind-9.11.4/sample/etc/* /var/named/chroot/etc/
[root@wpt ~]# cp -rv /usr/share/doc/bind-9.11.4/sample/var/* /var/named/chroot/var/




bind-chroot安裝好之后不會有預制的配置文件,但是在BIND的文檔文件夾內(/usr/share/doc/bind-9.11.4),BIND為我們提供了配置文件模板,我們可以直接拷貝過來:
# 拷貝bind相關文件,准備 bind chroot 環境
cp -R /usr/share/doc/bind-*/sample/var/named/* /var/named/chroot/var/named/

# 將 /etc/named.conf 拷貝到 bind chroot目錄
# -p 復制后目標文件保留源文件的屬性 (包括所有者、所屬組、權限和時間)
cp -p /etc/named.conf /var/named/chroot/etc/named.conf



# 在 bind chroot 的目錄中創建相關文件
touch /var/named/chroot/var/named/data/cache_dump.db
touch /var/named/chroot/var/named/data/named_stats.txt
touch /var/named/chroot/var/named/data/named_mem_stats.txt
touch /var/named/chroot/var/named/data/named.run
mkdir /var/named/chroot/var/named/dynamic

# 修改文件屬主和屬組
chown -R named:named /var/named/chroot/var/named

# 啟動服務
systemctl start named-chroot

構建緩存域名服務器

案例介紹

  • 緩存域名服務器的IP地址為192.168.142.128。
  • ​ 局域網內的PC機將首選DNS服務器設為192.168.142.128。
  • 緩存域名服務器能夠訪問Internet中的其他DNS服務器。
  • ​ 負責處理局域網PC機的DNS解析請求,並緩存查詢結果。

基本步驟:

​ 1.建立named.conf主配置文件,通過根域或者轉發器機制指定解析源;
​ 2.確認建立named.ca根區域數據文件,若使用轉發器機制則無需此步驟;
​ 3.啟動named服務;
​ 4.驗證緩存域名服務器;

實現方案

### 1.修改主配置文件
[root@wpt ~]# vim /var/named/chroot/etc/named.conf

# 指定數據文件的存放目錄 默認無需修改
directory 	"/var/named";

# 指定服務器監聽的地址和端口
listen-on port 53       { 127.0.0.1; 192.168.142.128; };

# 指定允許內網網段地址主機可以查詢授權區域數據
allow-query					{ 192.168.142.0/24; };

# 哪些主機查詢非授權區域記錄時,為其做遞歸
allow-query-cache       { 192.168.142.0/24; };

# 開啟遞歸 默認為開啟
# 如果你要建立一個 授權域名服務器 服務器, 那么不要開啟 recursion(遞歸) 功能。
# 如果你要建立一個 遞歸 DNS 服務器, 那么需要開啟recursion 功能。
# 如果你的遞歸DNS服務器有公網IP地址, 你必須開啟訪問控制功能,
# 只有那些合法用戶才可以發詢問. 如果不這么做的話,那么你的服
# 服務就會受到DNS 放大攻擊。實現BCP38將有效抵御這類攻擊。
recursion yes;

########################使用轉發器#################################
# 如果不使用根區域,也可以選擇設置轉發器,即可以指向另外一個DNS服務器。
# forward 可以是first,也可以是only
# forward first設置優先使用forwarders DNS服務器做域名解析,如果查詢不到再使用本地DNS服務器做域名解析。
# forward only設置只使用forwarders DNS服務器做域名解析,如果查詢不到則返回DNS客戶端查詢失敗。

# 在 options{}; 中加入以下內容
# forward only;
# forwarders {8.8.8.8};
##################################################################

### 2. 配置根區域 這樣服務器不知道域名記錄時,就去找根DNS服務器 在區域文件目錄中必須存在"/var/named/named.ca"這個文件,里面記錄了根DNS服務器的地址(共13個)
cat /var/named/chroot/var/named/named.ca | grep -v '^;'|grep -v '^$'

### 3.檢查配置文件語法
named-checkconf /var/named/chroot/etc/named.conf

### 180錯誤解決
dnssec-keygen -a HMAC-MD5 -b 128 -n HOST "test_key"
[root@localhost ~]# dnssec-keygen -a HMAC-MD5 -b 128 -n HOST "test_key"
Ktest_key.+157+09104
[root@localhost ~]# cat Ktest_key.+157+09104.key
test_key. IN KEY 512 3 157 XkByzMnhtuSq4IItAzKb3w==
## 復制XkByzMnhtuSq4IItAzKb3w== 然后修改文件key 大概在180行左右

# 4 重啟服務
systemctl restart named-chroot

## 測試前把雙方的防火牆都關掉,或者在服務器端配置dns服務
[root@wpt ~]# firewall-cmd --add-service=dns
## 測試時把客戶端的dns地址解析改為服務端的,文件在/etc/resolv.conf下 


###############################################################
##################客戶端驗證是否可以解析#########################
###############################################################
# 5 安裝客戶端命令行工具
yum install bind-utils

# 6 配置首選DNS為192.168.215.3
cp /etc/resolv.conf /etc/resolv.conf.bak
vim /etc/resolv.conf
# 修改以下內容
nameserver 192.168.215.3

# 7 解析域名
# 第一台客戶端解析會慢一些,第二台客戶端解析相同域名會很快,因為有了緩存。
nslookup www.baidu.com

#eg:
root@experiment2 ~# nslookup www.baidu.com
Server:		192.168.142.128
Address:	192.168.142.128#53

Non-authoritative answer:
www.baidu.com	canonical name = www.a.shifen.com.
Name:	www.a.shifen.com
Address: 39.156.66.18
Name:	www.a.shifen.com
Address: 39.156.66.14

構建主域名服務器

案例介紹

  • 負責abc.com域的解析
  • 網站服務器 www.abc.com,IP地址為192.168.142.10
  • 郵件服務器 mail.abc.com,IP地址為192.168.142.20
  • 在線視頻服務器 video.abc.com,IP地址為192.168.142.30
  • 主域名服務器 ns1.abc.com ,IP地址為192.168.142.3
  • 從域名服務器 ns2.abc.com,IP地址為192.168.142.5

基本步驟

  1. 確認本機網絡地址、主機映射、默認DNS服務器地址。
  2. 建立主配置文件named.conf。
  3. 建立正、反向區域數據文件。
  4. 啟動named服務或重載配置。
  5. 驗證主域名服務器。

實現方案

### 1 確認本機網絡地址、主機映射、DNS服務器地址
# 為了提高域名解析效率,將兩個DNS服務器的地址映射直接寫入到/etc/hosts文件中
vim /etc/hosts
192.168.142.128	ns1.abc.com		ns1
192.168.142.6	ns2.abc.com		ns2

# 指定兩個DNS服務器的地址為首選和備份DNS
vim /etc/resolv.conf

# 寫入以下內容
# search 定義域名的搜索列表
nameserver 192.168.142.128
nameserver 192.168.142.6

### 2 修改主配置文件
vim /var/named/chroot/etc/named.conf
# 在 zone "." IN 前面加入以下內容

# 一個zone關鍵字定義一個域區

# type類型有三種,它們分別是master,slave和hint它們的含義分別是:
# master:表示定義的是主域名服務器
# slave [sleɪv]:表示定義的是輔助域名服務器
# hint [hɪnt]暗示:表示是互聯網中根域名服務器

# file 指定具體存放DNS記錄的文件

# allow-transfer [trænsˈfɜːr , ˈtrænsfɜːr]指定哪些主機可以從服務器上接收區域傳輸,未指定將允許傳說到所有的主機
zone "abc.com" IN {
        type master;
        file "abc.com.zone";
        allow-transfer {192.168.142.6;};
};
# 定義一個IP為192.168.215.*的反向域區 
zone "142.168.192.in-addr.arpa" {
        type master;
        file "192.168.142.arpa.zone";
        allow-transfer {192.168.142.6;};
};

### 3 建立正向區域數據文件
cp -p /var/named/named.localhost /var/named/chroot/var/named/abc.com.zone
vim /var/named/chroot/var/named/abc.com.zone
# 修改以下內容
# “@”表示當前的DNS區域名,相當於“abc.com.” 
# $TTL(Time To Live,生存時間)記錄
# SOA(Start Of Authority[əˈθɔːrəti],授權信息開始)記錄
# 分號“;” 開始的部分表示注釋信息
# NS 域名服務器(Name Server):記錄當前區域的DNS服務器的主機地址
# MX 郵件交換(Mail Exchange[ɪksˈtʃeɪndʒ]):記錄當前區域的郵件服務器的主機地址,數字10表示優先級。
# A 地址(Address):記錄正向解析條目,只用在正向解析區域中
# CNAME 別名(Canonical[kəˈnɑːnɪkl] Name):記錄某一個正向解析條目的其他名稱
# PTR 指針(Point)記錄,只用在反向解析區域中
$TTL 1D
@       IN SOA  abc.com. admin.abc.com. (
                                2020112901      ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
@       IN      NS      ns1.abc.com.
        IN      NS      ns2.abc.com.
                MX      10      mail.abc.com.
www     IN      A       192.168.142.10
mail    IN      A       192.168.142.20
video   IN      A       192.168.142.30
ns1     IN      A       192.168.142.128
ns2     IN      A       192.168.142.6
# 驗證區域數據文件
# named-checkzone zonename filename
named-checkzone abc.com /var/named/chroot/var/named/abc.com.zone

### 4 建立反向區域數據文件
cd /var/named/chroot/var/named/
cp -p abc.com.zone 192.168.142.arpa.zone
vim 192.168.142.arpa.zone
$TTL 1D
@       IN SOA  abc.com. admin.abc.com. (
                                2020112901      ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
@       IN      NS      ns1.abc.com.
        IN      NS      ns2.abc.com.
10      IN      PTR www.abc.com.
20      IN      PTR mail.abc.com.
30      IN      PTR study.abc.com.
128     IN      PTR ns1.abc.com.
6       IN      PTR ns2.abc.com.
# 驗證區域數據文件
named-checkzone 215.168.192.in-addr.arpa 192.168.142.arpa.zone
# 5 重啟服務
systemctl restart named-chroot


###############################################################
##################客戶端驗證是否可以解析#########################
###############################################################
[root@wpt named]# nslookup
> www.abc.com
Server:		192.168.142.128
Address:	192.168.142.128#53

Name:	www.abc.com
Address: 192.168.142.10
> mail.abc.com
Server:		192.168.142.128
Address:	192.168.142.128#53

Name:	mail.abc.com
Address: 192.168.142.20
> 192.168.142.30
30.142.168.192.in-addr.arpa	name = study.abc.com.

構建從域名服務器

為了降低主域名服務器的壓力,可以構建從域名服務器,不僅可以負載分擔,還可以起到備份作用。

基本步驟

  1. 確認本機網絡地址、主機映射、默認DNS服務器地址。
  2. 建立主配置文件named.conf。
  3. 啟動named服務,查看區域數據文件是否下載成功。
  4. 驗證從域名服務器。

實現方案

# 1 安裝
yum install bind bind-chroot bind-utils

# 2 啟動服務
systemctl start named-chroot.service

# 3 確認本機網絡地址、主機映射、DNS服務器地址
# 為了提高域名解析效率,將兩個DNS服務器的地址映射直接寫入到/etc/hosts文件中
vim /etc/hosts
192.168.142.128	ns1.abc.com		ns1
192.168.142.6	ns2.abc.com		ns2

# 指定兩個DNS服務器的地址為首選和備份DNS
vim /etc/resolv.conf

# 寫入以下內容
# search 定義域名的搜索列表
nameserver 192.168.142.128
nameserver 192.168.142.6

# 4 建立主配置文件
cd /var/named/chroot/
vim /etc/named.conf
# 修改如下配置
listen-on port 53	{ 127.0.0.1; 192.168.142.6; };
zone "abc.com" IN {
        type slave;
        file "slaves/abc.com.zone";
        masters {192.168.142.128;};
};
zone "142.168.192.in-addr.arpa" IN {
        type slave;
        file "slaves/192.168.142.arpa.zone";
        masters {192.168.142.128;};
};

# 5 關閉兩個機器的防火牆
systemctl stop firewalld

# 6 重啟服務
systemctl restart named-chroot

# 7 查看是否同步成功
ll /var/named/chroot/var/named/slaves/

-rw-r--r--. 1 named named 362 Nov 23 22:35 abc.com.zone
# 8 使用從域名服務器進行驗證
root@experiment2 /v/n/chroot# nslookup
> www.abc.com
Server:		192.168.142.6
Address:	192.168.142.6#53

Name:	www.abc.com
Address: 192.168.142.20

nslookup命令詳解

### nslookup命令詳解
nslookup -qt=type domain [dns-server]

其中,type可以是以下這些類型:

A 地址記錄
AAAA 地址記錄
AFSDB Andrew文件系統數據庫服務器記錄
ATMA ATM地址記錄
CNAME 別名記錄
HINFO 硬件配置記錄,包括CPU、操作系統信息
ISDN 域名對應的ISDN號碼
MB 存放指定郵箱的服務器
MG 郵件組記錄
MINFO 郵件組和郵箱的信息記錄
MR 改名的郵箱記錄
MX 郵件服務器記錄
NS 名字服務器記錄
PTR 反向記錄
RP 負責人記錄
RT 路由穿透記錄
SRV TCP服務器信息記錄
TXT 域名對應的文本信息
X25 域名對應的X.25地址記錄
###例如
[root@localhost ~]# nslookup -qt=mx baidu.com 8.8.8.8

國內常用的DNS服務器

114DNS

114DNS開啟DNS高可靠服務時代的大幕。114DNS開始同時為公眾提供高速、穩定、可信的DNS遞歸解析服務;為網站提供強大抗攻擊能力的權威智能DNS解析服務;為ISP提供可靠的DNS災備及外包服務,作為國內用戶量最大的老牌DNS,訪問速度快,各地區設有節點,負載各運營商用戶,DNS防劫持能力,自然也是名列前茅。
DNS 服務器 IP 地址:

  1. 首選:114.114.114.114
  2. 備選:114.114.114.115

2017公共DNS服務器地址評估—DNS推薦

DNSPod DNS

DNSPod創始於2006年3月,是中國最大的第三方域名服務商,全球排名第四位。DNSPod是國內最早提供免費智能DNS產品的網站,致力於為各類網站提供高質量的電信、網通、教育網雙線或者三線智能DNS免費解析,作為114DNS競爭對手之一,無論是訪問速度,還是各地區節點覆蓋率以及防劫持能力都是頂級的。
DNS 服務器 IP 地址:

  1. 首選:119.29.29.29
  2. 備選:182.254.116.116

2017公共DNS服務器地址評估—DNS推薦

阿里 DNS

阿里公共DNS是阿里巴巴集團推出的DNS遞歸解析系統,作為國內最大的互聯網基礎服務提供商,阿里巴巴在繼承多年優秀技術的基礎上,通過提供性能優異的公共DNS服務,為廣大互聯網用戶提供最可靠的面向互聯網用戶提供“快速”、“穩定”、“智能”的免費DNS遞歸解析服務。
DNS 服務器 IP 地址:

  1. 首選:223.5.5.5
  2. 備選:223.6.6.6

2017公共DNS服務器地址評估—DNS推薦

百度 DNS

百度開放DNS主要面向企業,旨在集結行業力量,以開放的方式共同打造一個全球最大的、穩定的、高效的、純凈的公共DNS平台,作為核心基礎設施服務於整個互聯網,百度DNS擁有一流基礎設施和強大技術實力,為用戶提供免費的DNS服務。
DNS 服務器 IP 地址:

  1. 首選:180.76.76.76
  2. 備選:暫未公布

2017公共DNS服務器地址評估—DNS推薦

CNNIC SDNS

SDNS已在全球部署了多個節點,提供智能的、彈性的平台支持能力,可隨用戶的需求而變化。每節點建設在運營商4A、5A級機房,每節點配備服務器集群,多線路出口,節點之間相互冗余備份。通過多線路,確保每一次查詢的全局路由最優化,最大程度上使用戶解析就近響應。
DNS 服務器 IP 地址:

  1. 首選:1.2.4.8
  2. 備選:202.98.0.68

2017公共DNS服務器地址評估—DNS推薦

DNS派

DNS派擁有全球最領先的雲 DNS 集群技術,領先的分布式雲服務,遍布全國的解析服務器,多年 DNS 領域專業研究,DNS派擁有全球最領先的雲DNS集群技術,領先的分布式雲服務,遍布全國的解析服務器,能為域名的權威解析提供強有力的支持。
DNS 服務器 IP 地址:

  1. 首選:101.226.4.6
  2. 備選:218.30.118.6

附:國外常用DNS服務器

  1. Google Public DNS (8.8.8.8, 8.8.4.4)
  2. OpenDNS (208.67.222.222, 208.67.220.220)
  3. OpenDNS Family (208.67.222.123, 208.67.220.123)
  4. Dyn DNS (216.146.35.35, 216.146.36.36)
  5. Comodo Secure (8.26.56.26, 8.20.247.20)
  6. UltraDNS (156.154.70.1, 156.154.71.1)
  7. Norton ConnectSafe (199.85.126.10, 199.85.127.10)

本文部分內容摘自:https://blog.csdn.net/weixin_49912759/article/details/110419273及https://blog.csdn.net/weixin_43634280/article/details/84361024


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM