Linux學習 DNS服務
DNS快取記憶體伺服器
一、DNS快取記憶體
(一)服務端
1.設定網路:ifconfig eth0 172.25.254.109/24
systemctl start network
2.systemctl stop firewalld
3.配置yum 源指向
yuminstall bind.x86_64 -y
4.systemctl start named
5.修改主配置檔案
初始內容如下:
vim /etc/named.conf #修改主配置檔案
options {
listen-on port 53 { any; }; #監聽任何主機的埠
listen-on-v6 port 53 { ::1; };
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";
allow-query {any; }; #允許任何客戶端訪問
6.systemctlretart named #一定要重啟服務
7.在伺服器端可以使用如下命令檢視服務是否開放
netstat antlpe | grep named
(二)測試端配置
1.編輯/etc/resolve.conf 解析檔案,解析地址指向服務端
2.使用如下命令,檢視該伺服器是否可以解析
dig網址 #檢視該網址的解析地址
(三)快取記憶體
圖中可以看到解析結果中顯示服務失敗,因為該伺服器中沒有該網址的A記錄,因此需要繼續修改主配置檔案,給出更高階的伺服器埠。在檔案加入命令
forwarders {172.25.254.250;}; #查詢更高階的DNS解析伺服器
systemctl retart named #一定要重啟服務
先在一個客戶端訪問某一網址,看解析時間
再用同一網段的另一客戶端訪問同一網址,發現解析時間變短甚至為0
二、搭建權威DNS
(一)修改配置檔案
1.修改主配置檔案
vim /etc/named.conf
zone"." IN { #該域名所包含的內容
type hint; #型別
file "named.ca"; #DNS域名解析表
};
include"/etc/named.rfc1912.zones"; #DNS表格位置
include "/etc/named.root.key";
如主配置檔案中格式,先將需要建立的DNS表格寫在字配置檔案/etc/named.rfc1912.zones中
2.vim /etc/named.rfc1912.zones
新增如下內容
zone "westos.com" IN { #"westos.com"將要建立的域名
type master; #型別
file "westos.com.zone";#域名解析表在檔案/var/named/westos.com.zone中
allow-update { none; }; #不允許更新
};
注意:為保持檔案許可權及檔案中表格格式一致,可以用如下方式新建westos.com.zone。
cd/var/named
ll #可以檢視檔案許可權
cp -p name.local westos.com.zone #新建檔案,檔案內容格式與.name.local中格式相同
3.vim /var/named/westos.com.zone #寫域名解析表
原內容顯示如下
$TTL 1D #該檔案內容即該解析表格可以維持使用的有效時長是一天
@ ##該符號表示域名 IN SOA @ rname.invalid. ( #授權起始,
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H) ; minimum
NS @
A 127.0.0.1
AAAA ::1
修改後內容顯示如下:
$TTL 1D #表示該表格可以維持使用一天
@ IN SOA dns.westos.com.rname.invalid. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H) ; minimum
NS dns.westos.com.
dns A 172.25.254.109 #A記錄
www A 172.25.254.200
其中:@ 表示westos.com
Root.westos.com #該檔案維護的使用者
注意:在編輯時若域名後不加. 時,系統將會在域名後自動補齊westos.com;加 . 則表示不再自動補齊。
如:dns 表示dns.westos.com
www 表示www.westos.com
dns.westos.com. 表示dns.westos.com,不再自動補齊
3.systemcl restart named #重起服務
4檢測:dig www.westos.com #在服務端或客戶端均可檢測
三、CNAME域名規範
1.vim /var/name/westos.com.zone #編輯域名解析表
$TTL 1D
@ IN SOA dns.westos.com.rname.invalid. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H) ; minimum
NS dns.westos.com.
dns A 172.25.254.109
www A 172.25.254.202
edu CNAME edu.cn.westos.com. #edu.cn.wetos.com並不是edu.westos.com的規範域名
edu.cn A 172.25.254.209 #edu.cn.wetos.com的A記錄檔案位置
2.systemctl restart named #重啟服務
3.檢測:dig deu.westos.com #客戶端或服務端執行均可
四、MX郵件解析記錄
1.vim /var/name/westos.com.zone #編輯域名解析表
在解析表在中增加內容:
westos.com. MX 1 172.25.254.109. #westos.com郵箱解析記錄在172.25.254.109這臺主機中
其中““1”表示優先順序。
2.客戶端測試:dig -t mx westos.com
注意: vim /var/named/westos.comz.zone
westos.com. A 172.25.254.100. #解析地址一定要加點,否則重啟服務後該地址會自動補齊westos.com
五、DNS多方向解析--檢視方式
1.服務端新增網路卡eth1,並設定網路
vim /etc/sysconfig/network-scripts/eyh1 #設定新增網路卡的IP地址
sytemctl restart network
2.修改主配置檔案先註釋掉如下解析方式
/*zone "." IN {
type hint;
file "named.ca";
};
include"/etc/named.rfc1912.zones";
include "/etc/named.root.key";
*/
新增內容如下:實現解析兩個網段
view clientnet {
match-clients {172.25.9.0/24;}; #與172.25.9.0/24網段的主機進行匹配
zone "." IN {
type hint;
file "named.ca";
};
include"/etc/named.rfc1912.inter"; #該段網址的解析內容包含在/etc/name.rfc1912.inter檔案中
};
view localnet {
match-clients {172.25.254.0/24; }; #與該網段主機進行匹配
zone "." IN {
type hint;
file "named.ca";
};
include"/etc/named.rfc1912.zones"; #該段網址的解析內容包含在/etc/name.rfc1912.inter檔案中
};
3.cp -p /var/named/westos.com.zone /var/named/westos.com.inter #使用cp -p 命令複製檔案內容,避免檔案許可權改變
cp -p /etc/named.rfc1912.zones /etc/named.rfc1912.inter #新建檔案
4.vim /etc/named.rfc1912.inter
vim /var/named/westos.com.inter
5.systemctl restart named #重啟服務
6.客戶端172.25.9.10 #172.25.9.0/24網段
vim /etc/resolve
namesever 172.25.9.109
7.測試命令:dig 域名
8.在172.25.254.0/24網段的客戶端測試
vim /etc/resols.conf #先修改解析檔案
nameserver 172.25.254.109
:wq
六、反向解析--由IP得到域名
1.vim /etc/named.rfc1912.zone
修改第43行,原內容顯示如下
43 zone "0.in-addr.arpa" IN{
44 type master;
45 file "named.empty";
46 allow-update { none; };
47};
修改後內容如下顯示:
43 zone "254.25.172.in-addr.arpa"IN { #反向解析IP地址,注意書寫順序
44 type master;
45 file "westos.com.ptr"; #反向解析檔案型別為ptr
46 allow-update { none; };
47};
2.cp -p /var/named/named.loopback westos.com.ptr
3.vim /var/named/nwestos.com.ptr
4.systemctl restart named #重啟服務
5.使用同一網段的客戶端測試 #172.25.254.0/24
dig -x 172.25.254.111
七、DNS更新
(一)客戶端更新解析域名
先在伺服器端執行如下命令
1.getsebool -a | grep named #檢視服務
setsebool -P named_write_master_zones 1 #開啟服務
2.cp -p /var/named/westos.com.zone/mnt/westos.com.zone #備份
chmod 770 /var/named
3.vim /etc/named.rfc1912.zones
zone "westos.com"IN {
type master;
file "westos.com.zone";
allow-update {172.25.254.209;}; #允許指定的主機去更新DNS域名解析表
};
4.systemctl restart named
5.客戶端測試,使用命令nsupdate
(1)新增域名解析
[root@localhost ~]# nsupdate
> server 172.25.254.109
> update add hello.westos.com 86400 A172.25.254.222
#add 表示新增;
#hello.westos.com 新增的域名
#86400 即TTL 1D, 表示該有效期保持一天
#A 172.25.254.222 A記錄檔案,解析地址是172.25.254.222
> send
在伺服器端重啟服務並檢視是否有更新
systemctl restart named
ll /var/named/
cat /var/named/westos.com.zone
(2)刪除域名解析
[root@localhost ~]# nsupdate
> update delete hello.westos.com #刪除該域名解析
> send
在伺服器端重啟服務並檢視是否有更新
systemctl restart named
ll /var/named/
cat /var/named/westos.com.zone
(二)在服務端恢復更新
1.rm -fr /var/named/westos.* #刪除更新後所生成的檔案
2.cp -p /mnt/westos.com.zone /var/named/westos.com.zone
3.systemctl restart named
八、加密更新
1.增加key,可以先檢視系統預設生成的key檔案格式,根據該格式來生成key檔案
cat /etc/rndc.key #檢視系統預設生成的key檔案
其中 -a #加密型別,系統預設型別是hmac-md5
-b #密碼長度
-n #使用者
cd /mnt
dnssec-keygen -a HMAC-MD5 -b 256 -n HOST westoskey #鑰匙名
ls #檢視生成的鑰匙及加密字元檔案
注:在執行生成westoskey這條命令時,若westoskey 不能及時生成,則可以任意敲鍵盤或移動滑鼠來完成命令。
3.編輯key 的配置檔案
cp -p /etc/rndc.key /etc/westos.key #以系統生成的預設加密格式生活曾加密檔案
vim /etc/westos.key
[root@localhost ~]# cat /etc/westos.key
key "westoskey" { # "key名稱"
algorithm hmac-md5; #加密型別是hmac-md5
secret "加密字串"; #生成的加密字元,即公鑰
};
4.設定DNS更新許可權
(1)vim /etc/named.conf
42行以下的位置新增如下命令:
include "/etc/westos.key"
(2)vim /etc/named.rfc1912.zones
修改域名解析內容,顯示如下
zone "westos.com" IN {
type master;
file "westos.com.zone";
allow-update {key westoskey;}; #指定有公鑰檔案的主機可以更新
};
(3)重啟服務
4.客戶端無公鑰時測試,更新失敗
5.服務端分配鑰匙
ls /mnt
scp /mnt/Kwestoskey.* root@客戶端ip:/mnt/
如:scp /mnt/Kwestoskey.* root@172.25.254.209:/mnt/
6.有公鑰檔案的客戶端測試,命令格如下:
nsupdate -k /mnt/Kwestos.private
九、DNS動態解析
當域名的解析地址是動態IP時,應允許dhcpd伺服器去更新
(一)服務端
1.yum install dhcp -y
2.[root@localhost ~]# cp -p /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcp.conf
#生成配置檔案,系統會提醒是否覆蓋原配置檔案,輸入y
3.vim /etc/dhcp/dhcp.conf
刪除36之後的內容以及27、28行的內容,修改後檔案內容顯示如下:
[root@localhost ~]# cat/etc/dhcp/dhcpd.conf -n
7 option domain-name"westos.com"; #域名westos.com
8 option domain-name-servers172.25.254.109; #dhcpd伺服器主機IP
10 default-lease-time 600;
11 max-lease-time 7200;
14 ddns-update-styleinterim; #DNS動態更新格式
22 log-facility local7;
30 subnet 172.25.254.0 netmask255.255.255.0 { #dhcp動態分配的IP地址的網段、子網掩碼、
31 range 172.25.254.30 172.25.254.40; #分配的IP地址的範圍
32 option routers 172.25.254.250; #分配的IP地址的閘道器
33 }
34 key westoskey {
35 algorithm hmac-md5;
36 secretYlWN2shjPdRIG98QBySfHLKncCnxHW+u88riAhIotpM=;
37 };
38
39 zone westos.com. { #指定更新的IP
40 primary 127.0.0.1; #迴環介面:實現高效且安全地更新
41 key westoskey; #westoskey更新127.0.0.1中的westos.com的域
42 }
4.重啟dhcpd服務
systemctl start dhcpd
5.為實現更新westos.com域,則在/var/named/westos.com中一定不能有westos.com的域名解析
設定完域名解析檔案後,一定要重啟named服務
systemctl restart named
(二)客戶端
1.更改主機名,格式:xxx.westos.com
2.vim /etc/systconfig/network-scripts/eth0
DEVICE=eth0
BOOTPROT=dhcp
ONBOOT=yes
3.systemctl restart network
4.dig xxx.westos.com #測試是否可以解析出主機名及該主機IP
相關文章
- Linux——DNS域名解析服務LinuxDNS
- dns服務DNS
- 24_linux筆記-DNS服務Linux筆記DNS
- DNS主從服務DNS
- DNS服務應用DNS
- 模擬DNS服務DNS
- 雲原生學習築基 ~ 組網必備知識點 ~ DNS服務DNS
- Linux系統學習(四)Linux網路服務Linux
- DNS域名解析服務DNS
- 域名系統DNS服務DNS
- Linux與DNS的學習筆記LinuxDNS筆記
- Linux7.0下簡單DNS服務配置實驗LinuxDNS
- DNS解析服務(bind)安裝DNS
- Angular 8 學習 (五 服務)Angular
- DNS域名解析服務及其配置DNS
- Cloudflare正式推出1.1.1.1公共DNS服務CloudDNS
- 【LINUX學習】檢視當前所有服務的狀態Linux
- DNS深入學習-1DNS
- DNS學習筆記DNS筆記
- Linux的DNS域名解析服務(正向,反向,主從,分離)LinuxDNS
- angular的uiRouter服務學習(4)AngularUI
- angular的uiRouter服務學習(3)AngularUI
- angular的uiRouter服務學習(1)AngularUI
- angular的uiRouter服務學習(2)AngularUI
- 淘寶圖片服務的學習
- 『學了就忘』Linux服務管理 — 75、Linux系統中的服務Linux
- Centos7系統配置DNS服務CentOSDNS
- Nmap掃描教程之DNS服務類DNS
- Linux哪些服務適合開機自啟動?linux學習入門Linux
- Laravel深入學習4 – 服務提供器Laravel
- Docker學習之搭建MySql容器服務DockerMySql
- 網路技術DNS服務全介紹DNS
- 《DNS服務快取的建立》RHEL6DNS快取
- 《搭建DNS負載均衡服務》RHEL6DNS負載
- 《搭建更新DNS叢集服務》RHEL6DNS
- Laravel底層學習筆記02 - 服務容器,服務提供者Laravel筆記
- Linux下DNS服務(Bind9)之Web管理利器-NamedManager部署說明LinuxDNSWeb
- Google:Google DNS 每天請求數 700 億次 成世界最大 DNS 服務GoDNS