586 字
3 分钟
DNS
DNS 是什么?
它的作用是把域名:
www.baidu.com转换成计算机通信所需要的 IP 地址:
110.242.68.66DNS 查询大概怎么进行?
执行:
ping www.baidu.com系统需要先查到 www.baidu.com 的 IP:
程序 ↓检查 /etc/hosts ↓询问 DNS 服务器 ↓获得 IP 地址 ↓连接该 IP当然了,更完整的 DNS 查询可能涉及:
本机 → DNS 递归服务器 → 根 DNS → .com DNS → baidu.com 权威 DNS/etc/resolv.conf
这是 Linux 中常见的 DNS 解析配置文件。
查看:
cat /etc/resolv.conf看到:
nameserver 127.0.0.53search localdomainoptions edns0nameserver
nameserver 8.8.8.8表示系统查询域名时,向 8.8.8.8 这台 DNS 服务器询问。
常见公共 DNS:
8.8.8.8 Google DNS1.1.1.1 Cloudflare DNS223.5.5.5 阿里公共 DNS119.29.29.29 腾讯公共 DNSnameserver 127.0.0.11这是 Docker 提供的内部 DNS。
search
例如:
search example.com当你查询:
ping server系统可能尝试查询:
server.example.com/etc/hosts
/etc/hosts 是本机的静态域名映射文件。
查看:
cat /etc/hosts常见内容:
127.0.0.1 localhost::1 localhost格式:
IP地址 域名例如加入:
192.168.1.20 test.local以后执行:
ping test.local系统会把它解析为:
192.168.1.20这就是涉及一个dns优先解析的说法了,之前大学长给我提一个在白宫官网挂黑页的时候,我一开始就是学习到了这个方法,就是让白宫这个域名指向我们本地弄好的黑页网站。
通常系统会先查询 /etc/hosts,再查询 DNS。
dig
功能最完整,适合查看 DNS 详细信息:
dig baidu.com只看返回的 IP:
dig +short baidu.com可能输出:
110.242.68.6639.156.66.10指定 DNS 服务器查询:
dig @8.8.8.8 baidu.com其中:
@8.8.8.8表示向 8.8.8.8 查询。
nslookup
比较容易使用:
nslookup baidu.com可能显示:
Server: 127.0.0.53Address: 127.0.0.53
Name: baidu.comAddress: 110.242.68.66其中:
Server:当前使用的 DNS 服务器Name:查询的域名Address:解析出的 IP
指定服务器:
nslookup baidu.com 8.8.8.8host
输出比较简洁:
host baidu.com可能显示:
baidu.com has address 110.242.68.66反向查询 IP 对应的域名:
host 8.8.8.8常见 DNS 记录类型
| 类型 | 作用 |
|---|---|
A | 域名指向 IPv4 地址 |
AAAA | 域名指向 IPv6 地址 |
CNAME | 域名指向另一个域名 |
MX | 邮件服务器 |
NS | 域名使用的 DNS 服务器 |
TXT | 文本信息、域名验证等 |
PTR | IP 反向解析为域名 |
查询指定记录:
dig baidu.com Adig baidu.com AAAAdig baidu.com MXdig baidu.com NSdig baidu.com TXT
- 版权声明:本文由 余林阳 创作,转载请注明出处。
喜欢这篇文章吗?
点击右侧按钮为文章点赞,让更多人看到!
在下余林阳