赞
踩
domain name system
1、DNS系统在网路中的作用就是一个维护着一个地址数据库,其中记录了各种主机的域名与IP地址的对应关系。
2、DNS系统为客户提供了正向或反向的地址查询服务,及正向解析和方向解析,正向解析即根据域名查IP地址;反向解析即根据IP地址查域名。
3、DNS服务器按类型可分为缓存主域名服务器、从域名服务器等。其中主服务器是指定区域中唯一存在的权威服务器,对解析记录有自主控制权;从服务器与主服务器提供完全相同的DNS解析服务,通常用于DNS服务器的热备份
域名服务主要是基于UDP实现的,服务器的端口号为53。
C/S架构模型
Linux中一般使用系统底层提供的gethostbyname()功能进行域名解析
解析可以基于以下几种方式进行
linux系统中有两个文件
/etc/hosts 和 /etc/networks
[root@localhost ~]# cat /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
[root@localhost ~]# cat /etc/networks
##把localhost 解析为127.0.0.1
default 0.0.0.0
loopback 127.0.0.0
link-local 169.254.0.0
几乎所有的域名都通过DNS域名服务器来解析的
DNS配置文件在/etc/resolv.conf
只需要在nameserver后面添加dns服务器ip即可
[root@localhost ~]# cat /etc/resolv.conf
# Generated by NetworkManager
search localdomain
nameserver 192.168.202.2
使用前 yum install bind-utils
1.host dns查询
2.dig dns查询 详细
host和dig都不会使用/etc/nsswitch.conf配置,只会通过/etc/resolv.conf进行dns查询,即绕过前面那个文件配置
3.nslookup命令
host命令是一个简单的DNS查询工具。
一般格式:
host 域名
host -a 域名
常用选项:
-a:相当于"-v -t any"。
-t type:指定要查询的记录类型。默认查询A、AAAA、MX,NS等记录。
-v:详细方式输出。
dig命令是一个功能强大的DNS查询命令。
一般格式:
dig [@global-server] [domain] [q-type] [q-class] {q-opt} {d-opt}
参数说明:
@global-server:默认是以/etc/resolv.conf作为DNS查询的主机,这里可以填入其它DNS主机IP。
domain:要查询的域名。
q-type:查询记录的类型,例如a、any、mx、ns、soa、hinfo、axfr、txt等,默认查询a。
q-class:查询的类别,相当于nslookup中的set class。默认值为in(Internet)。
q-opt:查询选项,可以有好几种方式,比如:-f file为通过批处理文件解析多个地址;-p port指定另一个端口(缺省的DNS端口为53),等等。
d-opt:dig特有的选项。使用时要在参数前加上一个“+”号。
d-opt常用选项:
+vc:使用TCP协议查询。
+time=###:设置超时时间。
+trace:从根域开始跟踪查询结果。整个过程
nslookup命令使用频率比dig要高,可能是因为windows上没有dig命令吧。
一般格式:
nslookup [-option] [name | -] [server]
参数说明:
option:表示一些选项。这些选项可以通过set命令设置修改。
name:表示查询的域名。
server:可以指定DNS主机IP。
set命令说明:
set all:打印当前的选项值。
set calss=value:设置查询的类型,一般情况下为Internet。
set debug:设置调试模式。
set d2:设置详细调试模式。
set domin=name:设置默认的域名。
set search:
set port=value:设置DNS端口。
set querytype=value:改变查询的信息的类型。默认的类型为A纪录。
set type=value:和set querytype一样。
set recurse:设置查询类型为递归;若为set norecurse,查询类型为跌代;缺省为前者。
set retry=number:设置重试的次数。
set timeout=number:设置等待应答的限制时间(单位为秒),超出即为超时,如果还可以重试,就会将长超时值加倍,重新查询。
set vc:通过tcp方式查询。
set fail:
[root@localhost ~]# host www.baidu.com www.baidu.com is an alias for www.a.shifen.com. www.a.shifen.com has address 14.215.177.38 www.a.shifen.com has address 14.215.177.39 [root@localhost ~]# dig www.baidu.com ; <<>> DiG 9.11.4-P2-RedHat-9.11.4-26.P2.el7_9.9 <<>> www.baidu.com ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 2609 ;; flags: qr rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 5, ADDITIONAL: 7 ##头部总结 ;; QUESTION SECTION: ;www.baidu.com. IN A ;; ANSWER SECTION: www.baidu.com. 5 IN CNAME www.a.shifen.com. www.a.shifen.com. 5 IN A 14.215.177.38 www.a.shifen.com. 5 IN A 14.215.177.39 ##返回的消息 ;; AUTHORITY SECTION: a.shifen.com. 5 IN NS ns1.a.shifen.com. a.shifen.com. 5 IN NS ns5.a.shifen.com. a.shifen.com. 5 IN NS ns3.a.shifen.com. a.shifen.com. 5 IN NS ns2.a.shifen.com. a.shifen.com. 5 IN NS ns4.a.shifen.com. ;; ADDITIONAL SECTION: ns1.a.shifen.com. 5 IN A 110.242.68.42 ns2.a.shifen.com. 5 IN A 220.181.33.32 ns3.a.shifen.com. 5 IN A 112.80.255.253 ns4.a.shifen.com. 5 IN A 14.215.177.229 ns5.a.shifen.com. 5 IN A 180.76.76.95 ns5.a.shifen.com. 5 IN AAAA 240e:940:603:a:0:ff:b08d:239d ns5.a.shifen.com. 5 IN AAAA 240e:bf:b801:1006:0:ff:b04f:346b ;; Query time: 39 msec ;; SERVER: 192.168.202.2#53(192.168.202.2) ##53端口去响应 ;; WHEN: Mon Mar 21 15:17:09 CST 2022 ;; MSG SIZE rcvd: 316 ##尾部的总结 #查询时间 #when #大小 [root@localhost ~]# nslookup www.baidu.com Server: 192.168.202.2 Address: 192.168.202.2#53 ##53端口 Non-authoritative answer: www.baidu.com canonical name = www.a.shifen.com. ##canonical也是别名的意思 Name: www.a.shifen.com Address: 14.215.177.39 Name: www.a.shifen.com Address: 14.215.177.38 ##两个服务器,可以看出有个负载均衡 #nslookup不加参数 可以交互式使用
A(解析为IP地址)(域名指向ipv4地址)(IP和域名的解析关系)
AAAA(域名指向ipv6)
PTR记录 :是A记录的逆记录,负责将ip反向解析为域名
cname是一个别名(解析的别名)
SOA记录:起始授权记录(开始授权的东西)起始授权机构记录,NS用于标识多态域名解析服务器,SOA记录用于在众多的NS记录中标识那一台是主服务器
NS(Name Server)记录是域名服务器记录,用来指定该域名由哪个DNS服务器来进行解析。
MX记录:mail exchang 建立电子邮箱服务,将指向邮箱服务器地址;定义了发XXX@ABC.COM邮箱的邮件服务器地址。
TXT记录:可任意填写,可以为空,一般做一些验证记录时会用到此项;这个记录的内容是文本格式如126.COM的TXT为"v=spf1 include:spf.163.com -all",TXT通常用于邮件服务器来标识自己的身份避免被认为是垃圾邮件服务器。这里不再深入讨论。
SRV记录:添加服务记录服务器,服务记录时会添加此项,SRA记录了哪台服务器提供了那个服务。格式为服务器的名字.协议的类型例如:example.tcp
显性URL转发记录
将域名指向一个http(s),访问域名时自动跳转至目标地址。ex:访问www.baidu.com显性转发到,www.baidu.cn,地址栏显示,www.baidu.cn。
隐性URL转发记录
将域名指向一个http(s),访问域名时自动跳转至目标地址。隐性转发会隐藏真实的目标地址。ex:访问www.baidu.com隐性转发到,www.baidu.cn,地址栏显示,www.baidu.com。
主机记录:
实际使用
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。