0

0

linux怎么配置本地DNS_linux修改hosts解析记录【攻略】

穿越時空

穿越時空

发布时间:2026-03-11 21:01:04

|

994人浏览过

|

来源于php中文网

原创

linux本地dns解析优先级由/etc/nsswitch.conf中hosts行决定,默认files dns表示先查/etc/hosts再查dns;修改后仅新进程生效,且需注意systemd-resolved覆盖、/etc/hosts格式规范及应用层绕过等问题。

linux怎么配置本地dns_linux修改hosts解析记录【攻略】

Linux 本地 DNS 解析优先级怎么定

Linux 不是“配置了 /etc/resolv.conf 就一定走它”,解析顺序由 nsswitch.conf 决定。默认情况下,hosts: files dns 表示先查 /etc/hosts,再查 DNS;如果改成 hosts: dns files,反而会让 /etc/hosts 失效——这是很多人改完 DNS 还不生效的根源。

  • 检查顺序:运行 cat /etc/nsswitch.conf | grep hosts
  • 修改后无需重启服务,但已有进程(如已启动的 curl、wget)不会自动重读,新终端或新进程才生效
  • systemd-resolved 或 NetworkManager 管理的系统,/etc/resolv.conf 可能是软链接,直接改会被覆盖

/etc/hosts 里写错格式会导致整行失效

/etc/hosts 看似简单,但空格、注释、IPv6 地址混用极易出错。比如用 Tab 替代空格、在 IP 后加多余空格、或把注释写在行末但没加 #,都会让该行被完全忽略,且系统不报错。

  • 必须用 一个或多个空格或制表符 分隔 IP 和主机名,推荐只用空格
  • 每行只能有一个 IP,不能写 127.0.0.1 a.com b.com —— 后续域名不会被解析
  • IPv6 地址要用方括号?不用。::1 直接写,但别写成 [::1],否则解析失败
  • 示例正确写法:127.0.0.1 example.local,错误写法:127.0.0.1 example.local # test(末尾空格+无#会截断)

systemd-resolved 覆盖 resolv.conf 是常态,不是异常

Ubuntu 18.04+、Fedora、Debian 11+ 默认启用 systemd-resolved,它会把 /etc/resolv.conf 指向自己的 stub 地址 127.0.0.53。你手动改 /etc/resolv.conf,下次 NetworkManager 重连或 reboot 就恢复——这不是权限问题,是设计如此。

What-the-Diff
What-the-Diff

检查请求差异,自动生成更改描述

下载
  • 查当前真实 DNS:运行 resolvectl status,看 “DNS Servers” 下的地址
  • 临时改 DNS(重启后失效):resolvectl dns eth0 8.8.8.8
  • 永久改法:编辑 /etc/systemd/resolved.conf,取消注释 DNS= 行并填值,再执行 sudo systemctl restart systemd-resolved
  • 不想用 resolved?可禁用:sudo systemctl disable --now systemd-resolved,再删软链接、重建 /etc/resolv.conf

hosts 和 DNS 冲突时,谁赢取决于 nsswitch + 应用行为

即使 /etc/hosts 有记录,某些程序(如 Chrome、Firefox、curl with --resolve)可能绕过系统解析器,直接走自己逻辑;而 pingsshgit 通常遵守 nsswitch.conf。更隐蔽的是 glibc 缓存:改完 /etc/hosts 后,旧进程可能还在用缓存结果。

  • 验证是否真走了 hosts:用 getent hosts example.local(它严格按 nsswitch 执行)
  • 清 glibc 缓存(部分系统支持):sudo systemd-resolve --flush-caches 或重启 systemd-resolved
  • 排查应用特例:Chrome 访问 chrome://net-internals/#dns 查 DNS 日志;curl 加 -v 看 Host 头和实际连接 IP
  • 不要依赖 nslookup 测试 hosts —— 它只查 DNS,根本不读 /etc/hosts

真正麻烦的从来不是“怎么写”,而是“谁在读、什么时候读、读到哪一层”。/etc/hosts 生效与否,resolv.conf 是否被接管,nsswitch.conf 的顺序,glibc 的缓存,还有应用自身的解析策略——四层叠加,漏掉任何一层,配置就看起来“没用”。

热门游戏推荐
热门游戏推荐

海量精品小游戏合集,无需安装即点即玩,休闲益智、动作闯关应有尽有,秒开即玩,轻松解压,快乐停不下来

下载

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
chrome什么意思
chrome什么意思

chrome是浏览器的意思,由Google开发的网络浏览器,它在2008年首次发布,并迅速成为全球最受欢迎的浏览器之一。本专题为大家提供chrome相关的文章、下载、课程内容,供大家免费下载体验。

1056

2023.08.11

chrome无法加载插件怎么办
chrome无法加载插件怎么办

chrome无法加载插件可以通过检查插件是否已正确安装、禁用和启用插件、清除插件缓存、更新浏览器和插件、检查网络连接和尝试在隐身模式下加载插件方法解决。更多关于chrome相关问题,详情请看本专题下面的文章。php中文网欢迎大家前来学习。

837

2023.11.06

curl_exec
curl_exec

curl_exec函数是PHP cURL函数列表中的一种,它的功能是执行一个cURL会话。给大家总结了一下php curl_exec函数的一些用法实例,这个函数应该在初始化一个cURL会话并且全部的选项都被设置后被调用。他的返回值成功时返回TRUE, 或者在失败时返回FALSE。

454

2023.06.14

linux常见下载安装工具
linux常见下载安装工具

linux常见下载安装工具有APT、YUM、DNF、Snapcraft、Flatpak、AppImage、Wget、Curl等。想了解更多linux常见下载安装工具相关内容,可以阅读本专题下面的文章。

183

2023.10.30

自建git服务器
自建git服务器

git服务器是目前流行的分布式版本控制系统之一,可以让多人协同开发同一个项目。本专题为大家提供自建git服务器相关的各种文章、以及下载和课程。

978

2023.07.05

git和svn的区别
git和svn的区别

git和svn的区别:1、定义不同;2、模型类型不同;3、存储单元不同;4、是否拥有全局版本号;5、内容完整性不同;6、版本库不同;7、克隆目录速度不同;8、分支不同。php中文网为大家带来了git和svn的相关知识、以及相关文章等内容。

579

2023.07.06

git撤销提交的commit
git撤销提交的commit

Git是一个强大的版本控制系统,它提供了很多功能帮助开发人员有效地管理和控制代码的变更,本专题为大家提供git 撤销提交的commit相关的各种文章内容,供大家免费下载体验。

275

2023.07.24

git提交错误怎么撤回
git提交错误怎么撤回

git提交错误撤回的方法:git reset head^:撤回最后一次提交,恢复到提交前状态。git revert head:创建新提交,内容与之前提交相反。git reset :使用提交的 sha-1 哈希撤回指定提交。交互式舞台区:标记要撤回的特定更改,然后提交,排除已撤回更改。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

568

2024.04.09

C# ASP.NET Core微服务架构与API网关实践
C# ASP.NET Core微服务架构与API网关实践

本专题围绕 C# 在现代后端架构中的微服务实践展开,系统讲解基于 ASP.NET Core 构建可扩展服务体系的核心方法。内容涵盖服务拆分策略、RESTful API 设计、服务间通信、API 网关统一入口管理以及服务治理机制。通过真实项目案例,帮助开发者掌握构建高可用微服务系统的关键技术,提高系统的可扩展性与维护效率。

3

2026.03.11

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号