Impossibile eseguire il ping sul mio computer locale


10

Ho appena aggiornato il mio Mac a macOS Sierra 10.12. Il mio nome host è ninjaPixels-Macbook-Pro e se corro:

ping ninjaPixels-Macbook-Pro.local o ping ninjaPixels-Macbook-Pro

Ho un errore di Host sconosciuto .

host ninjaPixels-Macbook-Pro.local restituisce l'errore: Host ninjaPixels-Macbook-Pro.local non trovato: 3 (NXDOMAIN)

Questo è un problema poiché parte del nostro codebase in uso ha bisogno di eseguire il seguente python: socket.gethostbyname(socket.gethostname()) e fallisce perché il mio computer sembra aver dimenticato chi è.

Posso correre con successo ping localhost e ping 127.0.0.1

Ho provato il seguente:

  • Riavvio.
  • Spegnere il firewall.
  • Modifica del mio nome host locale, utilizzando le Preferenze di sistema & gt; Condivisione & gt; Modificare.
  • sudo killall -HUP mDNSResponder
  • dscacheutil -flushcache
  • sudo launchctl unload -w /System/Library/LaunchDaemons/com.apple.mDNSResponder.plist
  • sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.mDNSResponder.plist

fuori dal campo a sinistra ... Ho visto problemi simili se IPv6 era mappato a localhost negli host, mappando ::1 127.0.0.1 invece sembra aggiustarlo.
Tetsujin

@Tetsujin Grazie. Ho appena provato a modificare gli host con quello, ma purtroppo nessun sigaro.
ninjaPixel

1
Che condivisione hai abilitato, se ce ne sono? È necessario disporre di una qualche forma di condivisione abilitata (o servizio abilitato in Condivisione) al fine di ping $HOSTNAME. Su una installazione pulita di macOS Sierra, il firewall è disattivato e nulla è condiviso, posso replicare a ping $HOSTNAME errore. Accendo, ad es. Condivisione di file, posso ping $HOSTNAME da macOS e ping macOShostname.local da OS X sulla stessa rete.
user3439894

@ninjaPixel Hai un server DNS nella tua rete, qual è il dominio di ricerca (in SysPrefs & gt; Rete & gt; Interfaccia & gt; DNS) e infine qual è il nome host del tuo mac (ad es. ninjapixel.example.com), se presente?
klanomath

@ user3439894 Grazie, l'hai risolto! Avevo bisogno di abilitare qualche forma di condivisione. Se vuoi pubblicarlo come risposta, lo accetto. Saluti!
ninjaPixel

Risposte:


13

Supponendo che il firewall sia spento, quindi per ping $HOSTNAME, deve esserci una forma di condivisione o servizio abilitato in Preferenze di Sistema & gt; Condivisione, o aggiungi una voce al /etc/hosts file, a seconda di come / cosa stai tentando di accedere $HOSTNAME. Esempio, 127.0.0.1 computer_name dove computer_name è ciò che viene segnalato da echo $HOSTNAME o al posto di 127.0.0.1 l'indirizzo IP effettivo della scheda di rete sul sistema.


Aggiunta 127.0.0.1 computer_name per me va bene.
javadba

2
Dopo aver attivato la condivisione di file ping macOShostname.local ha iniziato a lavorare, anche dopo aver disattivato la condivisione di file .
Marinov Iván
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.