Sì e no. Sono due cose distinte chiamate nomi host.
Il nome host "interno" è fondamentalmente una stringa mantenuta dal kernel. Questo è quello restituito dal hostnamecomando (o dalla gethostname()chiamata) ed è unico all'interno di un sistema (*) .
Viene utilizzato principalmente quando un programma desidera generare un identificatore per il sistema su cui è in esecuzione. Ad esempio \hin Bash si PS1espande al nome host. Allo stesso modo, i file di registro in stile syslog includono anche il nome host nelle voci di registro.
(* Anche se come commenta Stephen Kitt, gli spazi dei nomi possono essere usati per mostrare nomi host diversi ai processi sullo stesso sistema. È usato principalmente per i contenitori, che cercano di agire come se fossero sistemi distinti.)
Quindi ci sono anche nomi DNS che vengono utilizzati da altri sistemi per cercare l'indirizzo IP di un altro. Potrebbe esserci più di un nome DNS che punta allo stesso indirizzo IP e quindi allo stesso host.
Il nome host interno e i nomi DNS non devono necessariamente essere gli stessi. Supponiamo che qualcuno abbia un server web che abbia deciso di chiamare orange(*) , con l'indirizzo IP 192.0.2.9. Potrebbe servire due domini diversi e il DNS verrebbe impostato per avere www.example.orged www.example.comentrambi farebbero riferimento a 192.0.2.9, mentre il nome host interno del sistema potrebbe essere orange.example.orgo solo orange. In tal caso, la configurazione DNS di solito avrebbe anche una ricerca inversa sul 192.0.2.9punto di ritorno al nome orange.example.org, ma non c'è nulla che lo costringa.
(* perché a loro piace nominare i loro server come frutto. Qualcuno potrebbe usare webserver1o simili, ma il punto è che non ha bisogno di essere nominato dopo uno dei domini reali.)
Inoltre, l'hosting virtuale richiede che il browser indichi al server Web il nome del sito a cui ha tentato di accedere. Altrimenti il server non saprebbe quale sito virtuale il client ha tentato di raggiungere. HTTP ha l' Hostintestazione per quello.
Ciò che confonde la distinzione tra un nome DNS e il nome host interno è il protocollo mDNS
(implementato ad esempio dal demone avahi ) e altri protocolli di rilevamento. mDNS consente agli host di interrogare tutti gli altri host sulla stessa rete per informazioni sui nomi e di rendere visibili i loro nomi host su altri host senza configurarli esplicitamente in DNS.