dns(域名系统)

dns简单理解为将域名(例如 www.example.com)转换为计算机可理解的 IP 地址(例如192.0.2.1)。

一、静态域名解析 
(1)常用写hosts,比如在有些公司使用hosts文件 实现私网ip 域名的一一对应  实现业务的访问。

`hosts` 文件是一个操作系统中的文本文件,用于将域名映射到特定的 IP 地址,从而实现本地的域名解析。在不同的操作系统中,`hosts` 文件位于不同的目录下:

- **Windows**:在 Windows 系统中,
`hosts` 文件位于 `C:\Windows\System32\drivers\etc` 目录下。您可以使用文本编辑器以管理员权限打开此文件进行编辑。

- **macOS 和 Linux**:在 macOS 和大多数 Linux 发行版中,
`hosts` 文件位于 `/etc` 目录下。您需要使用管理员权限来编辑此文件。

 (2)同时也可以阻止访问

在文件的末尾添加一行,格式为 `IP地址 域名`,其中 IP 地址可以是一个无效的地址(例如 `0.0.0.0` 或 `127.0.0.1`)或任何您希望重定向到的地址。如果您希望阻止访问特定域名,可以将其映射到无效的 IP 地址。

   例如,如果您希望阻止访问 `www.example.com`,您可以添加以下行:
   
   ```
   0.0.0.0 www.example.com
   ```
   或者使用本地回环地址:

   ```
   127.0.0.1 www.example.com
   ```
保存并关闭文件。

刷新 DNS 缓存,以便新的映射生效。在 Windows 中,您可以打开命令提示符,然后运行以下命令:

   ```
   ipconfig /flushdns
   ```
   在 macOS 和 Linux 中,您可以打开终端,然后运行以下命令:
   ``
   sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder,如果对安全性和复杂的访问需求,可用防火墙,代理服务器或其他网络安全工具。

二、动态域名解析

地址解析器(Resolver)和缓存区(Cache)集成在一起构成DNS客户端(DNS Client),它的作用是接收用户程序(User Program)(例如Ping、Tracert)的DNS请求,并对其作出回应。一般来说,用户程序、地址解析器和缓存区是在同一台主机上(PC),DNS Server和它们在不同的主机上。

 (1)用户在访问http等应用服务的时候,首先向DNS Client的地址解析器发出DNS请求。

 (2)   地址解析器收到DNS请求后,首先查询本地域名缓存。

 (3)  DNS Server收到查询报文后,再根据不同的判断结果,向DNS Client发送相应的响应报文

 (4)   DNS Client的地址解析器接收并解析DNS Server发回来的响应报文,将解析结果返回给用户程序。

三、通过wireshark抓包

  IP 地址 224.0.0.251 和其他多播地址一样,只在局域网内部有效,不会在因特网上路由。PC向该地址发送请求和响应来自动发现dns服务器,223.5.5.5阿里dns服务器地址对PC进行响应。

四、dns对应用访问的快慢有哪些因素

nslookup example.com  将看到列出的与特定域名相关的动态域名缓存项。这些条目会显示域名、IP地址、缓存时间等信息。同时对PC电脑dns地址是否能解析。

(1)DNS解析延迟:DNS查询和解析过程需要时间,取决于您的网络连接和DNS服务器的性能。如果DNS服务器响应迟缓,可能会导致域名解析变慢。
1. 打开 PowerShell:
   - 在 Windows 10 或更高版本中,可以使用搜索栏中的“PowerShell”来找到并打开 Windows PowerShell。
   - 在较旧的 Windows 版本中,您可以按下 Windows 键 + R,然后输入“powershell”并按 Enter。
2. 在 PowerShell 窗口中,输入以下命令,并将 "example.com" 替换为您要测试的域名:
   ```powershell
   $result = Measure-Command { Resolve-DnsName -Name example.com }
   $result.TotalMilliseconds
   ``
3. 按下 Enter 键后,PowerShell 将运行 DNS 解析并显示解析所花费的总毫秒数。这个数字就是 DNS 解析延迟时间。

(2)DNS缓存:DNS解析的结果可以被缓存在本地计算机或本地DNS解析器中。如果之前已经进行过相同域名的解析,下次访问时可以直接从缓存中获取结果,加快解析速度。
ipconfig /displaydns | find "example.com" 您可以使用命令行工具来查看特定域名的动态域名缓存
(3)DNS服务器性能:访问的域名可能由多个DNS服务器负责。如果您的DNS服务器(本地解析器、ISP提供的解析器、公共DNS服务器等)性能较差或负载过重,解析速度可能会受到影响。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Fe_smoothlyx

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值