本文内容为自己的理解,不具有权威性,仅供参考!!!
■发现的问题
・ping /? 查看帮助文档,得到以下信息 (把地址解析为计算机名)
-a Resolve addresses to hostnames.
ping -a IP//(局域网内的IP地址)
可以得到计算机的名字
当局域网内,「nbtstat -a IP」 无效时,我们可以使用这种方法,得到IP对应的主机名
ping - a 220.181.38.149 //(百度的IP)
根据上述帮助文档,我们应该得到baidu的服务器的名字,是实际上,返回的只是IP信息
这是为什么呢?
■个人理解
这里的hostnames 指的应该是和 NETBIOS 相关的名字。
所以,要使用,netbios(nbtstat)的解析,与DNS解析无关。
和baidu服务器不在一个局域网内,netbios(nbtstat)的解析失败,无法得到信息。
■相关参考,尤其是黑字部分,不理解。。。是否准确不清楚。。。。
=====================
■扩展说明
DNS :域名解析系统,解析的IP地址与对应的网址之间的关系
NETBIOS :(Network Basic Input Output System,网络基本输入输出系统)
当我们使用,ping XXXX
使用的是,DNS(nslookup)解析,还netbios(nbtstat)的解析
■回答
DNS和NETBIOS区别在于,
・DNS解析完整的带小圆点分隔的地址
・NETBIOS不能解析带小圆点的地址、最大16个字符。 (是通过微软的wins服务反向解析的)
(比如你的电脑名称是PC1, 加入了一个。TEST.COM的域,
现在计算机的全名是PC1.TEST.COM)
以上关于【计算机名】的描述,个人认为是正确的。
PING 计算机名PC1,就走WINS服务了,也就是NETBIOS名来解析
PING pc1.test.com的时候,走的就是DNS解析了。因为完全计算机名称里有小圆点。
・nbtstat:
显示基于 TCP/IP 的 NetBIOS (NetBT) 协议统计资料、
本地计算机和远程计算机的 NetBIOS 名称表和 NetBIOS 名称缓存。
Nbtstat 可以刷新 NetBIOS 名称缓存和使用 Windows Internet 名称服务 (WINS) 注册的名称
・nslookup:
nslookup可以指定查询的类型,可以查到DNS记录的生存时间还可以指定使用那个DNS服务器进行解释。
在已安装TCP/IP协议的电脑上面均可以使用这个命令。
主要用来诊断域名系统 (DNS) 基础结构的信息。
・arp:
ARP,即地址解析协议,实现通过IP地址得知其物理地址
・"arp -s"是绑定安全网关的IP和MAC地址 (防止arp攻击的好办法)
・"arp -d"是清除arp里面的缓存,arp是地址解析协议的简称