是否可以使用其主机名连接到设备?

Modified on: Tue, 19 Feb 2019 01:40:02 +0800

我正在创建一个运行Linux的小型设备,上面有一个Web服务器。我希望它是即插即用,连接到网络并使用抽象名称访问它。

是否可以仅使用其主机名访问设备?

作者:Jawa,Matroska

最佳答案

在某些网络上 - 是的。但是在您的日常TCP / IP网络上,主机名必须可以转换为IP地址,否则客户端将无法知道要连接的内容。

但是有几种现有的本地名称查找协议:

  • Windows使用NetBIOS名称服务,使用UDP广播解析同一LAN中其他计算机的主机名。您的服务器需要运行Samba的nmbd组件才能使用NetBIOS发现。

    (最近的Windows版本也支持LLMNR,类似于mDNS但功能较少且需要IPv6。在Linux上,systemd-resolved将有一个LLMNR客户端。不知道其他操作系统。可能不值得考虑。)

  • OS X使用mDNS(“多播DNS”),有时也称为Bonjour,用于相同目的。 (请注意,mDNS通常不会像NetBIOS那样解析裸主机名;相反,它仅限于.local域。)对于mDNS,您的服务器需要avahi-daemon

    (另外,如果安装了Bonjour(通常作为iTunes的一部分),Windows可以解析mDNS名称,如果启用了“Windows文件共享”或类似服务,OS X应该支持NetBIOS。)

  • 面向桌面的Linux系统通常配有预先配置的NetBIOS和mDNS解析器。 (也就是说,它们运行nmbdavahi-daemon,以及/etc/nsswitch.conf中的相关glibc NSS模块。)< / p>

  • 最后,大多数“家庭路由器”维护本地DNS域.lan.home,&amp; c。 )根据主机名,他们从局域网中的计算机发送来自DHCP请求。根据服务器使用的内容,dhcpcd需要“hostname”选项,而dhclient使用“send host-name = gethostname()

作者:,grawity

相关问答

添加新评论