Cannot ping my local machine
I have just updated my Mac to macOS Sierra 10.12. My hostname is ninjaPixels-Macbook-Pro and if I run:
ping ninjaPixels-Macbook-Pro.local
or ping ninjaPixels-Macbook-Pro
I get an error of unknown host.
host ninjaPixels-Macbook-Pro.local
returns the error: Host ninjaPixels-Macbook-Pro.local not found: 3(NXDOMAIN)
This is an issue as part of our codebase at work needs to run the following python: socket.gethostbyname(socket.gethostname())
and it fails because my computer seems to have forgotten who it is.
I can successfully run ping localhost
and ping 127.0.0.1
I’ve tried the following:
- Rebooting.
- Switching off the Firewall.
- Changing my local hostname, using System Preferences > Sharing > Edit.
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
Solution 1:
Assuming the Firewall is turned off, then in order to ping $HOSTNAME
, there has to be some form of sharing or service enabled in System Preferences > Sharing, or add an entry to the /etc/hosts
file, depending on how/what you're trying to access by $HOSTNAME
. Example, 127.0.0.1 computer_name
where computer_name
is what's reported by echo $HOSTNAME
or in lieu of 127.0.0.1
the actual IP Address of the Network Adapter on your system.