El nombre del dispositivo en el enrutador es diferente al nombre de host OS X

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:

Preferencias del sistema que muestran la configuración de uso compartido Terminal que muestra información de nombre de host

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.

Configuración del enrutador con ajustes erróneos

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.

¿El anfitrión david-macbook-pro alguna vez tuvo el nombre david-MBP ?
Sí, lo escribí un poco retorcido: cuando configuré la Mac, usé ese nombre de host. Con el transcurso del tiempo, lo cambié varias veces con cualquier comando común y en la máquina cambió. Pero el que es leído por los enrutadores realmente parece quedarse.
Por lo tanto, no es un problema de OS X, sino uno de los sistemas operativos del enrutador (probablemente algún descendiente de Linux). ¡Una vez que se establece el nombre de host, el enrutador no lo actualiza correctamente en su base de datos de hosts!
Sin embargo, mi último punto en la pregunta es que este enrutador se encontró con mi Mac hace aproximadamente un mes, pero mi Mac ha estado en esta configuración durante meses/años. Así que hay una configuración en algún lugar de OS X al acecho.
Verifique su nvram connvram -p | grep david
~ $ nvram -p | grep david ~ $ nvram -p | grep David fmm-mobileme-token-FMM [REDACTED] fmm-computer-name David's MacBook Pro
30/10/15 00:03:38,651 servicio de resumen[10487]: solicitud de resumen: uid=0 30/10/15 00:03:38,651 servicio de resumen[10487]: solicitud de resumen: solicitud de inicio 30/10 /15 00:03:38,659 servicio de resumen [10487]: solicitud de resumen: inicio de retorno de dominio: MACBOOKPRO-7BF4 servidor: DAVID-MACBOOK-PRO el dominio interno era: <NULL> 30/10/15 00:03:38,695 resumen- servicio[10487]: solicitud de resumen: uid=0 30/10/15 00:03:38,695 servicio de resumen[10487]: solicitud de resumen: solicitud de inicio 30/10/15 00:03:38,703 servicio de resumen[10487 ]: digest-request: init return domain: DAVID-MBP server: DAVID-MACBOOK-PRO indomain was: <NULL>
Supongo que esto tiene algo que ver con Kerberos...
cl.ly/image/3X372E0G1t1K Cada vez que me conecto a un enrutador específico, mi nombre de host en la máquina se cambia al "antiguo". ¡Realmente no tengo idea de por qué! Intento cambiarlo pero nada. Es como si un DNS central me estuviera asignando un nombre de host que fue etiquetado en mi MAC, tal vez...

Respuestas (5)

Hay tres nombres de host diferentes que utiliza macOS/OS X:

  • Nombre del ordenador
  • Nombre de host
  • LocalHostName

Cada uno de estos valores se puede encontrar en/Library/Preferences/SystemConfiguration/preferences.plist


Nombre del ordenador

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.

Nombre de host

scutil --get HostName

De acuerdo con la scutilpágina de manual, HostName es "el nombre asociado con hostname(1) y gethostname(3)". Este nombre puede provenir de cualquiera de las siguientes fuentes:

  • El nombre proporcionado por el servidor DHCP o BootP para la dirección IP principal
  • El primer nombre devuelto por una consulta inversa de DNS (dirección a nombre) para la dirección IP principal
  • El nombre de host local
  • El nombre "localhost"

(En mi instalación virgen de El Capitán, el HostNamevalor predeterminado es LocalHostName)

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.

TL;DR

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


1 Agente de directorio/protocolo de ubicación de servicio SLP/DA. El Protocolo de ubicación de servicios es un protocolo de descubrimiento de servicios que permite que las computadoras y otros dispositivos encuentren servicios en una red de área local sin configuración previa.

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.

Creo que hay un cuarto... El nombre de NetBIOS que puede obtener dedefaults 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í:

ID de cliente DHCP

esto resolvió un problema con nombres de host inconsistentes al compartir preferencias.

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:

  1. Inicie sesión en la interfaz de administración de su enrutador
  2. Haga clic en "Dispositivos adjuntos" (o la pantalla correspondiente en su enrutador que rastrea los dispositivos actualmente conectados a él).
  3. Allí verá el nombre del dispositivo que desea actualizar
  4. Ahora vaya a la pantalla de "lista de control de acceso" en su enrutador (esta pantalla le permite hacer una lista en blanco y negro de los dispositivos que pueden conectarse)
  5. Active la función de control de acceso y luego edite la entrada que muestra el nombre del dispositivo que desea actualizar
  6. Simplemente elimine el nombre del dispositivo y haga clic en actualizaringrese la descripción de la imagen aquí
  7. Regrese a la pantalla de "dispositivos adjuntos" (o la correspondiente en su enrutador) y ahora verá que se ha actualizado para mostrar el nombre actual de su dispositivo macbook (como explicó su publicación original, cambia el nombre del dispositivo: "preferencias del sistema" -> "compartir".)
  8. Esto solucionó el problema para mí. Espero que ayude.

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:

  1. Apague el wifi en mi Macbook.
  2. Inicie sesión en la aplicación Deco en mi teléfono.
  3. Desliza hacia abajo para actualizar la lista de dispositivos y... espera.
  4. Vea que el nombre de mi computadora desapareció.
  5. Ir a dispositivos fuera de línea

Haga clic en el nombre del dispositivo en "sin conexión"

  1. Toque el nombre de mi computadora anterior, haga clic en el ícono de ajustes.

Haga clic en el engranaje

y luego puntos suspensivos y elija eliminar.

Haga clic en Eliminar

  1. Vuelva a encender el wifi de su computadora y debería conectarse con el nuevo nombre en el enrutador.