无法将主机名解析为 ip

sup*_*ser 2 networking linux debian

在我的 Debian 服务器上,主机名设置为“debian”。当我尝试从另一台 Linux 机器 ping debian 时,它显示“ping:无法解析 debian:未知主机”。当尝试 ping 任何其他服务器时,它能够成功解析 ip 和 ping。怎么了?

kil*_*ist 5

Windows 网络在网络应该如何工作的问题上有点宠坏了人们。

Windows 机器都运行(默认情况下,无论如何)作为 SMB 一部分的名称解析服务。当将非 Windows 组件添加到网络时,这开始变得混乱,并且它们“无法按预期运行”。

此外,一些组件在设计时知道某些东西不会表现得像 windows(因为缺少更好的词)包括“功能”以“鼓励事物正常工作”。这些功能只会使网络的实际工作方式更加模糊。

有几个解决方案:

  1. 在 Debian 机器上安装/激活 Samba 服务。这将启用名称解析服务,因此可以从 Windows 机器按名称看到该框。请注意,网络上的任何其他 Linux 机器可能仍不会按名称看到该机器,因为 Linux 机器通常不使用 SMB 级别的名称解析进行网络查找。
  2. 使用自定义主机文件,这样网络上的所有已知机器都可以通过名称相互引用,而无需使用解析服务。这是我的首选方法,但对于超过 10 台机器的网络可能会变得复杂。
  3. 一些可以在本地处理 DNS 的路由器将反向包含通过 DHCP 从中获取 IP 的机器。但是,这依赖于使用路由器作为主要 DNS 提供商的网络上的所有机器,而不是 ISP 或其他外部 DNS 提供商(如 OpenDNS)。对于我使用过的具有此功能的路由器,成功是一种命中注定的事情,但也有任何具有静态 IP(未通过 DHCP 获取 IP)的机器的问题,不在 DNS 表中路由器,所以无论如何都必须手动处理。

基本上,这一切都归结为了解和掌握您的本地网络。长期以来,Windows 使网络管理变得过于简单,但不幸的是,它导致了许多关于网络工作方式的错误假设。