DNS服務基礎
作用:
正向解析:域名---->IP地址
反向解析:IP地址---->域名 (不常用)
分佈式結構:
根: .
一級DNS服務器:.com .net .edu .cn .org
二級DNS服務器:.net.cn .edu.cn .com.cn
三級DNS服務器:.sina.com.cn .pku.edu.cn
主機站點: tts9 tts6 mail wwww
域名管理:
IANA, 互聯網數字分配機構
CNNIC, 中國互聯網絡信息中心
域名代理/註冊/購買服務商:
新網,http://www.xinnet.com
萬網,http://www.net.cn
中國互聯,http://hulian.top
BIND域名服務:
伯克利Internet域名服務
官方站點:https://www.isc.ort/
備註的三種方式:
# 註釋一整行或行內的部分文字
// 註釋一整行或行內的部分文字
/* */ 註釋連續的多行文字
named.com配置文件:
主程序:/usr/sbin/named
系統服務:named
默認端口:TCP/UDP 53
運行時的虛擬根環境:/var/named/chroot
主配置文件:/etc/named.conf (管理哪些區域,地址庫在哪裏)
地址庫文件:/var/named/自定義文件名
單區域DNS服務
快速搭建DNS服務器
虛擬機A(192.168.4.7)
裝包
chroot 切換根目錄(提供一個僞造的根)【籠環境】----> 把/var/named/chroot/ 目錄當成根目錄
[root@svr7 ~]# yum -y install bind bind-chroot
[root@svr7 ~]# rpm -qa bind* //-a:查詢所有的安裝包
配置
[root@svr7 ~]# vim /etc/named.conf #修改主配置文件
[root@svr7 ~]# cat /etc/named.conf
options {
listen-on port 53 {192.168.4.7;}; #監聽地址和端口(可不寫)
allow-query {any;}; #允許任何客戶機查詢(可不寫)
directory "/var/named"; #地址文件的默認位置
};
zone "tedu.cn" {
type master; #區域類型爲主DNS
file "tedu.cn.zone"; #地址庫文件
};
[root@svr7 ~]# named-checkconf /etc/named.conf #檢查配置語法
[root@svr7 ~]# vim /var/named/tedu.cn.zone #文件頭參考named.localhost 文件的內容複製過來
$TTL 1D #生存時間
@ IN SOA @ rname.invalid. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
@ NS ns.tedu.cn.
ns A 192.168.4.7
svr7 A 192.168.4.7
www A 192.168.4.100
pc207 A 192.168.4.207
[root@svr7 ~]# named-checkzone tedu.cn /var/named/tedu.cn.zone #檢查配置語法
啓服務
[root@svr7 ~]# systemctl restart named #重啓服務
[root@svr7 ~]# systemctl enable named #開機自啓
DNS查詢測試
虛擬機B(192.168.4.207)
[root@pc207 ~]# echo nameserver 192.168.4.7 > /etc/resolv.conf
[root@pc207 ~]# host www.tedu.cn
www.tedu.cn has address 192.168.4.100
[root@pc207 ~]# nmcli con show
[root@pc207 ~]# nmcli con mod eth0 ipv4.dns 192.168.4.7 #永久配置網卡訪問的DNS
[root@pc207 ~]# nmcli con up eth0
特殊解析
DNS輪尋(負載均衡)
特點:同一個域名對應多個IP
[root@svr7 ~]# vim /var/named/tedu.cn.zone
... ...
@ NS ns.tedu.cn.
ns A 192.168.4.7
www A 192.168.4.100
A 192.168.4.110
A 192.168.4.120
svr7 A 192.168.4.7
泛域名解析
特點:不同的域名對應同一個IP
[root@svr7 ~]# vim /var/named/tedu.cn.zone
... ...
@ NS ns.tedu.cn.
ns A 192.168.4.7
* A 192.168.4.100
www A 192.168.4.100
擴展DNS服務器svr7的功能
除了負責tedu.cn區域以外,還能夠爲教學環境的example.com提供域名解析服務
[root@svr7 ~]# vim /etc/named.conf
options {
directory "/var/named";
};
zone "tedu.cn" {
type master;
file "tedu.cn.zone";
};
zone "example.com" {
type master;
file "example.com.zone";
};
[root@svr7 ~]# named-checkconf /etc/named.conf
[root@svr7 ~]# cd /var/named/
[root@svr7 named]# cp tedu.cn.zone example.com.zone
[root@svr7 named]# vim example.com.zone
$TTL 1D
@ IN SOA @ rname.invalid. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
@ NS svr7.tedu.cn.
classroom A 172.25.254.254
server0 A 172.25.0.11
desktop0 A 172.25.0.10
[root@svr7 named]# named-checkzone example.com /var/named/example.com.zone
[root@svr7 named]# systemctl restart named
DNS子域授權
配置子域授權
子域授權的作用
使用於一個DNS組織
父/子域的解析工作由不同的DNS服務器負責
父DNS服務器應該有爲子域迭代的能力
測試子域FQDN查詢
虛擬機pc207
裝包
[root@pc207 ~]# yum -y install bind bind-chroot
[root@pc207 ~]# rpm -qa bind*
配置
[root@pc207 ~]# vim /etc/named.conf #修改主配置文件
[root@pc207 ~]# cat /etc/named.conf
options {
directory "/var/named"; #地址文件的默認位置
};
zone "bj.tedu.cn" {
type master; #區域類型爲主DNS
file "bj.tedu.cn.zone"; #地址庫文件
};
[root@pc207 ~]# named-checkconf /etc/named.conf #檢查配置語法
[root@pc207 ~]# vim /var/named/bj.tedu.cn.zone
... ...
@ NS pc207.bj.tedu.cn.
pc207 A 192.168.4.207
www A 1.2.3.4
[root@pc207 ~]# named-checkzone bj.tedu.cn /var/named/bj.tedu.cn.zone #檢查配置語法
啓服務
[root@pc207 ~]# systemctl restart named #重啓服務
[root@pc207 ~]# systemctl enable named #開機自啓
爲父DNS啓用子域授權
虛擬機svr7
[root@svr7 ~]# vim /var/named/tedu.cn.zone
... ...
bj.tedu.cn. NS pc207.bj.tedu.cn.
pc207.bj.tedu.cn. A 192.168.4.207
遞歸/迭代查詢
虛擬機pc207
[root@pc207 ~]# vim /etc/named.conf #修改主配置文件
options {
directory "/var/named"; #地址文件的默認位置
recursion yes; #啓用迭代查詢,默認是開啓
};
zone "bj.tedu.cn" {
type master; #區域類型爲主DNS
file "bj.tedu.cn.zone"; #地址庫文件
};
[root@pc207 ~]# named-checkconf /etc/named.conf #檢查配置語法
緩存DNS概述
停用與DNS服務衝突的其他服務(dnsmasq)
[root@svr7 ~]# pkill -9 dnsmasq
裝包添加轉發器,並啓用named服務
[root@svr7 ~]# yum -y install bind bind-chroot
配置
[root@svr7 ~]# vim /etc/named.conf #修改主配置文件
options {
forwarders { 176.233.0.227; 8.8.8.8;}
};
啓服務named
[root@svr7 ~]# systemctl restart named
測試
[root@pc207 ~]# host www.qq.com 192.168.4.7
Split分離解析
爲不同類別的客戶機提供不同的解析結果
配置分離解析
建立2份地址庫
[root@svr7 named]# cp -p tedu.cn.zone tedu.cn.zone.1
[root@svr7 named]# cp -p tedu.cn.zone tedu.cn.zone.2
[root@svr7 named]# vim tedu.cn.zone.1
... ...
@ NS ns.tedu.cn.
ns A 192.168.4.7
svr7 A 192.168.4.7
www A 192.168.4.100
[root@svr7 named]# vim tedu.cn.zone.2
... ...
@ NS ns.tedu.cn.
ns A 192.168.4.7
svr7 A 192.168.4.7
www A 1.2.3.4
針對來源地址定義acl列表
options {
directory "/var/named";
};
acl "mylan"{
192.168.4.207;
192.168.7.0/24;
};
配置2個view,調用不用的地址庫
view "mylan" {
match-clients {mylan;};
zone "tedu.cn" {
type master;
file "tedu.cn.zone.1";
};
};
view "other" {
match-clients { any; };
zone "tedu.cn" {
type master;
file "tedu.cn.zone.2";
};
};