假设 Linux 系统同时启用了主机名 (/etc/hostname) 和 NetBIOS (/etc/samba/smb.config)。我的问题是:
默认设置下这两个名称是否以某种方式同步? (例如,安装 samba 后,
netbios name = something
(/etc/samba/smb.config)中的设置是否更改为与主机名(/etc/hostname)相同的值?)当通过名称 ping Linux 系统时,会通过 /etc/hostname 或 /etc/samba/smb.config 中的名称查找吗?
答案1
“netbios name”是仅某些特殊程序使用的名称。
您的 Linux 系统位于由其所有 IP 地址表示的网络中(尝试ifconfig | grep inet
),其中 127.0.0.1 和 ::1 始终是您的本地计算机。对这些 IP 地址之一执行 Ping 操作即可到达您的系统。
如果您有一个更复杂的系统,例如通过互联网网关的 DHCP,它可能会在每次重新启动时为您提供一个新地址,您应该查看此服务/路由器/名称服务器,它如何代表您的系统,它的名称是什么给了你的系统。一般来说,看看是否/etc/resolv.conf
显示“名称服务器”条目。如果您尝试使用某个名称 ping 其他系统,您的 Linux 系统将询问该名称服务器,并决定其他系统可以使用哪些名称。在极少数情况下,如果该系统有 NetBIOS 名称,则该名称可能与其相同,但大多数情况下不会。大多数情况下,您尝试访问的其他系统名称将包含其 /etc/hostname 文件的条目,但可能会被名称服务器更改,从而导致类似例如,yourcomputer.fritz.box
而不是yourcomputer
,如果您有一个 FritzBox 来访问互联网,则那么通常也被用作名称服务器。
您仍然可以为所有本地计算机提供固定 IP,并将它们的名称(包括 netbios 名称的额外条目)添加到/etc/hosts
网络中所有计算机上的所有文件(最基本的网络名称解析系统),以便您可以通过以下方式 ping 它们: “正常”或 netbios 名称,因为两者都只是相同固定 IP 地址的别名。