在互联网中,使用ip地址与服务器进行通信是行不通的,因为IP地址不好记忆,同时IP地址可能会经常变更。DNS主要用来管理域名与IP地址的对应关系表。
DNS(Domain Name System,域名系统):作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。
域名解析就是域名到IP地址的转换过程。DNS协议工作在应用层,端口号:53。
作用:进行域名解析,我们人记ip地址比较难记住,记住名字比较容易。
每个IP地址都可以有一个主机名,主机名由一个或多个字符串组成,字符串之间用小数点隔开。
正向解析:根据域名查找对应的IP地址。
反向解析:根据IP地址查找对应的域名。
主DNS服务器:就是一台存储着原始资料的DNS服务器。
从DNS服务器:使用自动更新方式从主DNS服务器同步数据的DNS服务器。
缓存服务器:不负责本地解析,采用递归方式转发客户机查询请求,并返回结果给客户机的DNS服务器,同时缓存查询回来的结果。
转发器:这台DNS发现非本机负责的查询请求时,不再向根域发起请求,而是直接转发给指定的一台或者多台服务器,自身并不缓存查询结果。
由于互联网中的域名和IP地址对应关系数据库过于庞大,DNS域名解析服务采用了类似于目录树的层次结构来记录域名和IP地址之间的对应关系,从而形成了一个分布式的数据库系统。
组织域
根域:包含所有顶级域名服务器的域名和ip地址。
国家域
FQDN:完全符合要求的域名 (Fully Qualified Domain Name):主机名+域名。
1984年,加州大学伯克利分校的几个学生完成了Unix名称服务的实现,起名叫做Berkeley Internet Name Domain(BIND)。
bind的发行版一般包含三个部分:域名服务器、域名解析器库、软件测试工具。bind是一个开源的,稳定的,应用广泛的DNS服务。
阿里云
腾讯云
华为云
等
下载bind-utils(bind-utils 提供了很多的dns域名查询的命令))
查询追踪整个域名解析的过程。
如果主机查询的本地域名服务器不知道被查询域名的IP地址,那么本地域名服务器就会向根域名服务器发送请求报文(即替该主机继续查询)。因此,递归查询的结果只有两种,一是查询到该IP地址;二是无法查询到该IP地址。
当根域名服务器收到本地域名服务器发出的迭代查询的请求报文时,一是告诉本地域名服务器要查询的IP地址;二是告诉本地域名服务器下一步去那个顶级域名服务器继续查询,而不是替本地域名服务器进行查询,接着本地域名服务器去请求顶级域名服务器,顶级域名服务器收到请求后,要么给出查询的IP地址,要么告诉本地域名服务器下一步去那个二级域名服务器查询,本地域名服务器就这样进行迭代查询,最后把结果返回给主机。
以www.baidu.com为例:
1.浏览器有缓存,首先查看浏览器缓存里是否有对应的dns域名解析或者本机里是否有dns缓存 --》浏览器缓存和客户机系统缓存,都可以缓存dns域名解析。
2.操作系统缓存。
3.客户机先查看本机的hosts文件是否有对应的域名解析。
4.如果缓存和hosts文件里都没有对应的域名解析记录,就会向本地dns服务器(本地的路由器)发起域名解析的请求,本地路由器会在缓存里查找。
5.本地域名服务器先查看缓存,如果缓存里有就直接给用户,如果没有就会问根域名服务器要(或者向ISP DNS 服务器请求域名,如果ISP DNS 服务器里没有,就会向根域名服务器发起请求)。
6.根域名服务器获得了本地dns服务器需要查询的域名www.baidu.com后,会告诉本地dns域名服务器下一级的域名服务器.com.的ip地址,接着本地dns服务器就会向.com服务器查询www.baidu.com域名,.com服务器查询出baidu.com这个域名对应的dns服务器,会告诉本地dns服务器,然后本地dns服务器去访问baidu.com.域名服务器,查询www对应的ip,最后本地dns服务器获取到www.baidu.com对应的ip后,马上添加到缓存里,接着告诉客户机www.baidu.com域名的ip地址。
7.客户机访问www.baidu.com域名对应的ip地址的服务器。
浏览器缓存--》操作系统缓存--》hosts文件---》本地的路由器缓存---》ISP DNS服务器--》根服务器 。
简单来说,一条域名的DNS记录会在本地有两种缓存:浏览器缓存和操作系统(OS)缓存。在浏览器中访问的时候,会优先访问浏览器缓存,如果浏览器缓存里没有则访问OS缓存,最后再访问DNS服务器(一般是ISP提供)。
DNS记录会有一个ttl值(time to live),单位是秒,意思是这个记录最大有效期是多少。经过实验,OS缓存会参考ttl值,但是不完全等于ttl值,而浏览器DNS缓存的时间跟ttl值无关,每种浏览器都使用一个固定值。无线路由器也是一个dns服务器(缓存的dns服务器),当它不知道的时候,就会问根域名服务器要。
Linux里hosts文件路径
windows里hosts文件路径
dns解析的过程:先看hosts文件里是否有对应的域名,如果没有就问dns服务器要,进行域名解析。hosts文件的缺点: 只能给自己做域名解析。dns的好处: 整个互联网里的机器都可以解析,服务的范围要广。
会导致大面积的人上不网,但是能登陆。
DNS劫持就是通过各种技术手段取得域名的解析控制权,进而修改域名的解析记录,将域名指向的服务器IP修改为受控制的IP地址,从而将用户引导至虚假网站,实现窃取用户信息,破坏正常服务的目的。
网域服务器缓存污染(DNS cache pollution),又称域名服务器缓存投毒(DNS cache poisoning),是指一些刻意制造或无意中制造出来的域名服务器数据包,把域名指往不正确的IP地址。
CDN的全称是Content Delivery Network,即内容分发网络。其基本思路是尽可能避开互联网上有可能影响数据传输速度和稳定性的瓶颈和环节,使内容传输得更快、更稳定。
通过在网络各处放置节点服务器所构成的在现有的互联网基础之上的一层智能虚拟网络,CDN系统能够实时地根据网络流量和各节点的连接、负载状况以及到用户的距离和响应时间等综合信息将用户的请求重新导向离用户最近的服务节点上。其目的是使用户可就近取得所需内容,解决 Internet网络拥挤的状况,提高用户访问网站的响应速度。
CDN的作用: 缓存,加速。
name deamon:named 提供域名服务的进程的名字。named 是dns的服务的名字
守护进程: 一直在内存里运行的,除非人为的停止。
查看进程和端口号
修改/etc/resolv.conf文件
本机测试查询
存放了根服务器信息的文件(named.ca),named.ca 记录13台根域名服务器地址的文件。
1.查看dns服务器地址
2.查看路由表--》网关
3.查看ip地址
主配置文件:/etc/named.conf,次配置文件:/etc/named.rfc1912.zones,主进程名字:named。
A: 一个名字对应一个ip address --》ipv4,AAAA --》ipv6
NS: 某个域名里的dns server 服务器 name server --》dns服务器记录。
CNAME: 别名记录,一个域名指向另外一个名字。
MX: 执行本公司的邮件服务器 mail exchange。
txt:如果希望对域名进行标识和说明,可以使用 TXT 记录, TXT 记录多用来做 SPF 记录(反垃圾邮件)。
/etc/named.rfc1912.zones 是存放本机能进行域名解析的区域数据(域名)。
/var/named/ 存放dns域名解析的数据文件。
添加上面的配置,建议在localhost的后面。
复制产生一个sc.com.zone的数据文件。
检查数据文件是否有错误
刷新named服务
1.看日志(/var/log/messages 日志文件)
2.使用检测工具(named-checkzone)
检测配置文件和数据文件。
到此这篇ip查域名解析(查看域名解析的ip)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!版权声明:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权、违法违规、事实不符,请将相关资料发送至xkadmin@xkablog.com进行投诉反馈,一经查实,立即处理!
转载请注明出处,原文链接:https://www.xkablog.com/bcyy/19171.html