服务器维护小知识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:
测试成功!!!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
相关文章