Không thể ping máy cục bộ của tôi


18

Tôi vừa cập nhật máy Mac của mình lên macOS Sierra 10.12. Tên máy chủ của tôi là ninjaPixels-Macbook-Pro và nếu tôi chạy:

ping ninjaPixels-Macbook-Pro.local hoặc là ping ninjaPixels-Macbook-Pro

Tôi nhận được một lỗi của máy chủ không xác định .

host ninjaPixels-Macbook-Pro.localtrả về lỗi: Không tìm thấy máy chủ ninjaPixels-Macbook-Pro.local: 3 (NXDOMAIN)

Đây là một vấn đề vì một phần của cơ sở mã của chúng tôi tại nơi làm việc cần phải chạy con trăn sau: socket.gethostbyname(socket.gethostname())và nó thất bại vì máy tính của tôi dường như đã quên mất đó là ai.

Tôi có thể chạy thành công ping localhostping 127.0.0.1

Tôi đã thử như sau:

  • Khởi động lại.
  • Tắt tường lửa.
  • Thay đổi tên máy chủ cục bộ của tôi, sử dụng Tùy chọn hệ thống> Chia sẻ> Chỉnh sửa.
  • 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

ngoài lĩnh vực bên trái ... Tôi đã thấy các vấn đề tương tự nếu IPv6 được ánh xạ tới localhost trong máy chủ, ::1 127.0.0.1thay vào đó ánh xạ dường như khắc phục nó.
Tetsujin

@Tetsujin Cảm ơn. Tôi chỉ thử sửa đổi máy chủ với điều đó nhưng đáng buồn là không có xì gà.
ninjaPixel

1
Chia sẻ gì bạn đã kích hoạt, nếu có? Bạn cần kích hoạt một số hình thức chia sẻ (hoặc Dịch vụ được bật trong Chia sẻ) để ping $HOSTNAME. Khi cài đặt sạch macOS Sierra, Tường lửa tắt và không có gì được chia sẻ, tôi có thể sao chép ping $HOSTNAMElỗi. Tôi bật nó lên, ví dụ như Chia sẻ tệp, tôi có thể ping $HOSTNAMEtừ macOS và ping macOShostname.localtừ OS X trên cùng một mạng.
dùng3439894

@ninjaPixel Bạn có máy chủ dns trong mạng của mình không, miền tìm kiếm (trong SysPrefs> Mạng> Giao diện> DNS) và cuối cùng là tên máy chủ của máy Mac của bạn (ví dụ: ninjapixel.example.com) nếu có?
klanomath

@ user3439894 Cảm ơn bạn, bạn đã giải quyết nó! Tôi cần phải kích hoạt một số hình thức chia sẻ. Nếu bạn muốn đăng nó như một câu trả lời, tôi sẽ chấp nhận nó. Chúc mừng!
ninjaPixel

Câu trả lời:


18

Giả sử Tường lửa bị tắt, sau đó ping $HOSTNAME, phải có một số hình thức chia sẻ hoặc dịch vụ được bật trong Tùy chọn hệ thống> Chia sẻ hoặc thêm một mục vào /etc/hoststệp, tùy thuộc vào cách thức / những gì bạn đang cố gắng truy cập $HOSTNAME. Ví dụ, 127.0.0.1 computer_namenơi computer_nameđược báo cáo bởi echo $HOSTNAMEhoặc thay cho 127.0.0.1Địa chỉ IP thực tế của Bộ điều hợp mạng trên hệ thống của bạn.


1
Thêm 127.0.0.1 computer_namecông việc cho tôi.
javadba

3
Sau khi bật Chia sẻ tệp ping macOShostname.localbắt đầu hoạt động, ngay cả sau khi tắt Chia sẻ tệp .
Marinov Iván

Điều đó thật kỳ lạ, nó đã làm việc cho tôi trong 2 tuần và đã ngừng hoạt động ngay bây giờ khi thay đổi tập tin etc / hosts của tôi cũng hoạt động tốt ...
djnose
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.