1.DNS 介紹
1.1什么是域名?
域名(Domain Name),簡(jiǎn)稱域名、網(wǎng)域,是由一串用點(diǎn)分隔的名字組成的Internet上某一臺(tái)計(jì)算機(jī)或計(jì)算機(jī)組的名稱,用于在數(shù)據(jù)傳輸時(shí)標(biāo)識(shí)計(jì)算機(jī)的電子方位。具有獨(dú)一無(wú)二,不可重復(fù)的特性。
1.2什么是 DNS?
域名系統(tǒng)(Domain Name System,縮寫(xiě):DNS)是互聯(lián)網(wǎng)的一項(xiàng)服務(wù)。域名解析是把域名指向網(wǎng)站空間IP,讓人們通過(guò)注冊(cè)的域名可以方便地訪問(wèn)到網(wǎng)站的一種服務(wù)。IP地址是網(wǎng)絡(luò)上標(biāo)識(shí)站點(diǎn)的數(shù)字地址,為了方便記憶,采用域名來(lái)代替IP地址標(biāo)識(shí)站點(diǎn)地址。域名解析就是域名到IP地址的轉(zhuǎn)換過(guò)程。
域名的解析工作由DNS服務(wù)器完成??梢岳斫鉃镈NS就是翻譯官。
正向解析:域名 --> IP 地址 反向解析:IP 地址 --> 域名
1.3域名的組成和分類
常見(jiàn)格式:www.baidu.com 完整格式:www.baidu.com.
. 根域,可省略不寫(xiě)
com 頂級(jí)域,由ICANN組織指定和管理
國(guó)家地區(qū)域名:cn(中國(guó))、hk(香港)、sg(新加坡)等
通用頂級(jí)域名:com(商業(yè)機(jī)構(gòu))、org(非營(yíng)利組織)、edu(教育機(jī)構(gòu))等
新通用頂級(jí)域名:red(紅色、熱情)、top(頂級(jí)、高端)等
baidu 二級(jí)域(注冊(cè)域),可由個(gè)人或組織申請(qǐng)注冊(cè)
www 三級(jí)域(子域),服務(wù)器網(wǎng)站名代表
主機(jī)名:s1.www.baidu.com.中的s1就是主機(jī)名,一般用來(lái)表示具體某一臺(tái)主機(jī)
拓展:com.cn屬于“二級(jí)域名”,是cn頂級(jí)域的子域
2.域名解析過(guò)程
如客戶機(jī)發(fā)起查詢請(qǐng)求
www.kernel.org
1.客戶機(jī)首先查看查找本地hosts文件,如果有則返回,否則進(jìn)行下一步 2.客戶機(jī)查看本地緩存,是否存在本條目的緩存,如果有則直接返回,否則進(jìn)行下一步。 3.將請(qǐng)求轉(zhuǎn)發(fā)給指向的 DNS 服務(wù)器。 4.查看域名是否本地解析,是則本地解析返回,否則進(jìn)行下一步。 5.本地DNS服務(wù)器首先在緩存中查找,有則返回,無(wú)則進(jìn)行下一步。 6.向全球13個(gè)根域服務(wù)器發(fā)起DNS請(qǐng)求,根域返回org域的地址列表。 7.使用某一個(gè) org 域的 IP 地址,發(fā)起 DNS 請(qǐng)求,org 域返回 kernel 域服務(wù)器地址列表。 8.用某一個(gè)kernel域IP地址,發(fā)起DNS請(qǐng)求,kernel域返回www.kernel.org主機(jī)的IP地址,本地 DNS 服務(wù)收到后,返回給客戶機(jī),并在本地 DNS 服務(wù)器保存一份。
3.DNS 軟件信息
軟件名稱:bind
服務(wù)名稱:named
軟件端口:
UDP 53 數(shù)據(jù)通信(域名解析)
TCP 53 數(shù)據(jù)同步(主從同步)
配置文件:
主配置文件:/etc/named.conf(服務(wù)器運(yùn)行參數(shù))
options { listen-on port 53 { 127.0.0.1; }; listen-on-v6 port 53 { ::1; }; #設(shè)置服務(wù)器監(jiān)聽(tīng)網(wǎng)卡(可以寫(xiě)具體某一個(gè)IP,也可以寫(xiě)成any) directory "/var/named"; 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"; recursing-file "/var/named/data/named.recursing"; secroots-file "/var/named/data/named.secroots"; #數(shù)據(jù)文件位置 allow-query { localhost; }; #設(shè)置可以訪問(wèn)服務(wù)器的客戶端IP(可用any)
區(qū)域配置文件:/etc/named.rfc1912.zones(服務(wù)器解析的區(qū)域配置,正反向區(qū)域定義信息)
zone "localhost.localdomain" IN { #正向區(qū)域配置文件標(biāo)簽,修改為要解析的域 type master; #DNS服務(wù)器類型(master/slave) file "named.localhost"; #正向數(shù)據(jù)配置文件名稱(默認(rèn)保存在/var/name/下) allow-update { none; }; #允許數(shù)據(jù)更新的列表(填寫(xiě)IP地址) }; zone "1.0.0.127.in-addr.arpa" IN { # 反向區(qū)域配置文件標(biāo)簽,僅修改IP位置,并且將IP反寫(xiě)例如:0.168.192.in-addr.arpa type master; file "named.loopback"; allow-update { none; }; };
數(shù)據(jù)配置文件:/var/named/xx.xx(主機(jī)名和IP地址的對(duì)應(yīng)解析關(guān)系,及主從同步信息)
$TTL 1D#域名有效解析生存周期(一般指緩存時(shí)間) @ IN SOA @ rname.invalid. ( 0 ; serial 1D ; refresh 1H ; retry 1W ; expire 3H ) ; minimum NS @#設(shè)置DNS服務(wù)器的域名 A 127.0.0.1#IPv4的域名IP解析記錄 AAAA ::1#IPv6的 域名IP解析記錄 ~ # @: 域名有效解析生存周期(一般指緩存時(shí)間) # SOA:SOA標(biāo)記(起始授權(quán)機(jī)構(gòu)的資源記錄,描述了域名的管理品 電子郵件地址 和一此時(shí)間參數(shù) #serial 配置文件修改版本(如:20190826) #refresh 更新頻率(從向主的查詢周期) # retry 更新失敗的重試時(shí)間周期 # expire 無(wú)法更新時(shí)的失效周期 #minimum 緩存服務(wù)器無(wú)法更新時(shí)的失效時(shí)間
記錄類型:
A: | 地址記錄,用來(lái)指定域名的IPv4地址的記錄 |
---|---|
CNAME: | 將域名指向另一個(gè)域名,再由另一個(gè)域名提供ip地址,就需要添加CNAME記錄 |
TXT: | 可填寫(xiě)任何東西,長(zhǎng)度限制255.絕大多數(shù)的TXT記錄是用來(lái)做SPF的(反垃圾郵件) |
NS: | 域名服務(wù)器記錄,如果需要把子域名交給其他DNS服務(wù)商解析,就需要添加NS記錄。 |
AAAA: | 地址記錄,用來(lái)指定域名的IPv6地址的記錄 |
MX: | 郵件交換記錄,如果需要設(shè)置郵箱,讓郵箱能收到郵件,就需要添加MX記錄。 |
DNS 實(shí)驗(yàn)搭建
4.1 DNS服務(wù)搭建
先關(guān)閉服務(wù)器和客戶機(jī)上的防火墻和SELinux
1.軟件安裝
yum install bind -y
2.配置主配置文件(/etc/named.conf)
options { listen-on port 53 { any; }; #監(jiān)聽(tīng)網(wǎng)卡改為any listen-on-v6 port 53 { any; }; directory "/var/named"; 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"; recursing-file "/var/named/data/named.recursing"; secroots-file "/var/named/data/named.secroots"; allow-query { any; }; #設(shè)置可以訪問(wèn)服務(wù)器的客戶端為any
3.配置區(qū)域文件(/etc/named.rfc1912.zones)
注:先對(duì)區(qū)域文件進(jìn)行備份,刪除多余的模板,只留下一個(gè)正向和一個(gè)反向(反向修改時(shí),網(wǎng)絡(luò)位的反寫(xiě)格式,如192.168.100.20 -> 100.168.192.)
zone "ajaj.com" IN { type master; file "ajaj.localhost"; #自定義正向解析文件名 allow-update { none; }; }; zone "100.168.192.in-addr.arpa" IN { type master; file "ajaj.loopback"; # 自定義反向解析文件名 allow-update { none; }; };
4.配置數(shù)據(jù)文件/var/named/
A. 先復(fù)制生成正向解析文件和反向解析文件
cp -a named.localhost ajaj.localhost cp -a named.loopback ajaj.loopback
B. 編輯正向解析文件(注意域名結(jié)尾的“.”)
vim ajaj.localhost $TTL 1D @ IN SOA ajaj.com. rname.invalid. ( 0 ; serial 1D ; refresh 1H ; retry 1W ; expire 3H ) ; minimum NS dns.ajaj.com. dns A 192.168.100.20 www A 192.168.100.21
C.編輯反向解析文件(注意域名結(jié)尾的".")
vim ajaj.loopback $TTL 1D @ IN SOA ajaj.com. rname.invalid. ( 0 ; serial 1D ; refresh 1H ; retry 1W ; expire 3H ) ; minimum NS dns.ajaj.com. 20 PTR dns.ajaj.com. 21 PTR www.ajaj.com.
5.重啟DNS服務(wù)
systemctl restart named
6.客戶端測(cè)試
在網(wǎng)卡配置文件中添加 DNS 服務(wù)器的地址,然后用 nslookup 測(cè)試。
[root@localhost ~]# nslookup www.ajaj.com Server: 192.168.100.20 Address: 192.168.100.20#53 Name: www.ajaj.com Address: 192.168.100.21
4.2 DNS主從
實(shí)驗(yàn)?zāi)康模?/strong>
減輕主服務(wù)器的壓力
先關(guān)閉服務(wù)器和客戶機(jī)上的防火墻和SELinux
實(shí)驗(yàn)準(zhǔn)備:
一臺(tái)主服務(wù)器、一臺(tái)從服務(wù)器、一臺(tái)測(cè)試機(jī)
搭建過(guò)程:
1.搭建主服務(wù)器步驟
安裝 bind 軟件
yum install bind -y
主配置文件的修改
options { listen-on port 53 { any; }; listen-on-v6 port 53 { any; }; directory "/var/named"; 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"; recursing-file "/var/named/data/named.recursing"; secroots-file "/var/named/data/named.secroots"; allow-query { any; };
區(qū)域配置文件的修改
zone "ajaj.com" IN { type master; file "ajaj.localhost"; allow-update { 192.168.100.21; }; }; zone "100.168.192.in-addr.arpa" IN { type master; file "ajaj.loopback"; allow-update { 192.168.100.21; }; };
主 DNS 的區(qū)域配置文件中 allow-updata 參數(shù)添加從服務(wù)器 IP 地址。
配置數(shù)據(jù)文件
cp -a named.localhost ajaj.localhost cp -a named.loopback ajaj.loopback
正向數(shù)據(jù)文件
vim ajaj.localhost $TTL 1D @ IN SOA ajaj.com. rname.invalid. ( 0 ; serial 1D ; refresh 1H ; retry 1W ; expire 3H ) ; minimum NS dns.ajaj.com. dns A 192.168.100.20 www A 192.168.100.23
反向數(shù)據(jù)文件
vim ajaj.loopback $TTL 1D @ IN SOA ajaj.com. rname.invalid. ( 0 ; serial 1D ; refresh 1H ; retry 1W ; expire 3H ) ; minimum NS dns.ajaj.com. 20 PTR dns.ajaj.com. 23 PTR www.ajaj.com.
啟動(dòng) named 服務(wù)
systemctl start named
4.搭建從服務(wù)器步驟:
安裝 bind 軟件
yum install bind -y
修改主配置文件
vim /etc/named.conf options { listen-on port 53 { any; }; listen-on-v6 port 53 { any; }; directory "/var/named"; 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"; recursing-file "/var/named/data/named.recursing"; secroots-file "/var/named/data/named.secroots"; allow-query { any; };
配置區(qū)域文件
注意:從配置文件的類型需要修改為 slave,并且需要填寫(xiě)主服務(wù)器的地址 zone "ajaj.com" IN { type slave; masters { 192.168.100.20; }; file "slaves/ajaj.localhost"; }; zone "100.168.192.in-addr.arpa" IN { type slave; masters { 192.168.100.20; }; file "slaves/ajaj.loopback"; }; 文件保存位置修改為 file“slaves/atguigu.localhost”;
重啟服務(wù)
systemctl start named
在測(cè)試機(jī)上填寫(xiě)從服務(wù)器的IP,并使用nslookup測(cè)試
nslookup www.ajaj.com Server: 192.168.100.21 Address: 192.168.100.21#53 Name: www.ajaj.com Address: 192.168.100.23
4.3DNS緩存服務(wù)器
先關(guān)閉服務(wù)器和客戶機(jī)上的防火墻和SELinux
實(shí)驗(yàn)作用:
加快解析速度,提高工作效率
實(shí)驗(yàn)軟件:
dnsmasq
配置文件:
/etc/dnsmasq.conf domain=域名 #需要解析的域名 server=ip #主 DNS 服務(wù)器 IP cache-size=15000 #聲明緩存條數(shù)
重啟服務(wù):
systemctl restart dnsmasq
測(cè)試效果:
在測(cè)試機(jī)上填寫(xiě)DNS 緩存服務(wù)器服務(wù)器的 ip 地址
審核編輯:劉清
-
計(jì)算機(jī)
+關(guān)注
關(guān)注
19文章
7360瀏覽量
87632 -
TCP
+關(guān)注
關(guān)注
8文章
1347瀏覽量
78933 -
DNS
+關(guān)注
關(guān)注
0文章
215瀏覽量
19771 -
UDP
+關(guān)注
關(guān)注
0文章
322瀏覽量
33849
原文標(biāo)題:DNS域名原理你知道嗎?
文章出處:【微信號(hào):magedu-Linux,微信公眾號(hào):馬哥Linux運(yùn)維】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論