扫码关注官方订阅号
ubuntu中 etc resolv.cnf中的127.0.1.1是什么地址,为什么dns默认配置的是这个地址,请教
因为 ubuntu下有一个本地的dns服务叫做dnsmasq,它是由NetworkManager控制的
dnsmasq
NetworkManager
ps -ef | grep dnsmasq
你就可以看到它监听的本地地址,--listen-address=127.0.1.1 (ubuntu12.04及之前的版本 是 127.0.0.1), 这个地址是一个本地回环地址
--listen-address=127.0.1.1
而你真实的dns服务器地址,是被这个服务管理维护着的
local process -> local dnsmasq -> router -> ISP dns
给 @xelz 的答案做些补充127.0.1.1应该是用于端口映射(port forwarding)的,比如ISP分配的DNS server是220.250.64.26,则dnsmasq会将客户端向127.0.0.1:53发出的DNS请求,转发到220.250.64.26:53
类似的还有putty、SecureCRT等终端仿真程序。考虑以下场景:主机A可以访问主机B,主机B可以访问主机C,但主机A却不能直接访问主机C,这时A就可以将C的ssh端口映射到B上的一个随机端口(比如6667),以后直接访问B:6667就能实现A访问C的效果。
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
因为 ubuntu下有一个本地的dns服务叫做
dnsmasq
,它是由NetworkManager
控制的你就可以看到它监听的本地地址,
--listen-address=127.0.1.1
(ubuntu12.04及之前的版本 是 127.0.0.1), 这个地址是一个本地回环地址而你真实的dns服务器地址,是被这个服务管理维护着的
给 @xelz 的答案做些补充
127.0.1.1应该是用于端口映射(port forwarding)的,比如ISP分配的DNS server是220.250.64.26,则dnsmasq会将客户端向127.0.0.1:53发出的DNS请求,转发到220.250.64.26:53
类似的还有putty、SecureCRT等终端仿真程序。考虑以下场景:
主机A可以访问主机B,主机B可以访问主机C,但主机A却不能直接访问主机C,这时A就可以将C的ssh端口映射到B上的一个随机端口(比如6667),以后直接访问B:6667就能实现A访问C的效果。