Il prompt che prima mostrava una cosa ora ne mostra un'altra, e la connessione che è cambiata era un VPN. Questa è tutta la prova che la maggior parte delle persone ha prima di concludere che il Mac è stato rinominato, e non basta. macOS conserva almeno tre valori di nome separati, ciascuno con un compito diverso, e un prompt della shell ne mostra al massimo uno in un modo facile da leggere male.

Confrontarli richiede tre comandi e risolve la questione prima che qualcuno modifichi qualcosa.

Tre valori, tre compiti

Tutti e tre sono stringhe che il sistema segnalerà volentieri, e la tentazione è considerare autorevole il primo che si trova. È così che un utente finisce per «aggiustare» il campo sbagliato e guardare il sintomo sopravvivere.

ValueWhat it is responsible for
ComputerNameThe friendly name a person sees in About and on the network browser; this is the one users mean by "my Mac's name"
LocalHostNameThe Bonjour name used on the local link, usually shown with a .local suffix in Sharing
HostNameAn explicitly configured host name that may simply not be set at all

La terza riga è dove inizia la maggior parte della confusione. Un HostName non impostato è uno stato normale, non una corruzione, e significa che il sistema ricorre ad altre fonti quando ha bisogno di un nome host. Leggere quel vuoto come un danno porta a una correzione che non è mai stata necessaria. Nasconde anche la domanda reale, che non è come si chiama la macchina ma quale nome usano una certa ricerca o un certo prompt in quel momento. Rispondi a questo, e il valore vuoto smette di sembrare un difetto.

Leggere prima di scrivere

Questi tre comandi riportano solo valori. Non cambiano nulla, il che li rende sicuri da eseguire durante un'indagine.

scutil --get ComputerName
scutil --get LocalHostName
scutil --get HostName

Eseguili nella stessa sessione locale prima e dopo una connessione VPN consentita, e annota quale valore differisce davvero. Se nulla differisce e il prompt sembra ancora sbagliato, il nome non è mai stato il problema: qualcosa nella configurazione della shell o nella sessione remota mostra una stringa diversa.

La guida di Apple sui nomi dei computer e sui nomi host locali colloca il nome descrittivo in General e About, e il nome locale in General e Sharing. Documenta anche il suffisso automatico aggiunto quando un altro Mac sullo stesso collegamento usa già un nome, cosa che vale la pena sapere prima di prendere un numero inatteso come prova di manomissione.

Che cosa dimostra davvero un prompt della shell

Un prompt è una stringa che la shell costruisce, e il suo elemento nome host può venire dal nome host espanso, da una sua forma abbreviata o da un valore codificato in un file di profilo. Può anche appartenere a una sessione SSH su una macchina completamente diversa, che è la spiegazione meno affascinante e di gran lunga la più comune per un prompt cambiato nel momento in cui hai connesso un VPN.

Controlla dove sei prima di controllare come ti chiami. Esegui hostname e confrontalo con i tre valori memorizzati, poi guarda l'impostazione del prompt della shell per vedere se mostra l'host. Se il prompt contiene una stringa letterale che qualcuno ha digitato in un file di configurazione anni fa, nessuna modifica di sistema la farà mai coincidere.

Il confronto conta anche per la segnalazione. Un prompt che sembra diverso e un ComputerName memorizzato che è davvero cambiato sono due riscontri con due proprietari diversi, e fonderli in una sola frase manda il tecnico successivo nel posto sbagliato.

Dove un VPN può toccare legittimamente la denominazione

Un VPN cambia quali resolver e domini di ricerca sono rilevanti, e può fornire al client un nome host tramite DHCP se il client è configurato per accettarne uno. È un meccanismo reale, ed è anche più stretto di «il VPN ha rinominato il mio Mac». Il fatto che un resolver cambi quale nome si risolve per un dato indirizzo non riscrive i valori locali memorizzati.

Separa quindi due domande. L'identità propria della macchina è diversa, o è diverso il nome che usa per raggiungere qualcos'altro? Alla prima rispondono i tre valori memorizzati; alla seconda rispondono le query DNS e il profilo di connessione in uso. Trattarle come un'unica domanda produce modifiche alle impostazioni di identità in risposta a un problema di risoluzione dei nomi.

Se serve davvero un nome host permanente

Impostare un valore è un'azione amministrativa deliberata, non una preferenza estetica, e il valore dovrebbe venire da chi possiede la politica di denominazione della macchina. Sovrascrivere un nome gestito perché il prompt sembri familiare può rompere i controlli dei certificati, il monitoraggio e qualunque altra cosa che identifichi l'host.

Dove il cambiamento è davvero necessario, lo stesso strumento che ha letto i valori li scrive, e HostName accetta un nome completamente qualificato mentre gli altri due si aspettano le forme locali. Annota cosa hai cambiato e perché, perché è esattamente il tipo di modifica che sorprende la persona successiva che guarda la macchina.

Per la maggior parte delle segnalazioni la risposta corretta è più piccola di quanto la domanda suggerisca: leggi tutti e tre i valori, individua quello che differisce e correggi solo quello. Il prompt era il sintomo di qualcosa, e i tre comandi ti dicono di cosa.

Articoli correlati