找回密码
 加入我们
搜索
      
查看: 5852|回复: 7

[网络] 在本地虚拟机中部署DNS后应如何配置网络?

[复制链接]
发表于 2023-2-22 11:18 | 显示全部楼层 |阅读模式
本帖最后由 BetaHT 于 2023-2-22 16:53 编辑

如图所示。将PC的DNS指向.33后,发现nslookup可以查到正确ip,可以ping通ip,但是无法ping通域名。
而且查看路由表,默认路由是走10.22.33.0的

我理解PC向DNS发请求,DNS响应后,PC应该是再拿着IP地址向默认网关发送请求,按说路都是通的。是哪里有误呢?


Untitled-2023-02-17-1206(1).png

QQ截图20230222111649.png

半破案了。要点有二,一是PING是向默认网关发起的DNS请求,并非使用windows默认的dns地址。二是windows(win11)的dns设置似乎影响路由表中默认网关的设置并有延迟生效的现象。待我再实验一下。


基本结案。仍并不知道为什么windows会弄出这个网络配置。
关键信息:
路由表里缺少了PC到我的DNS的路由项。根据PING的工作原理,PING用ARP获取了10的默认网关,并把DNS发了过去。而正好我的10网里,网关上没有配置DNS项,因此PING解析不到IP,就无法访问。
当我在192的网关上配置上了.33的DNS,这里win会往路由表里加一条默认网关项去192网。这样PING就能够解析,拿到IP后就成功了。如果直接PING DNS的IP,因为有192的路由表项,因此PING DNS是通的。

然后,当我删除192网关上的.33DNS设置后,win并不会(至少不会立刻)删除这条去192的默认网关项。非常amazing。说明这里给192网关加.33并不是必须的,而是用它让win在路由表里加一条去192的默认项。

后来我netsh ipv4 reset了,重新部署了一次,还是一样,关键是得有一条0.0去192的路由项,否则ping不通。

总结:如果发现ping ip通,ping域名不通,请检查路由表项的默认网关项,确认默认网关或者其上游可否解析域名。
发表于 2023-2-22 11:57 | 显示全部楼层
有没有一种可能baidu禁ping了
发表于 2023-2-22 12:01 来自手机 | 显示全部楼层
重启系统?还是不行的话用Wireshark抓包看看ping时发了啥请求?
发表于 2023-2-22 12:29 | 显示全部楼层
Saber001 发表于 2023-2-22 11:57
有没有一种可能baidu禁ping了

禁ping不会找不到主机只会超时,找不到主机一般都是dns出问题了
发表于 2023-2-22 13:21 | 显示全部楼层
PING是向默认网关发起的DNS请求  这个确定吗?
发表于 2023-2-22 14:21 | 显示全部楼层
你的这个dns解析是非权威应答,自建的这个查询baidu时还是向上级dns服务做了请求
发表于 2023-2-22 14:32 | 显示全部楼层
192.168.137.33这台DNS要能上网才行,否则只解析你设置的本地DNS纪录,看看添加了第二个DNS地址没有。我在win server DNS服务器上的网卡主DNS填写127.0.0.1,第二DNS写网关路由IP,其他机器用这个DNS访问外网每问题
发表于 2023-2-22 14:47 | 显示全部楼层
先在你的DNS上ping一下baidu试试。
您需要登录后才可以回帖 登录 | 加入我们

本版积分规则

Archiver|手机版|小黑屋|Chiphell ( 沪ICP备12027953号-5 )沪公网备310112100042806 上海市互联网违法与不良信息举报中心

GMT+8, 2025-5-3 23:43 , Processed in 0.011013 second(s), 7 queries , Gzip On, Redis On.

Powered by Discuz! X3.5 Licensed

© 2007-2024 Chiphell.com All rights reserved.

快速回复 返回顶部 返回列表