DNS及域名

一. 域名

IP地址难以记忆,所以我们一般使用域名对网站进行访问

例如:www.baidu.com

严格的域名最后还有一个".",但一般省略不写,"."是根域的意思。

域名分为三个分布,用"."分割:

  • 类型               表示此域名类型(com,net,edu,gov等)
  • 域名               域名称             
  • 主机名           该域中的某台主机名称

例如:www.baidu.com   # www是主机名,baidu是域名,com是类型 

# 域名大小写不敏感。

二. DNS

每个域名代表一个IP,而DNS就是用来在IP与域名之间进行转换的服务。

域名系统(英文:Domain Name System,缩写:DNS)是互联网的一项服务。它作为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便地访问互联网。DNS使用TCP和UDP端口53[1]。当前,对于每一级域名长度的限制是63个字符,域名总长度则不能超过253个字符。

DNS系统中,常见的资源记录类型有:

记录资源类型(Type) 表示内容
A IPV4地址
AAAA IPV6地址
MX 邮件记录
CNAME 别名
RTP 指针(逆向解析)
SRV 服务资源

三. DNS 客户端

我们日常使用的支持网络的计算机一般都是作为一个DNS客户端使用,应用程序、服务、进程等等通过操作系统底层的功能发起对DNS服务器的查询、对指定域名进行解析

Linux中一般使用系统底层提供的gethostbyname()功能进行域名解析

解析可以基础一下几种方式进行:

  • 文件(/etc/hosts 、 /etc/networks)
  • DNS
  • NIS

可以通过配置文件/etc/nsswitch.conf控制查询顺序,规则如下:

hosts: files dns

四. DNS专用查询命令

命令host可用于进行dns查询:

host www.baidu.com

命令dig用于进行dns查询,输出较为详细的信息:

dig www.baidu.com

命令host 、dig都不会使用/etc/nsswitch.conf配置,只会通过/etc/resolv.conf进行dns查询

DNS查询是根据域名从右到左查询,域名每一级由独立的一个或多个服务器组成。

我们来做个小例子:

[root@localhost ~]# dig +track www.baidu.com
Invalid option: +track
Usage:  dig [@global-server] [domain] [q-type] [q-class] {q-opt}
            {global-d-opt} host [@local-server] {local-d-opt}
            [ host [@local-server] {local-d-opt} [...]]

Use "dig -h" (or "dig -h | more") for complete list of options
[root@localhost ~]# dig +trace www.baidu.com
; <<>> DiG 9.9.4-RedHat-9.9.4-61.el7 <<>> +trace www.baidu.com
;; global options: +cmd
.                       71927   IN      NS      j.root-servers.net.
.                       71927   IN      NS      m.root-servers.net.
.                       71927   IN      NS      f.root-servers.net.
.                       71927   IN      NS      h.root-servers.net.
.                       71927   IN      NS      l.root-servers.net.
.                       71927   IN      NS      g.root-servers.net.
.                       71927   IN      NS      c.root-servers.net.
.                       71927   IN      NS      a.root-servers.net.
.                       71927   IN      NS      i.root-servers.net.
.                       71927   IN      NS      d.root-servers.net.
.                       71927   IN      NS      b.root-servers.net.
.                       71927   IN      NS      k.root-servers.net.
.                       71927   IN      NS      e.root-servers.net.
;; Received 811 bytes from 114.114.114.114#53(114.114.114.114) in 356 ms

com.                    172800  IN      NS      e.gtld-servers.net.
com.                    172800  IN      NS      b.gtld-servers.net.
com.                    172800  IN      NS      j.gtld-servers.net.
com.                    172800  IN      NS      m.gtld-servers.net.
com.                    172800  IN      NS      i.gtld-servers.net.
com.                    172800  IN      NS      f.gtld-servers.net.
com.                    172800  IN      NS      a.gtld-servers.net.
com.                    172800  IN      NS      g.gtld-servers.net.
com.                    172800  IN      NS      h.gtld-servers.net.
com.                    172800  IN      NS      l.gtld-servers.net.
com.                    172800  IN      NS      k.gtld-servers.net.
com.                    172800  IN      NS      c.gtld-servers.net.
com.                    172800  IN      NS      d.gtld-servers.net.
com.                    86400   IN      DS      30909 8 2 E2D3C916F6DEEAC73294E8268FB5885044A833FC5459588F4A9184CF C41A5766
com.                    86400   IN      RRSIG   DS 8 1 86400 20180908170000 20180826160000 41656 . 0RIPVE6rtr5bDfC/DJAetjicjALopPy5ScJ14QPwkUBtJEu9G9/7JjuQ IPfSDJmu2E7AsH1B69FeZoLGYFIVJBDV/NpHh2rhziO8h5yiT7PY6j5a w2Xcr2KZdjrh0u+2qtxHL+W61EkSd+dBrsveEzP3P3JS8NxiJXYRElK9 pAD8a3wL57Qu6pXjXHni10lmoOkF6HrgsvPWBVD04y8GTgrUhOWPVsZ/ hLuGOyHIVsDLaBkbOQezHmPrbN2V3TAkNTIZy2cVP104EsdP7PnKKByF g6/QFpk2XQ4Lw/i9ml/keM6ZnxsrV0MZubrqwHJb8DmlWKbVCWiYSpxk G5xOuQ==
;; Received 1173 bytes from 198.41.0.4#53(a.root-servers.net) in 722 ms

