前言:在 Windows NT 服务器的 TCP/IP 允许通过与另一台计算机的网络通信通过使用计算机 IP 地址、主机名或 NetBIOS 名称~主机名和NetBIOS名也会映射为对应的IP地址,然后IP地址最终必须解析成硬件地址才能对计算机进行识别~
在windows中,文件夹%SystemRoot%\system32\drivers\etc下存在一个名为hosts的文件,里面保存着计算机IP地址与计算机名得映射关系(包含本机,本机IP地址为127.0.0.1,对应的计算机名为localhost)~我们可以通过某个主机名去访问对应的计算机(通过把主机名映射为IP地址)~
下面的步骤转自与微软官方支持:http://support.microsoft.com/kb/108295
- 计算机 A 输入命令使用主机名的计算机 b。
- 计算机 A (%SystemRoot%\system32\drivers\etc 目录中包含的) 上 HOSTS 文件进行分列处理。当找到计算机 B 的主机名时,它被解析为 IP 地址。
- 地址解析协议 (ARP) 然后用于解析 IP 地址的计算机 B 到其硬件地址。如果计算机 B 是在本地网络上,将通过使用 ARP 获取其硬件地址缓存或通过发送一个本地广播要求从计算机 B 的答复与其硬件地址。如果计算机 B 上远程网络,ARP 将确定硬件地址的默认网关的路由给计算机 b。
注:在linux下也同样存在这样一个hosts文件,在/etc目录下,同样存放的是主机名与IP地址的映射关系~