服務器維護小知識DNS
幫助用戶在互聯網上尋找路徑。在互聯網上的每一個計算機都擁有一個唯一的地址,稱作“IP地址”(即互聯網協議地址)。由于IP地址(為一串數字)不方便記憶,DNS允許用戶使用一串常見的字母(即“域名”)取代。比如,您只需鍵入www.baidu.com,而不是“
119.75.217.109”。即可訪問I
CANN的官方網站。DNS命名用于Internet等TCP/IP網絡中,通過用戶友好的名稱查找計算機和服務。當用戶在應用程序中輸入DNS名稱時,DNS服務可以將此名稱解析為與之相關的其他信息,如IP地址。因為,你在上網時輸入的網址,是通過域名解析系解析找到相對應的IP地址,這樣才能上網。其實,域名的最終指向是IP
每個IP地址都可以有一個主機名,主機名由一個或多個字符串組成,字符串之間用小數點隔開。有了主機名,就不要死記硬背每臺IP設備的IP地址,只要記住相對直觀有意義的主機名就行了。這就是DNS協議所要完成的功能。
主機名到IP地址的映射有兩種方式:
1)靜態映射,每臺設備上都配置主機到IP地址的映射,各設備獨立維護自己的映射表,而且只供本設備使用;
2)動態映射,建立一套域名解析系統(DNS),只在專門的DNS服務器上配置主機到IP地址的映射,網絡上需要使用主機名通信的設備,首先需要到DNS服務器查詢主機所對應的IP地址。
通過主機名,最終得到該主機名對應的IP地址的過程叫做域名解析(或主機名解析)。在解析域名時,可以首先采用靜態域名解析的方法,如果靜態域名解析不成功,再采用動態域名解析的方法。可以將一些常用的域名放入靜態域名解析表中,這樣可以大大提高域名解析效率。
1、技術角度看
DNS解析是互聯網絕大多數應用的實際尋址方式; 域名技術的再發展、以及基于域名技術的多種應用,豐富了互聯網應用和協議。
2、資源角度看
域名是互聯網上的身份標識,是不可重復的唯一標識資源; 互聯網的全球化使得域名成為標識一國主權的國家戰略資源。
1)客戶端首先檢查本地
c:\
windows\
system32\
drivers\
etc\
host文件,是否有對應的
IP地址,若有,則直接訪問
WEB站點,若無
2)客戶端檢查本地緩存信息,若有,則直接訪問
WEB站點,若無
3)本地
DNS檢查緩存信息,若有,將
IP地址返回給客戶端,客戶端可直接訪問
WEB站點,若無
4)本地
DNS檢查區域文件是否有對應的
IP,若有,將
IP地址返回給客戶端,客戶端可直接訪問
WEB站點,若無,
5)本地
DNS根據
cache.dns文件中指定的根
DNS服務器的
IP地址,轉向根
DNS查詢。
6)根
DNS收到查詢請求后,查看區域文件記錄,若無,則將其管轄范圍內
.com服務器的
IP地址告訴本地
DNS服務器
7)
.com服務器收到查詢請求后,查看區域文件記錄,若無,則將其管轄范圍內
.xxx服務器的
IP地址告訴本地
DNS服務器
8)
.xxx服務器收到查詢請求后,分析需要解析的域名,若無,則查詢失敗,若有,返回
www.的
IP地址給本地服務器
9)本地
DNS服務器將
www.的
IP地址返回給客戶端,客戶端通過這個
IP地址與
WEB站點建立連接
[root@
CentOS7 ~]
# yum install bind
/etc/named.conf ,
/etc/named.rfc1912.zones 為DNS主配置文件
/var/named/目錄為DNS數據庫文件存放目錄,每一個域文件都放在這里。
/etc/rc.d
/init.d/named 為DNS服務的服務腳本。
listen-on port
53{ any; };
allow-query { any; };
dnssec-enable
no;
dnssec-validation
no;
zone
"linuxidc.com"IN {
type master;
file
"linuxidc.com";
};
其中zone的格式為:zone “ZONE_NAME
IN{
type master;
file “ZONE_NAME.zone”
}
[root@CentOS7 ~]
# vim /var/named/linuxidc.com.zone
$TTL 1D
$ORIGIN linuxidc.com.
@
INSOA linuxidc.com. admin.linuxidc.com. (
20170526; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
linuxidc.com.
INNS ns1.linuxidc.com.
ns1
INA
192.168.
29.100
www
INA
172.16.
254.13
ftp
INA
1.1.
1.1
[root@CentOS7 ~]# chgrp
named/var/
named/linuxidc.com.zone
[root@CentOS7 ~]
# named-checkconf
(2)檢查域配置文件語法[root@CentOS7 ~]#
named-checkzone linuxidc.com /var/
named/linuxidc.com.zone
zone linuxidc.com/
IN: loaded serial
20170526
OK
[root@CentOS7 ~]
# systemctl start named
[root@CentOS7 ~]#
nslookup www.linuxidc.com
Server: 127
.0.0.1
Address: 127
.0.0.1#53
Name:
www.linuxidc.com
Address: 172
.16.254.13
[root@CentOS7 ~]#
nslookup ftp.linuxidc.com
Server: 127
.0.0.1
Address: 127
.0.0.1#53
Name:
ftp.linuxidc.com
Address: 1
.1.1.1
測試成功,正向解析成功!!listen-on port
53{ any; };
allow-query { any; };
dnssec-enable
no;
dnssec-validation
no;
zone
"29.168.192.in-addr.arpa"IN {
type master;
file
"name.29.168.192";
};
格式為:zone
"NET_IP.in-addr.arpa" IN{
#NET_IP 為反向解析的IP 網段
type master;
file
"NAME_ZONE";
#NAME_ZONE為反向解析庫配置文件名稱
};
$TTL 1D
$ORIGIN 29.168.
192.in-addr.arpa.
@
INSOA linuxidc.com. admin.linuxidc.com. (
20170526; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
IN NS linuxidc.com.
100 IN PTR www.linuxidc.com.
200 IN PTR ftp.linuxidc.com.
[root@CentOS7 ~]#
chgrp named name.29.168.192
[root@CentOS7 ~]
# named-checkconf
(2)檢查域配置文件語法[root@CentOS7 ~]#
named-checkzone
29.168.192.in-addr.arpa /var/
named/
name.29.168.192
zone
29.168.192.in-addr.arpa/
IN: loaded serial
20170526
OK
[root@CentOS7 ~]
# systemctl start named
[root@CentOS7 ~]#
dig -x192
.168.29.200@
192.168.29.100
; <<>>
DiG9
.9.4-RedHat-9.9.4-37.el7<<>>
-x192
.168.29.200@
192.168.29.100
[……]
200.29.
168.192.in-addr.arpa.
86400IN PTR ftp.linuxidc.com.
[root@CentOS7 ~]# dig -x
192.168.
29.100@
192.168.
29.100
[……]
;;
ANSWER SECTION:
100
.29.168.192.in-addr.arpa. 86400
IN PTR www.linuxidc.com.
;;
AUTHORITY SECTION:
測試成功?。。?br />29
.168.192.in-addr.arpa. 86400
IN NS linuxidc.com.
listen-
onport
53{ any; };
allow-query { any; };
recursion
yes;
dnssec-enable
no;
dnssec-validation
no;
zone
"linuxidc.com" IN{
type master;
file
"linuxidc.com.zone";
allow-
transfer{
192.168.29.3; };
##192.168.29.3位從服務器的ip地址。
};
$TTL 1D
$ORIGIN linuxidc.com.
@
INSOA linuxidc.com. admin.linuxidc.com. (
20170526; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
linuxidc.com.
INNS ns1.linuxidc.com.
mytest.com.
INNS slave.linuxidc.com.
###添加從服務器的NS解析記錄。
ns1
INA
192.168.
29.100
slave
INA
192.168.
29.3 ###指定從服務器的IP地址。
www
INA
172.16.
254.13
ftp
INA
1.1.
1.1
listen-
onport
53{ any; };
allow-query { any; };
recursion
yes;
dnssec-enable
no;
dnssec-validation
no;
zone
"linuxidc.com" IN{
type slave;
##表明本機是從服務器
file
"slaves/linuxidc.com";
##將同步后的文件放置在哪里,這里是相對路徑,實際路徑為/var/named/slaves/linuxidc.com
masters{
192.168.29.100; };
##指定主服務器的ip地址
};
[root@CentOS7 ~]
# named-checkconf
[root@CentOS7 ~]
# systemctl start named
[root@centos7 ~]# ll /var/
named/slaves/
total
4
(2)用從服務器解析www.linuxidc.com-rw-r--r--.
1 named named 348May
26 15:
22linuxidc.com
[root@centos7 ~]#
dig -t A www.linuxidc.com@
192.168.29.3
[……]
;;
ANSWER SECTION:
www.linuxidc.com. 86400
IN A172
.16.254.13
;;
AUTHORITY SECTION:
linuxidc.com. 86400
IN NS slave.linuxidc.com.
mytest.com. 86400
IN NS ns1.linuxidc.com.
;;
ADDITIONAL SECTION:
ns1.linuxidc.com. 86400
IN A192
.168.29.100
slave.linuxidc.com. 86400
IN A192
.168.29.3
;;
Query time: 2
msec
;;
SERVER: 192
.168.29.3#53(192
.168.29.3)
;;
WHEN: Fri May26 15
:37:13 CST2017
可以看到解析成功。說明從服務器已生效。;;
MSG SIZE rcvd: 129
[root@CentOS7 ~]
# cat /var/named/linuxidc.com.zone
$TTL 1D
$ORIGIN linuxidc.com.
@
INSOA linuxidc.com. admin.linuxidc.com. (
20170526; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
linuxidc.com.
INNS ns1.linuxidc.com.
mytest.com.
INNS slave.linuxidc.com.
haha.linuxidc.com.
INNS ns2.haha.linuxidc.com.
###新添加的行
ns1
INA
192.168.
29.100
slave
INA
192.168.
29.3
www
INA
172.16.
254.13
ftp
INA
1.1.
1.1
ns2.haha.linuxidc.com.
INA
192.168.
29.110 ###新添加行,指明子域服務器IP地址。
[root@CentOS7 ~]
# vim /etc/named.conf
listen-
onport
53{ any; };
allow-query { any; };
recursion
yes;
dnssec-enable
no;
dnssec-validation
no;
[root@CentOS7 ~]# vim /etc/
named.rfc1912.zones
zone
"haha.linuxidc.com" IN{
type master;
file "haha.zone";
allow-
transfer{
192.168.29.0/
24; };
};
[root@CentOS7 ~]
# vim /var/named/haha.zone
$TTL 1D
$ORIGIN haha.linuxidc.com.
@
INSOA haha.linuxidc.com. admin.haha.linuxidc.com. (
20170528; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
haha.linuxidc.com.
INNS ns2.haha.linuxidc.com.
ns2
INA
192.168.
29.110
www
INA
172.16.
11.11
ftp
INA
2.2.
2.2
[root@CentOS7 ~]
# named-checkconf
[root@CentOS7 ~]
# systemctl start named
[root@centos7 ~]#
dig -t A www.haha.linuxidc.com@
192.168.29.100
; <<>>
DiG9
.9.4-RedHat-9.9.4-37.el7<<>>
-t A www.haha.linuxidc.com@
192.168.29.100
[…….]
;
www.haha.linuxidc.com.
IN A
;;
ANSWER SECTION:
www.haha.linuxidc.com. 86400
IN A172
.16.11.11
;;
AUTHORITY SECTION:
haha.linuxidc.com. 86400
IN NS ns2.haha.linuxidc.com.
;;
ADDITIONAL SECTION:
ns2.haha.linuxidc.com可以看到,已經可以成功解析. 86400
IN A192
.168.29.110
相關文章