Как узнать IP-адрес моего другого Mac?


29

У меня есть два компьютера Mac в одной сети, оба подключены к моему интернет-маршрутизатору. У меня настроен общий доступ к экрану на одном из них, поэтому я могу подключиться к нему с помощью команды K в Finder с vnc://URL-адресом, и это прекрасно работает.

Мой маршрутизатор назначает IP-адреса с помощью DHCP, что в целом хорошо, но это означает, что если машина будет перезапущена или возобновлена ​​аренда DHCP, я не знаю, к какому IP-адресу подключаться (без перехода на другую машину выяснить).

Конечно, мой Mac уже знает IP-адрес другого моего Mac: в Finder я вижу имя и значок / тип моего другого Mac на боковой панели! К сожалению, Get Info не отображает IP-адрес или что-либо еще полезное об этом.

Как я могу узнать IP-адрес моего другого Mac, возможно, используя Zeroconf / Bonjour? Я в порядке с решением для командной строки, если есть простое.

РЕДАКТИРОВАТЬ: У меня работает Lion, и я думаю, что общий доступ к экрану OS X транслирует объявление службы Bonjour для него, но диалоговое окно Lion для подключения к серверу не использует его. Если это то, что делает Mountain Lion, то это тоже полезно!


Пингуйте свое сетевое имя, и он вернет свой IP. (Например ping other-computer’s-name)
Алекс

Алекс: Да, но проблема в том, как получить его имя хоста, если я знаю только его имя трансляции Zeroconf (которое не совпадает).
Кен

Ответы:


39

Ваши компьютеры должны быть доступны как computer-name.local , например, Kens-Computer.local или что-то в этом роде, поэтому в зависимости от того, что вы пытаетесь сделать, вы можете просто использовать это имя, а не IP.

Таким образом, вы можете просто ввести vnc: //Kens-Computer.local в окне «Connect to». Вы можете увидеть сетевое имя компьютера, если перейдете на панель настроек « Общий доступ» в « Системных настройках» . Это вверху страницы с сообщением типа « Компьютеры в вашей локальной сети могут получить доступ к вашему компьютеру по адресу: Kens-Computer.local »

Убедитесь, что вы включили суффикс «.local» для получения Bonjour IP, иначе ваш DNS-поиск может автоматически добавить какой-нибудь другой суффикс имени хоста (в зависимости от конфигурации сети / DHCP) или просто не сможет найти нужный хост.

Если вы действительно хотите получить IP-адрес, вот несколько вариантов:

Добрый день / днс-сд

Вы можете использовать Bonjour напрямую с помощью таких команд, как средство обнаружения служб DNS (dns-sd). Попробуйте следующее в приложении «Терминал»:

% dns-sd -q computer-name
DATE: ---Tue 09 Oct 2012---
18:13:39.209  ...STARTING...
Timestamp     A/R Flags if Name                             T   C Rdata
18:13:39.210  Add     2  4 Computer-Name.local.             1   1 10.1.1.141

dns-sdИнструмент может сделать совсем немного, например , если вы хотите получить список всех локальных служб VNC (по крайней мере те , которые рекламируются через Bonjour). Услуги VNC объявляются как "_rfb" в mDNS / Bonjour:

% dns-sd -B _rfb local

пинг

Или вы можете просто пропинговать его, который покажет IP в выходных данных (и просто использует Bonjour / mDNS, чтобы найти IP).

% ping computer-name.local
PING computer-name.local (10.1.1.141): 56 data bytes
64 bytes from 10.1.1.141: icmp_seq=0 ttl=64 time=0.066 ms

Это довольно полный ответ, который помог мне разобраться. Недостающая часть головоломки заключалась в том, что мне нужно перейти к панели управления «Общий доступ» на этом Mac, чтобы выяснить, что именно оно называет по имени - оно заменяет пробелы и нелатинские символы, поэтому «имя», которое я вижу в Finder или from dns-sd- это не «имя», которое мне нужно использовать, pingили vnc://URL. Я еще не нашел способ выяснить это по сети, что странно.
Кен

