DNS
DNS(Domain Name System,域名系统)是一种将域名转换为 IP 地址的系统。
说人话
DNS 说人话就是相当于是电话簿,将人名( 域名 )和对应的电话( IP 地址 )记录下来。因为浏览器不能直接使用域名进行访问,必须通过 IP 地址进行访问。在 Windows 中的 C:\Windows\System32\drivers\etc\hosts
文件中也存有常用的域名与 IP 的对应关系,但是一个文件甚至一台普通电脑肯定装不下全世界所有的域名和 IP 地址的对应关系,就好像你不可能将全世界 70 多亿人的手机号存进自己的电话簿里面一样。
于是就独立出一个服务器,让这台服务器专门去存储这个世界绝大多数的域名和 IP 地址的映射表,这个服务器就是我们所说的 DNS 服务器。
所以当一个 DNS 服务器的反应时间越快,网站的资源加载速度就越快(相同网络状况下),用户体验就越好。
DNS 的工作原理¶
- 用户输入域名:比如在浏览器中输入
www.leeyearn.cn
。 - DNS查询:浏览器会向本地 DNS 服务器发送查询请求,询问
www.leeyearn.cn
的IP地址是什么。 - 递归查询:如果本地 DNS 服务器没有该域名的记录,它会向上级 DNS 服务器发送请求,直到找到该域名的 IP 地址。
- 返回IP地址:一旦找到正确的 IP 地址,DNS 服务器将其返回给请求者(浏览器)。
- 访问网站:浏览器使用该 IP 地址与服务器建立连接,加载网页内容。
主要组成部分¶
- 域名:例如:
www.leeyearn.cn
。 - DNS 服务器:包括递归解析服务器和权威 DNS 服务器。递归解析服务器负责处理查询请求,权威 DNS 服务器则存储实际的域名解析记录。
- 记录类型:常见的有A记录(IPv4 地址)、AAAA记录(IPv6 地址)、CNAME记录(别名记录)、MX 记录(邮件交换)等。
常用的 DNS 服务商¶
服务商 | IPv4 首选 DNS | IPv4 备选 DNS | IPv6 首选 DNS | IPv6 备选 DNS | |
---|---|---|---|---|---|
阿里云 | 223.5.5.5 | 223.6.6.6 | 2400:3200::1 | 2400:3200:baba::1 | |
腾讯 | 119.29.29.29 | 182.254.116.116 | 2402:4e00:: | ||
谷歌 | 8.8.8.8 | 8.8.4.4 | 2001:4860:4860::8888 | 2001:4860:4860::8844 | |
Cloudflare | 1.1.1.1 | 1.0.0.1 | 2606:4700:4700::1111 | 2606:4700:4700::1001 | |
百度 | 180.76.76.76 | 124.251.124.251 | 2400:da00::6666 | ||
Microsoft | 4.2.2.1 | 4.2.2.2 | 无 | ||
OpenDNS | 208.67.222.222 | 208.67.220.220 | 2620:0:ccc::2 | 2620:0:ccd::2 |
IPv6 地址
IPv6 地址实际上是由 8 组 4 位 16 进制的数组成的,他的隐式值就是把为 0 的组省略,比如2400:3200::1
的显示值就是 2400:3200:0:0:0:0:0:1
,甚至有些需要 4 位 16 进制,那就是 2400:3200:0000:0000:0000:0000:0000:0001
。
因为有些设备要求为 IPv6 地址的所有八个字段提供显式值,不能接受缩写的 :: IPv6 地址语法。
DNS 污染 / 劫持¶
前面说到,我们在浏览器中进行网页访问是通过 DNS 将域名转为 IP 地址,但是如果这个 DNS 服务器被劫持篡改了,轻者可能会找不到我们想访问的网页或者访问到的网页全是广告,重者可能会通过复制你想访问的网页,根据你的操作获取你的用户信息密码,窃取个人资料。
虽然你从浏览器来讲,虽然你输入的域名没问题,你以为访问的是正确的网站,但是实际上给你提供的网站的服务器并不是同一个。
所以以任何方式污染或劫持 DNS 的行为,已经纳入违法行为
我国《刑法》第二百八十五条明确规定
非法侵入、控制计算机信息系统的法律责任。根据该法条,违反国家规定,侵入前款规定以外的计算机信息系统或者采用其他技术手段,获取该计算机信息系统中存储、处理或者传输的数据,或者对该计算机信息系统实施非法控制,情节严重的,处三年以下有期徒刑或者拘役,并处或者单处罚金;情节特别严重的,处三年以上七年以下有期徒刑,并处罚金。
劫持DNS通常涉及对计算机信息系统的非法控制,属于《中华人民共和国刑法》第二百八十五条所规定的“对该计算机信息系统实施非法控制”的行为。
法网恢恢,疏而不漏