DNS forward and reverse resolution

Introduction to the DNS system

In daily life, people are accustomed to using domain names to access servers, but machines only recognize IP addresses each other. There is a many-to-one relationship between domain names and IP addresses. An ip address does not necessarily correspond to one domain name, and one domain name can only correspond to one. IP address, the conversion between them is called domain name resolution, domain name resolution needs to be completed by a dedicated domain name resolution server, and the whole process is carried out automatically.

Definition of DNS

DNS is the abbreviation of "Domain Name System". As a distributed database that maps domain names and IP addresses to each other, it can make it easier for people to access the Internet.
The NDS service uses TCP and UDP port 53, TCP port 53 is used to connect to the DNS server, and UDP port 53 is used to resolve DNS.
The length of each first-level domain name is limited to 63 characters, and the total length of the domain name cannot exceed 253 characters.

Distributed data structure of DNS system

Insert picture description here

Domain name structure:

http://www.sina.com.cn./
http://hostname.second-level domain.top-level domain root domain/

The top level of the tree structure is called the root domain, which is indicated by ".". The corresponding server is called the root server. The resolution power of the entire domain name space belongs to the follow server, but the root server cannot bear the huge load. The “delegate” mechanism is adopted. Some top-level domains are set up under the root domain, and then different top-level domain resolution powers are delegated to the corresponding top-level domain servers. For example, the resolution of the com domain is delegated to the com domain server, and the server will receive domain name resolution ending with com. Requests will be forwarded to the com domain server. For the same reason, in order to reduce the pressure of the top-level domain, a number of second-level domains are set up, and the second-level domains are set up with third-level domains or hosts.

The root domain
is at the top of the domain name space and is generally represented by a "."

Top-level domains
generally represent a type of organization or country,
such as .net (network provider), .com (business enterprise), .org (group organization), .edu (educational institution), .gov (government department) , .Cn (Chinese national domain name)

The second-level domain is
used to indicate a specific organization in the top-level domain. The second-level domain names under the national top-level domain are managed by the national network department. For
example, the second-level domain names set under the .cn top-level domain name: .com.cn, .net.cn , .Edu.cn

Subdomains The domains
at all levels created under the second-level domains are collectively referred to as subdomains. Each organization or user can freely apply for registration of their own domain names.

Host The
host is located at the lowest level of the domain name space. It is a specific computer. For
example, www and mail are specific computer names, which can be represented by www.sina.com.cn. and mail.sina.com.cn. The method is called FQDN (Fully Qualified Domain Name), which is also the full name of this host in the domain name

DNS domain name resolution method

Forward resolution: Find the corresponding IP address based on the domain name.
Reverse resolution: Find the corresponding domain name based on the IP address.

DNS system type

Primary domain name server

Responsible for maintaining all domain name information in an area, it is the authoritative information source for all specific information, and the data can be modified. When constructing the main domain name server, you need to create the address data file of the area in charge by yourself.

From the domain name server

When the primary domain name server fails, shuts down, or is overloaded, the secondary domain name server serves as a backup service to provide domain name resolution services. The resolution result provided from the domain name server is not determined by yourself, but comes from the main domain name server. When constructing the secondary domain name server, you need to specify the location of the master domain name server so that the server can automatically synchronize the address database of the area.

Cache name server

It only provides the caching function of domain name resolution results to improve query speed and efficiency, but there is no domain name database. It obtains the result of each domain name server query from a remote server, puts it in the cache, and uses it to respond when querying the same information later. The cache domain name server is not an authoritative server, because all the information provided is indirect information. When constructing a cache domain name server, you must set the root domain or designate another DNS server as the source of resolution.

Forwarding domain name server

Responsible for local queries of all non-local domain names. After the forwarding domain name server receives the query request, it searches in its cache, and if it cannot find it, it forwards the request to the specified domain name server in turn until the result is found, otherwise it returns a result that cannot be mapped.

BIND service

