我有一个相对较小的 LAN,其中包含 Mac、Windows 和 Linux 设备的混合。他们目前都通过 DHCP 接收他们的 IP 地址(针对 MAC 地址固定),并且 DHCP 服务器也是路由器和默认网关。子网为 192.168.3.0,子网掩码为 255.255.255.0。例如:
- 默认网关:192.168.3.254
- Mac1:192.168.3.1
- Windows1:192.168.3.2
- Windows2:192.168.3.3
- Linux1:192.168.3.4
- Linux2:192.168.3.5
我希望能够使用名称而不是 IP 地址来引用不同的机器。例如,当从一台 Linux 机器 ssh'ing 到另一台机器时。如果相关,我没有公司域等。
我可以采取哪些方法来实现这一目标?
对于这么小的网络,我只会使用
/etc/hosts
(在 Linux 和 OSX 上),或c:\windows\system32\drivers\etc\hosts
(在 Windows 上)。如果网络变得更大,我会在其中一个 Linux 机器上部署并停止使用路由器作为 DHCP 和 DNS 服务器
dhcpd
。named
嗯,您应该能够让您的 dhcp 客户端发送一个“主机名”以及他们的 dhcp 请求。如果您的 dhcp 服务器配置正确,或者它与您的 dns 服务器(ala dnsmasq)相同,您将能够使用他们随请求一起发送的“主机名”来引用您的机器。
或者,您始终可以分配一些静态 IP 地址以由 DHCP 服务器发送,并在您的 DNS 服务器中配置这些内容。如果您正在使用,
dnsmasq
这是微不足道的。我假设这是消费者路由器?如果支持并运行 dnsmasq 或更复杂的命名/dhcpd 设置,您可以考虑在路由器上安装OpenWRT或DD-WRT 。
你也可以做其他很酷的事情,比如在你的路由器上运行 OpenVPN 服务器/Bit torrent/etc/。