Quali sono le conseguenze dell'impostazione del nome host?


13

Ho diversi server Amazon EC2 e sto usando Chef per gestire la configurazione. Vorrei impostare il nome host in modo che il prompt bash predefinito sia più utile.

Subito dopo aver lanciato un nuovo server è appena impostato come:

root@ip-10-123-123-123

Dato che sto usando Ubuntu 12 su queste caselle ho consultato la pagina man corrispondente per il nome host . Ha molte buone informazioni su come impostarlo e parla un po 'del nome host e del fqdn, ma in realtà non mi dice quello che voglio sapere:

Quali sono le conseguenze dell'impostazione del nome host?

Vorrei presumere che l'impostazione del nome host sia principalmente un elemento di convenienza per utenti e amministratori di sistema, dando alla scatola un volto / bel nome in modo che possa essere più facilmente riconosciuto internamente (tramite il prompt dei comandi, le e-mail che vengono inviate, ecc.), ma non sono positivo.

Non vedo il nome host elencato nel /etc/hostsfile, che sembra essere un buon segno che non influirà negativamente su nulla se modificato:

127.0.0.1 localhost
# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts

Sono sulla buona strada? Quali sono le conseguenze dell'impostazione del nome host?

Aggiornare

Ho provato a cambiare il nome host sulla mia istanza ec2 da ip-10-123-123-123a webservere hostname --fqdnnon funziona più. Se lo rimetto, allora funziona bene. Apache mi dà anche un errore all'avvio che non può determinare in modo affidabile fqdn. Suppongo che ci debba essere un modo per impostare il nome host senza incasinare fqdn.


Ho anche scoperto che possiamo impostare nomi host facili da ricordare per le istanze EC2? e ha pubblicato una risposta basata su ciò che ho trovato, ma presenta ancora alcuni buchi.
Cwd,

Risposte:


15

Volevo solo aggiungere che il nome host doveva essere risolvibile, tramite DNS o / etc / hosts. In caso contrario, molti strumenti potrebbero presentare lunghi ritardi a causa di una ricerca del nome host non riuscita. Ho avuto questo problema con molti programmi GUI.


Questo è un punto molto importante. Vorrei votare più di una volta se potessi. Grazie!
Cwd,

Questo in realtà non rispondere alla domanda. Se cambi il tuo nome host in qualcosa che effettivamente si risolve, allora hostname --fqdnfunziona ancora.
Bryant,

12

Il nome host (impostato e visualizzato dal hostnamecomando e generalmente archiviato /etc/hostname) viene utilizzato dalle applicazioni locali. Non è noto ad altre macchine e non può essere utilizzato per contattare l'host. Il nome host viene in genere visualizzato nei prompt della shell e varie applicazioni potrebbero utilizzarlo per scopi di registrazione, ad esempio dal software di controllo della versione quando si effettua un commit.

Non esiste alcuna connessione tecnica tra il nome host e qualsiasi nome che altre macchine possano utilizzare per designare la macchina. Il DNS è ciò che viene normalmente utilizzato per nominare una macchina in un contesto Internet (o più precisamente, un'interfaccia di rete). È una buona idea se il tuo nome host è identico al primo componente del nome DNS dell'interfaccia di rete della tua macchina che vede la maggior parte del mondo. Ad esempio, se il tuo server è collegato al resto del mondo tramite l' eth0interfaccia Ethernet e l'indirizzo IP di eth0ha il nome foo.example.com, è una buona idea scegliere foocome nome host. In tal caso, foo.example.comviene spesso chiamato FQDN(nome di dominio completo) della macchina. Ma sei libero di lasciarli non corrispondenti; una discrepanza può essere fonte di confusione per l'amministratore, ma non importa per il software.

Il nome host può essere utilizzato da alcuni protocolli di rete per identificare l'host. In tal caso, deve essere inviato da un processo locale in esecuzione sull'host. Ad esempio, in alcune configurazioni, un client DHCP invia il nome host al server DHCP per ottenere un indirizzo IP; il server DHCP può utilizzare il nome host richiesto per decidere quale indirizzo IP attribuire al client. In tali configurazioni, è obbligatorio che il nome host corrisponda al nome DNS.

Correlati: Perché il mio nome host è diverso in Emacs? ; Come rendere accessibile una macchina dalla LAN usando il suo nome host


1
Non è vero che non è conosciuto da altre macchine. Tale nome host viene inviato da molti sistemi operativi al server DHCP quando si richiede un lease DHCP e molti server DHCP / DNS lo utilizzano per aggiornare la zona DNS locale. Il nome host è utilizzato da mDNS, viene utilizzato da samba (nella maggior parte delle installazioni di samba predefinite), appare nel server HTTP ...
Stéphane Chazelas,

@sch Un buon punto per menzionare DHCP. Non capisco il punto su httpd: è un processo locale che può decidere di inviare il nome host sulla rete, ma il nome host non è ancora noto ad altre macchine a meno che l'host non lo abbia inviato.
Gilles 'SO- smetti di essere malvagio' il

Penso che questa sia una buona risposta, ma dopo aver giocato un po 'di più non sono sicuro che sia completo. Sembra che se cambio il mio nome host (ip-10-123-123-123) in qualsiasi altra cosa, allora hostname --fqdnnon funziona più su un'istanza ec2 e apache dà un avviso all'avvio che non può determinare in modo affidabile fqdn. Non sono sicuro dove cercare ulteriori informazioni su come tutte queste cose si legano insieme. Grazie per avermi iniziato.
Cwd,

1
hostname --fqdn(DNS) sembra essere utilizzato nella registrazione. unix.stackexchange.com/questions/319737/…
sourcejedi
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.