76 windows & mac 连接 linux 上面的 dnsmasq dns服务器, 能够 nslookup 但是 ping 不通
Posted 蓝风9
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了76 windows & mac 连接 linux 上面的 dnsmasq dns服务器, 能够 nslookup 但是 ping 不通相关的知识,希望对你有一定的参考价值。
前言
呵呵 前端时间在 我们测试环境 192.168.1.132 搭建了一个 dnsmasq 的一个 dns 服务器, 并增加了 APP_SERVER, app.com 映射到 192.168.1.132
然后 另外的一台 linux 测试服务器在 /etc/resolve.conf 里面加入了 dns 服务器的配置之后, 就能够正确的解析到 域名 了
但是在使用 mac 和 windows 机器配置了 dns 服务器为 192.168.1.132 的时候, 似乎是 都不行??
这个 让我一度很不能理解, nslookup 能够解析这个域名, 但是 ping 缺 ping 不通 ?
这里就不具体介绍 dnsmasq 的配置了, 主要需要关注的是 bind-address 的配置, 配置为其他机器连接该服务器的 ip
windows 操作系统为 win10
mac 操作系统为 Mojave
windows 机器
首先 nslookup APP_SERVER 是可以看到解析之后的 ip 和 具体的dns服务器 的信息, 但是 ping 的时候就没了
C:\\Users\\MyPC>ping APP_SERVER
Ping 请求找不到主机 APP_SERVER。请检查该名称,然后重试。
然后 windows 这个在偶然的情况下 找到了一篇文章看了一下, 试了试, 呵呵 果然是这样, 似乎在 windows 上面是否是域名的规则为 是否包含 ".", 如果不包含 ".", 尝试将该名称当做主机名, 包含 "." 则识别为域名
然后 “ping APP_SERVER.” 又或者是 "ping app.com" 是能够正常作用的
内网域名 在windows下能nslookup,但ping不通,也无法访问。而在linux下正常。...
dns-problem-nslookup-works-ping-doesnt
C:\\Users\\MyPC>ping app.com
正在 Ping app.com [192.168.1.132] 具有 32 字节的数据:
来自 192.168.1.132 的回复: 字节=32 时间=7ms TTL=64
来自 192.168.1.132 的回复: 字节=32 时间=10ms TTL=64
192.168.1.132 的 Ping 统计信息:
数据包: 已发送 = 2,已接收 = 2,丢失 = 0 (0% 丢失),
往返行程的估计时间(以毫秒为单位):
最短 = 7ms,最长 = 10ms,平均 = 8ms
Control-C
^C
C:\\Users\\MyPC>ping APP_SERVER
Ping 请求找不到主机 APP_SERVER。请检查该名称,然后重试。
C:\\Users\\MyPC>ping APP_SERVER.
正在 Ping APP_SERVER [192.168.1.132] 具有 32 字节的数据:
来自 192.168.1.132 的回复: 字节=32 时间=2ms TTL=64
来自 192.168.1.132 的回复: 字节=32 时间=2ms TTL=64
192.168.1.132 的 Ping 统计信息:
数据包: 已发送 = 2,已接收 = 2,丢失 = 0 (0% 丢失),
往返行程的估计时间(以毫秒为单位):
最短 = 2ms,最长 = 2ms,平均 = 2ms
Control-C
^C
mac 机器
在 /etc/resolve.conf 里面将 nameserver 配置成了 192.168.1.132
然后 同样的效果, nslookup 能够解析域名, 但是 ping 不通
这里我抓了一下 dns 的包, 呵呵 原来 ping 的时候发送的请求 根本不是我在 /etc/resolve.conf 里面配置的 192.168.1.132, 发送的目标及其是默认网关
# nslookup 发送的 dns 请求
173 26.519451 192.168.1.129 192.168.1.132 DNS 70 Standard query 0xc72b A APP_SERVER
174 26.527552 192.168.1.132 192.168.1.129 DNS 94 Standard query response 0xc72b A APP_SERVER A 192.168.1.132
# 但是使用 ping 的时候, 目标服务器是 192.168.1.1
606 98.018415 192.168.1.129 192.168.1.1 DNS 70 Standard query 0x6097 A APP_SERVER
607 98.060187 192.168.1.1 192.168.1.129 DNS 78 Standard query response 0x6097 No such name A APP_SERVER
呵呵 最后找了一下 mac 的官方设置文档, 设置 dns, 呵呵 操作了一下 然后 就能够 ping 通了
后来想了一下, 应该是 mac 上面 ping 使用的是另外的一个地方的配置, 通过 界面操作修改的就是这个地方的配置
nslookup 取得应该直接是 /etc/resolve.conf 里面的配置去尝试解析域名
网络 - Wifi - 高级 - DNS 选项卡
参考
内网域名 在windows下能nslookup,但ping不通,也无法访问。而在linux下正常。...
以上是关于76 windows & mac 连接 linux 上面的 dnsmasq dns服务器, 能够 nslookup 但是 ping 不通的主要内容,如果未能解决你的问题,请参考以下文章
76 windows & mac 连接 linux 上面的 dnsmasq dns服务器, 能够 nslookup 但是 ping 不通
npm下scripts执行多条命令下mac与windows的差异
leetcode@ [30/76] Substring with Concatenation of All Words & Minimum Window Substring (Hashtab