首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

hosts增加dns解析

基础概念

hosts 文件是一个用于将主机名映射到 IP 地址的文本文件。它位于操作系统的系统目录中,通常用于本地 DNS 解析。通过在 hosts 文件中添加条目,可以覆盖默认的 DNS 解析,使得特定的域名直接指向指定的 IP 地址。

相关优势

  1. 快速解析:相比于通过 DNS 服务器进行解析,直接在 hosts 文件中进行解析速度更快。
  2. 绕过 DNS 限制:有时 DNS 服务器可能会有缓存或限制,通过 hosts 文件可以绕过这些限制。
  3. 测试和调试:在开发和测试过程中,可以通过修改 hosts 文件来模拟不同的网络环境。

类型

hosts 文件中的条目通常有以下几种类型:

  1. IP 地址到主机名的映射
  2. IP 地址到主机名的映射
  3. 主机名到 IP 地址的映射
  4. 主机名到 IP 地址的映射
  5. 注释
  6. 注释

应用场景

  1. 本地开发:在开发过程中,可以通过修改 hosts 文件来模拟不同的域名解析,方便测试。
  2. 网站测试:在测试新网站时,可以通过 hosts 文件将域名指向本地服务器,避免外部 DNS 解析的影响。
  3. 绕过限制:有时某些网站可能被 DNS 服务器屏蔽,通过修改 hosts 文件可以绕过这些限制。

常见问题及解决方法

问题:为什么在 hosts 文件中添加了条目后,仍然无法解析?

原因

  1. 文件权限问题hosts 文件通常需要管理员权限才能修改。
  2. 格式错误:条目格式不正确,例如 IP 地址和主机名之间没有空格或制表符。
  3. 缓存问题:操作系统或浏览器可能缓存了旧的 DNS 解析结果。

解决方法

  1. 检查文件权限:确保以管理员权限编辑 hosts 文件。
  2. 检查格式:确保条目格式正确,例如:
  3. 检查格式:确保条目格式正确,例如:
  4. 清除缓存
    • Windows:在命令提示符中运行 ipconfig /flushdns
    • Linux/Mac:在终端中运行 sudo killall -HUP mDNSResponder(macOS)或 sudo systemd-resolve --flush-caches(Linux)。

示例代码

以下是一个简单的示例,展示如何在 hosts 文件中添加条目:

代码语言:txt
复制
# 编辑 hosts 文件
sudo nano /etc/hosts  # Linux/Mac
notepad C:\Windows\System32\drivers\etc\hosts  # Windows

# 添加条目
192.168.1.1    example.com

# 保存并退出

参考链接

通过以上信息,你应该能够更好地理解 hosts 文件的使用方法及其相关问题。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • 012 修改 hosts 文件的原理是什么

    为了方便用户记忆,我们将IP变成一个个的域名来输入到浏览器进行访问。而这使得访问网站时要先将其域名解析成 IP 。DNS (Domain Name Server) 的作用就是进行 IP 解析,把域名对应到 IP。在 Great FireWall 的 5 种封锁方法中,有一种简单而效果很好的方法是 DNS 污染。GFW 会对 DNS 的解析过程进行干扰,这会使对某些被干扰的域名返回一个错误的 IP 地址给你的主机,使你无法正确连接到你要的服务器上读取正确的信息。Hosts 文件本来是用来提高解析效率。在进行 DNS 请求以前,系统会先检查自己的 Hosts 文件中是否有这个地址映射关系,如果有则调用这个 IP 地址映射,如果没有再向已知的 DNS 服务器提出域名解析。也就是说 Hosts 的请求级别比 DNS 高。当你的 Hosts 文件里面有对应的 IP 时,它就会直接访问那个 IP,而不用通过 DNS。所以,当我们直接将 Google、Twitter、Facebook 之类的 IP 放入 Hosts 文件后,就可以跳过 DNS 的解析这一步,直接就行 IP 访问,不受 GFW 的 DNS 污染干扰了。补充一条,就是为什么 Hosts 的 IP 要时不时更改,为什么 FB、Twitter 会仍旧上不去。是因为 GFW 的第二个大招,IP 封锁。比如访问国外一个 IP 无法访问,Ping 不通,tracert 这个 IP 后发现,全部在边缘路由器 (GFW) 附近被拦截。换言之,GFW 直接拦截带有这个 IP 头的数据包。所以,如果你更改的 IP 被封锁了,就算你过了 DNS 这一关,也仍旧不能翻过 GFW。

    05

    修改 hosts 文件的原理是什么?

    为了方便用户记忆,我们将IP变成一个个的域名来输入到浏览器进行访问。而这使得访问网站时要先将其域名解析成 IP 。DNS (Domain Name Server) 的作用就是进行 IP 解析,把域名对应到 IP。 在 Great FireWall 的 5 种封锁方法中,有一种简单而效果很好的方法是 DNS 污染。GFW 会对 DNS 的解析过程进行干扰,这会使对某些被干扰的域名返回一个错误的 IP 地址给你的主机,使你无法正确连接到你要的服务器上读取正确的信息。 Hosts 文件本来是用来提高解析效率。在进行 DNS 请求以前,系统会先检查自己的 Hosts 文件中是否有这个地址映射关系,如果有则调用这个 IP 地址映射,如果没有再向已知的 DNS 服务器提出域名解析。也就是说 Hosts 的请求级别比 DNS 高。当你的 Hosts 文件里面有对应的 IP 时,它就会直接访问那个 IP,而不用通过 DNS。 所以,当我们直接将 Google、Twitter、Facebook 之类的 IP 放入 Hosts 文件后,就可以跳过 DNS 的解析这一步,直接就行 IP 访问,不受 GFW 的 DNS 污染干扰了。

    02

    NSCD本地DNS缓存软件安装、配置

    1、yum install -y nscd 2、vi /etc/nscd.conf logfile /var/log/nscd.log threads 4 max-threads 32 server-user nscd debug-level 0 reload-count 5 paranoia no restart-interval 3600 enable-cache hosts yes positive-time-to-live hosts 3600 negative-time-to-live hosts 20 suggested-size hosts 211 check-files hosts yes persistent hosts yes shared hosts yes max-db-size hosts 33554432 3、service nscd start 4、查看命中数nscd -g 5、清除缓存,nscd -i hosts 6、配置解析 enable-cache指定对DNS解析进行缓存。 positive-time-to-live是指对解析成功的DNS结果进行缓存的时间。 negative-time-to-live是指对解析失败的DNS结果进行缓存的时间。例如网络故障导致的DNS解析失败或者请求的DNS条目没有配置等。 suggested-size是NSCD内部的哈希表的大小,如果缓存条目数量远大于默认的211(如10倍以上,则修改此值)。 check-files是指是否检查/etc/hosts文件的变化。 persistent是指是否在重启NSCD进程时保留已缓存的条目。 shared是指是否允许客户端直接查询NSCD的内存镜像以获得结果。 max-db-size是指DNS的缓存大小,以字节为单位。

    01
    领券