windows hosts

本文介绍了当遇到通过hosts文件配置的域名无法访问特定端口的问题时,如何诊断并解决DNS缓存导致的问题。提供了两种有效清除Windows系统DNS缓存的方法。

  可能大家都有习惯性在hosts上做配置,后面发现使用hosts里面配置的域名居然无法访问telnet IP 1521,诊断之后发现:



发现确实是DNS存在问题,从Windows 95年代微软就告诉我们DNS解析先解析hosts文件读取,再查询DNS 服务器,结果顺序变成了

          DNS缓存(DNS Client服务);
          本机hosts文件;
          主要DNS server;

          辅助DNS server;

所以修改hosts文件的话,需要停用DNS Client。


这里提供几个清空本机DNS缓存的方法。


方法一:
1. 关闭所有浏览器窗口,最好把QQ之类链接网络的也关掉。
2. 找到 [控制面板] -> [网络连接] -> [本地连接]
3. 右键单击[本地连接],并在菜单中找到"修复"点击执行。


方法二:
1. [开始] -> [运行]输入"cmd"回车运行命令提示符程序 -> 在cmd窗口内输入命令"ipconfig /flushdns"回车
2. 若提示成功则跳过第三点。若出现"执行期间,函数出了问题."提示继续看第3点。
3. [控制面板] -> [管理工具] -> [服务] 启动名为"DNS Client"和"DHCP Client"的服务组件,之后再次执行"ipconfig /flushdns"命令即可。

### 编辑和配置 Windows 系统的 hosts 文件 Windows 系统中的 `hosts` 文件是一个无扩展名的文本文件,位于 `C:\Windows\System32\drivers\etc\` 目录下。它用于将域名映射到指定的 IP 地址,从而实现本地解析。以下是详细的编辑和配置步骤: #### 编辑 hosts 文件 1. **找到 hosts 文件的位置** 打开文件资源管理器,进入 `C:\Windows\System32\drivers\etc\` 目录,找到名为 `hosts` 的文件。 2. **备份 hosts 文件** 在进行任何修改之前,建议先备份原始文件,以防修改后出现问题可以快速恢复。 3. **以管理员权限打开 hosts 文件** 由于 `hosts` 文件具有只读属性,并且需要管理员权限才能修改,因此需要以管理员身份运行文本编辑器(如记事本),然后打开该文件。具体操作如下: - 右键点击“记事本”或任何文本编辑器,选择“以管理员身份运行”。 - 在记事本中,点击“文件” > “打开”,浏览到 `C:\Windows\System32\drivers\etc\` 目录。 - 在文件类型下拉菜单中选择“所有文件”,然后选择 `hosts` 文件并打开。 4. **编辑 hosts 文件** 在文件中添加或修改域名和 IP 地址的映射关系。每一行的格式为: ``` IP地址 域名 ``` 例如: ``` 127.0.0.1 localhost 192.168.1.100 example.com ``` 如果需要访问特定端口,可以在浏览器中输入完整的 URL,例如:`https://example.com:8443/` [^3]。 5. **保存 hosts 文件** 编辑完成后,点击“文件” > “保存”以保存更改。 #### 使用第三方工具简化操作 为了更方便地管理 `hosts` 文件,可以使用第三方工具如 **SwitchHosts**。该工具允许用户快速切换不同的 `hosts` 配置,并支持创建多个配置文件以便于管理和维护。具体操作如下: 1. **安装 SwitchHosts** 下载并安装 SwitchHosts,安装完成后打开该软件。 2. **创建新的 hosts 配置** 在 SwitchHosts 中,点击界面上的“+”号,创建一个新的配置文件,输入所需的域名和 IP 地址映射。 3. **应用新的 hosts 配置** 选择刚刚创建的配置文件,并点击“应用”按钮,即可立即生效新的 `hosts` 设置 [^1]。 #### 注意事项 - **管理员权限**:编辑和保存 `hosts` 文件时必须具有管理员权限。 - **文件筛选**:在打开文件时,务必选择“所有文件”筛选器,否则可能无法看到无扩展名的 `hosts` 文件 [^4]。 - **路径确认**:确保使用正确的路径 `C:\Windows\System32\drivers\etc\hosts` 来访问该文件 [^2]。 --- ### 示例代码 以下是一个简单的 Python 脚本,用于读取当前 `hosts` 文件的内容并打印出来: ```python with open(r'C:\Windows\System32\drivers\etc\hosts', 'r') as file: hosts_content = file.read() print(hosts_content) ``` 此脚本可以帮助开发者快速查看 `hosts` 文件的内容,适用于调试和自动化任务。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值