@Ken: у меня была такая же проблема. Попробуйте посмотреть на вывод файла зоны и SRVзапись. Я обнаружил, что использование типа сервиса _rfbхорошо работает для отображения всех компьютеров с включенным общим доступом к экрану в моей сети. Попробуйте: dns-sd -Z _rfbилиdns-sd -Z _rfb local | grep SRV
TrinitronX

10

Откройте Терминал и введите: arp -aон перечислит все компьютеры в сети и (обычно) имена хостов.


Эта команда отображает для меня 4 записи - мой кабельный модем, мой маршрутизатор, базовую станцию ​​Wi-Fi и странную запись "? (192.168.15.255) на ff: ff: ff: ff: ff: ff" - но не мой другой Mac.
Кен

Адрес 255 - это маска подсети. Попробуйте сделать ping -c5 192.168.15.255потом работает arp -a.
daviesgeek

2

Вы можете войти в роутер и искать таблицу DHCP . В нем будут перечислены все подключенные устройства вместе с их MAC и IP-адресами.

Но чтобы вообще избежать этой проблемы, почему бы вам не настроить DHCP Reservation через маршрутизатор? Благодаря этому вы можете назначить определенный MAC-адрес определенному IP. Таким образом, ваши IP-адреса DHCP остаются постоянными.

Шаги, необходимые для достижения этого, будут зависеть от марки и модели маршрутизатора.


Мой роутер не поддерживает статическую аренду DHCP, и даже если бы это было так, я бы этого не хотел. Я считаю, что это особенность, которая мне не нужна никакая специальная конфигурация для любого моего сетевого оборудования, поэтому я могу сделать «сброс всех», если он сходит с ума (или заменить его на новый). У меня достаточно, чтобы отследить!
Кен

1

В качестве альтернативы вы можете войти в свой роутер в браузере, чтобы увидеть устройства в сети и их IP-адрес. На моем linksys я перехожу к 192.168.1.1, нажимаю на статус, затем на локальную сеть и затем на таблицу DHCP-клиентов. Он показывает каждое устройство в сети и его IP-адрес.

Вы можете увидеть ваш маршрутизатор IP , если вы проверить настройки IP, как это будет указано в качестве DHCP - сервера или маршрутизатора .


0

Чтобы найти IP-адрес на MAC, выполните следующие действия:

  1. Запустите Терминал, расположенный в / Applications / Utilities /
  2. Введите следующую команду:

    ifconfig |grep inet.*broadcast
    

Если вы хотите найти внешний IP-адрес, посетите http://www.ip-details.com/ или http://www.whatismyip.com/ .


0

arp -a должен дать вам все устройства в вашей сети.

От man arp:

arp - разрешение адреса отображения и контроля

Утилита arp отображает и изменяет таблицы преобразования адресов Интернет-Ethernet, используемые протоколом разрешения адресов (arp (4)). Без флагов программа отображает текущую запись ARP для имени хоста. Хост может быть указан по имени или номеру, используя точку в Интернете.

-a Программа отображает или удаляет все текущие записи ARP.


0

Отправляйся System Preferences > Sharingи проверь Local Hostname.

Это должно быть что-то вроде Mac-Mini.local. Вы можете использовать это вместо IP для ссылки на компьютер в вашей сети.

Адресная строка Safari будет принимать адрес и порт, такие как: Mac-Mini.local:8080


Но что, если человек не может / не хочет открывать Mac-mini, что, как мне кажется, и есть вопрос, который здесь
делается

1
@ankii Справедливо, но я искал «как найти Mac IP» и т. д., потому что я думал, что это единственный вариант. Я думаю, что многие люди предпочли бы найти их Local-Hostname.local один раз , а затем использовать его в будущем.
Пкамб
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.