ネットワーク上にコンピューターのIPアドレスがありますが、IPアドレスを使用してコンピューターの名前を見つける方法はありますか?
たとえば、IPアドレスが192.154.23.60であることがわかっている場合、MacからこのIPを使用して、JacobのMacBookなどの名前を表示できますか?
ネットワーク上にコンピューターのIPアドレスがありますが、IPアドレスを使用してコンピューターの名前を見つける方法はありますか?
たとえば、IPアドレスが192.154.23.60であることがわかっている場合、MacからこのIPを使用して、JacobのMacBookなどの名前を表示できますか?
回答:
Terminal.app
(または同等のもの)から、host
コマンドを使用してコンピューターのネットワーク名を表示できます。これは、すべての共有設定がオフになっているため、経由で表示されていない場合でも名前を返しますFinder
。
たとえば、私のネットワークでは次のようになります(IPアドレスがわかっていて、返される名前の最初の部分はコンピューターの名前です)
➜ ~ host 192.168.2.135
135.2.168.192.in-addr.arpa domain name pointer raspberrypi.private.lan.
あなたの例のように、ネットワーク名がまったく同じ場合、実際のコンピューターの名前に依存しますJacobs-MacBook
。
host 192.168.0.4
もarp 192.168.0.4
できません。
ホスト(sshやARDなど)にアクセスできず、ホスト上で実行されているサービス(iTunes Music Sharing / File Sharingなど)がないと、IPアドレスに基づいたコンピューター名を取得できません。
macOSのコンピューター名は、必ずしもホスト名またはBonjour名と同一ではありません!これは、で簡単に確認できますscutil --get { ComputerName | LocalHostName | HostName }
。ComputerNameはユーザーフレンドリ名、LocalHostnameはBonjour名(両方とも[システム環境設定]> [共有]に表示されます)、およびHostNameはデバイスのホスト名です。ホスト名は通常、DNS、NIS、hostsファイル、または同様の名前解決方法に関連するか、DNSで使用されます。新しくインストールされたコンシューマシステムでは、ホスト名は設定されていません。ComputerNameとLocalHostNameは通常、最初のユーザーの名前とMacモデルから派生します(例:AdminのiMac | Admins-iMac)。
ホストファイルまたはローカルネットワークまたはパブリックネットワークのDNSサーバーにリモートMacの名前レコードがない場合、他の回答(arp、ping、host)に記載されているツールのいずれもホスト名の解決に使用できません。
既知のBonjourサービスがリモートMacで実行されている場合、それを提供するすべてのホストを取得することにより、2段階のプロセスでIPのコンピューターとBonjour名を取得できますdns-sd -Z _nfs._tcp local
(ここのサービス例はNFSです-他のサービス名を見つけることができますここ)および適切なIPが見つかるまで、リストされているすべてのBonjour名をpingします。GUIの代替として、Bonjourブラウザを使用できます。
場合によっては、Bonjour名に似た名前を取得できますsmbutil status <IP>
。この名前は、コンピューター/ Bonjour名の「すべて大文字で特殊文字をほとんど含まない」バージョンであるNetBIOS名です。
ターミナルでは arp
最初に、pingを使用して少なくとも1つのパケットをこのマシンに送信したことを確認してください。
$ ping -c 1 2.2.2.12
PING 2.2.2.12 (2.2.2.12): 56 data bytes
64 bytes from 2.2.2.12: icmp_seq=0 ttl=255 time=0.981 ms
次にarp
そのアドレス。
$ arp 2.2.2.12
<host>.<domain> (2.2.2.12) at 0:1c:c4:f4:b8:c7 on en1 ifscope [ethernet]
arp
と同じことを呼び出しているだけhost
です。