Antworten:
In einigen Netzwerken - ja. Aber auf Ihrem täglichen TCP / IP - Netzwerk, der Hostname muss eine IP - Adresse übersetzbar sein, sonst Kunden nicht wissen , was zu verbinden.
Es gibt jedoch mehrere vorhandene Protokolle für die Suche nach lokalen Namen:
Windows verwendet traditionell NetBIOS-Namensdienste zum Auflösen von Hostnamen anderer Computer im selben LAN mithilfe von UDP-Broadcasts. Ihr Server muss die nmbd
Samba-Komponente ausführen , damit sie mit NetBIOS erkannt werden kann.
Neuere Windows-Versionen unterstützen auch LLMNR , das mDNS ähnelt, jedoch weniger Funktionen bietet und IPv6 erfordert. Unter Linux systemd-resolved
wird ein LLMNR-Client vorhanden sein. Keine Ahnung von anderen Betriebssystemen. Wahrscheinlich nicht erwägenswert.
Die neuesten Versionen von Windows 10 unterstützen auch mDNS.
OS X verwendet mDNS ("Multicast-DNS"), manchmal auch als Bonjour bekannt, für die gleichen Zwecke. (Beachten Sie, dass mDNS im Allgemeinen keine bloßen Hostnamen wie NetBIOS auflöst. Stattdessen ist es auf die .local
Domäne beschränkt.) Für mDNS benötigt Ihr Server avahi-daemon
.
Neuere Windows 10.19xx verfügen über eine integrierte mDNS-Unterstützung (sind jedoch deaktiviert). Ältere Windows-Versionen können mDNS-Namen auflösen, wenn Bonjour installiert ist (normalerweise als Teil von iTunes), und OS X sollte NetBIOS unterstützen, wenn "Windows-Dateifreigabe" oder ein ähnlicher Dienst aktiviert ist.
Desktop-orientierte Linux-Systeme verfügen häufig über vorkonfigurierte NetBIOS- und mDNS-Resolver. (Das heißt, sie führen beide nmbd
und avahi-daemon
sowie die entsprechenden glibc-NSS-Module aus /etc/nsswitch.conf
.)
Schließlich hält die meisten „Home - Router“ eine lokale DNS - Domäne ( .lan
, .home
u. A. ) nach Host - Namen erhalten sie von DHCP - Anfragen von Rechnern im LAN gesendet. Je nachdem, was Ihr Server verwendet, dhcpcd
benötigt er die hostname
Option " ", während er dhclient
" send host-name = gethostname()
" verwendet.