BIND server-side program

  • Main executive program: /usr/sbin/named
  • Default listening port: 53
  • Main configuration file
  1. /etc/named.conf
  • The data file that saves DNS resolution records is located at
  1. /var/named/

Configure forward resolution

View the path of the configuration file that needs to be modified

rpm -qc bind #Query the path where the bind software configuration file is located
/etc/named.conf #Main configuration file
/etc/named.rfc1912.zones #Zone configuration file/
var/named/named.localhost #Zone data configuration file

Command configuration in Linux

Insert picture description here

Modify the main configuration file

vim /etc/named.conf
options {
    
    
    listen-on port 53 {
    
     192.168.80.10; };	●监听53端口,ip地址使用提供服务的本地IP,也可用any表示所有
#    listen-on-v6 port 53 {
    
     ::1; };			#ipv6行如不使用可以注释掉或者删除
    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     {
    
     192.168.80.0/24; 172.16.100.0/24; }; ●允许使用本DNS解析服务的网段,也可用any代表所有
	……
}
	
zone "." IN {
    
    						#正向解析“.”根区域
        type hint;					#类型为根区域
        file "named.ca";			#区域数据文件为named.ca,记录了13台根域服务器的域名和IP地址等信息
};

include "/etc/named.rfc1912.zones";		#包含区域配置文件里的所有配置

Insert picture description here

Modify the zone configuration file and add the forward zone configuration

vim /etc/named.rfc1912.zone			#可在文件里有模版,可复制粘贴后修改
zone "benet.com" IN {
    
    				●正向解析“benet.com”区域
        type master;				#类型为主区域
        file "benet.com.zone";		●指定区域数据文件为benet.com.zone
        allow-update {
    
     none; };
};

Insert picture description here

Configure the forward zone data file

cd /var/named/
cp -p named.localhost benet.com.zone	#保留源文件的权限和属主的属性复制
vim /var/named/benet.com.zone
$TTL 1D														#设置缓存解析结果的有效时间
@       IN SOA  benet.com. admin.benet.com. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      benet.com.									#记录当前区域的DNS服务器的名称
		A		192.168.80.10								#记录主机IP地址
www IN	A       192.168.80.200								#记录正向解析www.benet.com对应的IP
ftp	IN	CNAME	www											#CNAME使用别名,ftp是www的别名
*	IN	A		192.168.80.200								#泛域名解析,“*”代表任意主机名

Insert picture description here

Modification of DNS in the network card

Insert picture description here

result

Insert picture description here

Connect to local Windows

Turn off the firewall first
Insert picture description here

Insert picture description here

Insert picture description here

Solution when startup fails

If the service fails to start, you can check the log file to troubleshoot the error
tail -f /var/log/messages #If the
service is stuck, you can execute the following command to solve
rndc-confgen -r /dev/urandom -a

Configure reverse resolution

The main configuration file is consistent with the forward analysis configuration

Insert picture description here

(1) Modify the zone configuration file and add the reverse zone configuration

vim /etc/named.rfc1912.zone						#文件里有模版,可复制粘贴后修改
zone "80.168.192.in-addr.arpa" IN {
    
    				●反向解析的地址倒过来写,代表解析192.168.80段的地址
        type master;
        file "benet.com.zone.local";			●指定区域数据文件为benet.com.zone.local
        allow-update {
    
     none; };
};

Insert picture description here
Insert picture description here

(2) Configure the reverse zone data file

cd /var/named/
cp -p named.localhost benet.com.zone.local
vim /var/named/benet.com.zone.local
$TTL 1D
@       IN SOA  benet.com. admin.benet.com. (					#这里的“@”代表192.168.80段地址
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      benet.com.
        A       192.168.80.10
200 IN  PTR     www.benet.com.

#PTR为反向指针,反向解析192.168.80.200地址结果为www.benet.com.

Insert picture description here
Insert picture description here

result

Insert picture description here

Guess you like

Origin blog.csdn.net/Jun____________/article/details/113949882