DNS学习笔记

DNS:根据域名查出IP地址

常用的工具:dig
MACBook下自带dig工具
Ubuntu14.04 可以通过命令安装: apt-get install dnsutils

DNS学习笔记_第1张图片
image.png

上面结果显示, math.stackexchange.com有四个 A记录,即四个IP地址。293是TTL值,表示缓存时间,即293秒内不用重新查询

DNS服务器是怎么会知道每个域名的IP地址呢?答案是分级查询

域名的层级结构:
主机名:次级域名:顶级域名:根域名
每一级域名都有自己的NS记录,NS记录指向该级域名的域名服务器。这些服务器知道下一级域名的各种记录

所谓分级查询,就是从根域名开始,依次查询每一级域名的NS记录,直到查到最终的IP地址

  1. 从“根域名服务器”查到“顶级域名服务器”的NS记录和A记录(IP地址)
  2. 从“顶级域名服务器”查到“次级域名服务器”的NS记录和A记录
  3. 从“次级域名服务器”查到“主机名”的IP地址

DNS记录类型

  1. A: 地址记录,返回域名指向的IP地址
  2. NS:域名服务器记录,返回保存下一级域名服务器地址。该记录只能设置为域名,不能设置为IP地址
  3. CNAME:规范名称记录,返回另一个域名,即当前域名是另一个域名的跳转
  4. PTR: 逆向查询记录,只用于从IP地址查询域名
  5. MX: 邮件记录,返回接收电子邮件的服务器地址

DNS学习笔记_第2张图片
image.png

上面结果显示, www.baidu.com的CNAME记录指向 www.a.shifen.com。也就是说,用户查询 www.baidu.com的时候,实际上返回的是 www.a.shifen.com的IP地址(在浏览器上输入IP:220.181.112.244就能访问百度)。这样的好处是:变更服务器IP地址的时候,只需修改 www.a.shifen.com这个域名就可以了,用户的 www.baidu.com域名不需要修改

PTR记录用于从IP地址反差域名。

DNS学习笔记_第3张图片
image.png

其他DNS工具

DNS学习笔记_第4张图片
image.png

DNS学习笔记_第5张图片
image.png

Linux系统中,DNS域名解析是通过/etc/resolv.conf配置的
它的格式很简单,每行以一个关键字开头,后接配置参数

nameserver: DNS服务器的IP地址,可以有很多行的nameserver,每一个带一个IP地址,在查询的时候就按nameserver在本文件中的顺序进行
domain: 主机的域名,当为没有域名的主机进行DNS查询时使用
search: DNS服务器搜索域,它的多个参数指明域名查询顺序,当要查询没有域名的主机时,主机将在由search声明的域中分别查找
options: DNS解析选项值,以Key/Value对的方式出现

/etc/hosts

这个文件可以配置主机IP及其对应的主机名
ssh-copy-id命令可以把本地主机的公钥复制到远程主机的authorized_keys文件上
ssh-copy-id -i .ssh/id_rsa.pub [email protected]
在本地/etc/hosts

192.168.112.12  my-ubuntu

以后就可以用ssh my-ubuntu免密登录了

引用:http://www.ruanyifeng.com/blog/2016/06/dns.html

你可能感兴趣的:(DNS学习笔记)