Hay toneladas de preguntas sobre cómo cambiar un nombre de host de Mac, y aunque revisé la mayoría de ellas, nunca pude encontrar esta respuesta matizada:
¿Por qué los enrutadores siempre parecen recibir el primer nombre de host que alguna vez se configuró en una máquina? Déjame mostrarte con estas capturas de pantalla cómo esta Mac supuestamente está configurada correctamente de acuerdo con varias respuestas en este sitio:
Ahora, cuando configuré esta computadora hace años, creo que elegí el nombre de host david-MBP
, y esto parece ser lo que obtienen varios enrutadores hasta el día de hoy y, a veces, regresan a la Mac para operaciones de host local. Más tarde lo cambié con varios comandos de Terminal, y la Mac lo sabe, pero parece quedarse cuando se comunica con enrutadores.
Así que ahora mi pregunta es ¿dónde guarda OS X este valor anterior? Porque desde que me conecté con este enrutador en la captura de pantalla anterior, nunca tuve ese nombre de host, por lo que no es caché DHCP ni nada por el estilo.
Hay tres nombres de host diferentes que utiliza macOS/OS X:
Cada uno de estos valores se puede encontrar en/Library/Preferences/SystemConfiguration/preferences.plist
scutil --get ComputerName
Este es el nombre "amigable" de Apple para la computadora y se puede encontrar en Preferencias del sistema >> Compartir >> Nombre de la computadora . De acuerdo con la página de manual de scutil
, se describe como "El nombre fácil de usar para el sistema".
Según Apple , ComputerName es el nombre AppleTalk y el nombre predeterminado utilizado para SLP/DA 1 . Es un protocolo de configuración cero que le permite configurar una red simple sin un servidor DNS/DHCP pero le permite llegar a los diferentes recursos a través de un nombre de host.
scutil --get HostName
De acuerdo con la scutil
página de manual, HostName es "el nombre asociado con hostname(1) y gethostname(3)". Este nombre puede provenir de cualquiera de las siguientes fuentes:
(En mi instalación virgen de El Capitán, el HostName
valor predeterminado es LocalHostName
)
scutil --get LocalHostName
Esto es para los servicios Bonjour 2 en la LAN. Así es como, en una LAN pequeña sin DNS/DHCP, las computadoras Apple pueden descubrir e interactuar con recursos como compartir archivos en otras máquinas, impresoras, etc. Este nombre se establece cuando configura inicialmente su Mac.
Está usando "el primer nombre que alguna vez configuró" porque durante la configuración inicial, configuró el LocalHostName que asumió que sería para siempre. Cuando reconfiguró usando la GUI, cambió el ComputerName que no modificó el LocalHostName.
Si desea arreglar esto en su enrutador, simplemente configure su LocalHostName usando el comando:
scutil --set LocalHostName MyNewComputerName.domain
2 Bonjour es la implementación de Apple de redes de configuración cero, un grupo de tecnologías que incluye detección de servicios, asignación de direcciones y resolución de nombres de host.
defaults read /Library/Preferences/SystemConfiguration/com.apple.smb.server NetBIOSName
Los enrutadores generalmente adquirirán el nombre de la computadora cuando se haya asignado la dirección IP, que es antes de que se realice cualquier intercambio o transmisión. El nombre de la computadora se define o se puede definir en Preferencias de red en la ID del cliente DHCP y es independiente de cualquier otra configuración de la computadora. Esencialmente significa "cuando solicite una dirección IP, identifíquese como /este/". Comprueba si lo tienes configurado así:
Para aquellos que todavía tienen este problema después de varios años: solicite a su TI que borre las zonas de búsqueda inversa de DNS para su IP. O si tienen el servidor WINS, borre el nombre de Netbios vinculado a su IP.
Pude encontrar el problema. Su enrutador mantiene almacenado el nombre del dispositivo. Para arreglarlo haz esto:
Seguí las instrucciones que publicó Allan pero, al igual que Giant Smptu, tuve que actualizar mi enrutador. Tengo una red wifi Deco Mesh. Necesitaba eliminar mi computadora de la configuración del enrutador y dejar que se conectara nuevamente, pero no me permitía hacer esto en mi configuración de Deco Mesh a menos que estuviera desconectado. Así que los pasos para mí fueron:
y luego puntos suspensivos y elija eliminar.
klanomath
mcdado
klanomath
mcdado
klanomath
nvram -p | grep david
mcdado
~ $ nvram -p | grep david
~ $ nvram -p | grep David
fmm-mobileme-token-FMM [REDACTED]
fmm-computer-name David's MacBook Pro
mcdado
mcdado
mcdado