baidu.com.              172800  IN      NS      dns.baidu.com.
baidu.com.              172800  IN      NS      ns2.baidu.com.
baidu.com.              172800  IN      NS      ns3.baidu.com.
baidu.com.              172800  IN      NS      ns4.baidu.com.
baidu.com.              172800  IN      NS      ns7.baidu.com.
CK0POJMG874LJREF7EFN8430QVIT8BSM.com. 86400 IN NSEC3 1 1 0 - CK0Q1GIN43N1ARRC9OSM6QPQR81H5M9A NS SOA RRSIG DNSKEY NSEC3PARAM
CK0POJMG874LJREF7EFN8430QVIT8BSM.com. 86400 IN RRSIG NSEC3 8 2 86400 20180901044508 20180825033508 46475 com. lYz9DxGlAM+QMcHa6AjjWj3UHjFRLGHnJ3oN8UG6iTeoxwvPXMK+l+Tt ZJk3lHD/pYmWk4T4xQe2RdFQl9ccdkbLbunYoJVoApa94GVJ/7Nk74zs rB32keLDIklgdG+hhkfFLn8o1hIAAFtRBjIhQBcL9YiVjGY26yt/zlYw 3P8=
HPVV2B5N85O7HJJRB7690IB5UVF9O9UA.com. 86400 IN NSEC3 1 1 0 - HPVVP23QUO0FP9R0A04URSICJPESKO9J NS DS RRSIG
HPVV2B5N85O7HJJRB7690IB5UVF9O9UA.com. 86400 IN RRSIG NSEC3 8 2 86400 20180903042833 20180827031833 46475 com. Cxk5TA6vVk6jKuv8epDFUfaFCD8QqDIgRw4EHpeCb1W4a0Bde/2CE+Qb RhqoPqH49uE2eJ3Lh8yf7ydMWG2Lh4ESb9At69QQumM7l/0PWW5AKuS1 UjR23o5+YI9K8wSDHJOSiBjGNKOaDkBQPs0jaR8d7+aXFdM6DQpzJpie 9vw=
;; Received 697 bytes from 192.48.79.30#53(j.gtld-servers.net) in 2058 ms

www.baidu.com.          1200    IN      CNAME   www.a.shifen.com.
a.shifen.com.           1200    IN      NS      ns4.a.shifen.com.
a.shifen.com.           1200    IN      NS      ns1.a.shifen.com.
a.shifen.com.           1200    IN      NS      ns2.a.shifen.com.
a.shifen.com.           1200    IN      NS      ns3.a.shifen.com.
a.shifen.com.           1200    IN      NS      ns5.a.shifen.com.
;; Received 239 bytes from 202.108.22.220#53(dns.baidu.com) in 24 ms

 # 从.开始查询到com.再到baidu.com.最后到www.baidu.com.

 五. DNS服务器类型

1. Primary DNS Server (master)

    一个域的主服务器保存该域的zone配置文件,该域所有配置、更改都在该服务器上进行。

2. Seconday DNS Server (Slave)

    从服务器一般作为冗余负载使用,一个域名的从服务器从该域的主服务器上抓取zone配置文件,从服务器不进行信息修改,所有修改与主服务器同步。

3. Caching only Server

    DNS缓存服务器不存在任何zone文件,仅仅依靠缓存为客户端提供服务,通常用于负载均衡及加速访问使用。

ZONE 配置文件内容示例:

$TTL	86400 ; 24 hours could have been written as 24h or 1d
; $TTL used for all RRs without explicit TTL value
$ORIGIN example.com.
@  1D  IN  SOA ns1.example.com. hostmaster.example.com. (
			      2002022401 ; serial
			      3H ; refresh
			      15 ; retry
			      1w ; expire
			      3h ; nxdomain ttl
			     )
       IN  NS     ns1.example.com. ; in the domain
       IN  NS     ns2.smokeyjoe.com. ; external to domain
       IN  MX  10 mail.another.com. ; external mail provider
; server host definitions
ns1    IN  A      192.168.0.1  ;name server definition     
www    IN  A      192.168.0.2  ;web server definition
ftp    IN  CNAME  www.example.com.  ;ftp server definition
; non server domain hosts
bill   IN  A      192.168.0.3
fred   IN  A      192.168.0.4 

高级查询

dig -t mx baidu.com         # 查询邮件交换记录信息

dig -x www.badiu.com     # 逆向查询(有些网站没有这一项)

dig -t soa  baidu.com      # 查询soa信息

这里只做一个查询soa信息实例:

猜你喜欢

转载自blog.csdn.net/weixin_42125267/article/details/82110603