windows中一种通过DNS静态映射阻止软件上网的方法
记录下某次偶然看到的屏蔽软件上网的方法。
这种方式主要是利用了计算机的本地DNS静态映射。当然,其他浏览器也访问不了这个网站了。23333
>.<
DNS 基本概念:
DNS(Domain Name System,域名系统)主要用于完成域名和 IP地址的映射关系。
计算机DNS工作原理:
- 当主机要去访问 http://www.XXX.com.cn 的服务器时,会首先检查本机 host 文件,如果该件中有该域名与IP的对应关系,就直接得到解析结果。
- 如果无结果,则查找 本地DNS解析器缓存 。如果系统缓存了该映射则可得到结果。
- 如果无结果,则会根据本机配置的 DNS 服务器 IP 地址向 本地域名服务器 进行查询。 (也即主机网卡所定义的 DNS 服务器,并且有时可能存在多张网卡或者IPv4/IPv6双栈的情况。默认情况应当 IPv4 DNS 优于 IPv6 DNS。此处不做过多介绍)。
- 如果无结果,则转发给上一级域名服务器或转发给根服务器。其他服务器根据(.com, .cn, .edu, …)域名,来判断谁来授权管理,并会返回一个负责该顶级域名服务器的一个IP。最终将结果返回给本地 DNS 解析器。
需要说明的是,以上描述仅是一个大概描述。DNS 的实际工作原理,请查看相关资料。
本操作的工作原理及过程:
由于本地 hosts 具有 DNS 的最高优先级权限,因此可以可以通过将目标域名映射为一个错误的 IP 地址从而防止系统登录。
1@:找到本地 host 文件夹。
此文件夹位于:
路径为 C:\Windows\System32\drivers\etc
2@:以记事本方式打开,并更改hosts文件。
这里新增了一个wireshark.org的本地静态域名。其基本格式为:
X
.
X
.
X
.
X
+
域名
+
#
注释
X.X.X.X + 域名 + \# 注释
X.X.X.X+域名+#注释
也即映射地址+域名,#用于表示注释。
@:此处将 www.wireshark.org 映射到了 127.0.0.1,这是一个本地环回地址。当然也可以选择其他地址。
@:注意输入时的空格。
@:此功能需要管理员权限。
实际效果:
浏览器效果
//已无法登录该网址。
使用前可能需要清空下 DNS 缓存,否则可能仍然可以访问。
windows 的DNS效果
![在这里插入图片描述](https://img-blog.csdnimg.cn/direct//ipconfig /displaydns 可在 cmd 命令行方式下查看效果。
cmd调用方式为:键盘win+Q,输入cmd以管理员方式打开。
windows 的DNS缓存:
//Get-DnsClientCache 用于在 windows Powershell 下查看缓存条目。可以发现其条目具有A级别缓存。
windows Powershell 调用方式为:Win+Q组合键打开搜索,然后输入PowerShell以管理员方式运行。