Как я могу сканировать локальную сеть на наличие подключенных устройств? (Mac OS)

115

Я в основном ищу что - то вроде этого , но доступны на Mac.

Я пытаюсь подключить новую рабочую станцию ​​к нашему беспроводному многофункциональному принтеру, и у меня чертовски много времени получается, чтобы устройство выдало мне IP-адрес для подключения.

Есть ли способ, как я могу сканировать сеть как-то?

Если это имеет значение, новая рабочая станция использует Mac OS X 10.6.

Мацек
источник

Ответы:

182
  1. Пингуйте широковещательный адрес
    (вы можете найти его с помощью ifconfig | grep broadcast)

  2. а затем сделать arp -a

Хасан Чоп
источник
2
Отличный совет .. Я отфильтровал результаты, чтобы показать только те ip, которые не являются неполными (и присутствуют) с .. arp -a | grep :
Jas Panesar
11
Может кто-нибудь объяснить, почему / как это работает? Вы пропингуете широковещательную рассылку, и это заставляет все другие подключенные клиенты совершать сетевую активность, которая затем видна arp ??
deweydb
24
Лучший ответ. Вы также можете сделать это одной строкой: ifconfig | grep трансляция | агр -a
Codeversed
1
@deweydb, когда вы находитесь в локальной сети, подключение к IP-адресу включает преобразование IP-адреса в mac-адрес. ARP хранит кэш всех разрешенных IP-адресов. Выполнение широковещательного пинга косвенно вызывает разрешение для всех IP-адресов в сети. Теперь ... как мы можем преобразовать список IP-адресов в DNS (или другие) имена?
Рольф
2
Я использую: arp -a | grep -v '^?' под Macosx.
Мирко Эберт
8

Где ххх - это первые три числа в вашем IP-адресе.

for ip in $(seq 1 254); do ping -c 1 x.x.x.$ip -o ConnectTimeout=5; [ $? -eq 0 ] && echo "x.x.x.$ip UP" || : ; done
ow3n
источник
3
На Mac здесь пришлось немного скорректировать свой ответ, так как время ожидания установлено с помощью -tопции (например, -t 5на 5 секунд)
pabuisson
1
Да, это также не сработало для меня. На Mac вам нужно не только использовать опцию -t 5, но и переместить ее до ip. т.е. -c 1 -t 5 xxx $ ip. В противном случае это приведет к ошибке и взрыву.
Мэтт Х
5

Ваш принтер обеспечивает общий доступ к файлам для сброса файлов или вы просто пытаетесь найти принтер в своей сети?

Ваш новый многофункциональный принтер поддерживает Bonjour / ZeroConf? (Большинство новых сетевых принтеров делают). Если это так, вы можете использовать программу, такую ​​как Bonjour Browser, чтобы посмотреть, что доступно в вашей сети.

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

С самого вашего Mac вы можете использовать программу, такую ​​как Nmap, из командной строки или использовать приложение на основе графического интерфейса (например, Zenmap - GUI для Nmap или AngryIPScanner ), чтобы сканировать вашу сеть и затем посмотреть, какие порты доступны.

Chealion
источник
1
Чтобы добавить ответ @ Chealion, если ваш принтер поддерживает Bonjour, вы должны увидеть его в списке «Ближайшие принтеры» во всплывающем меню «Принтер» диалогового окна «Файл> Печать ...» или в принтере. браузер вы видите, когда вы идете в «Добавить принтер ...». В настоящее время Bonjour поддерживает множество многофункциональных принтеров от крупных производителей, и я удивлен, когда принтер не появляется автоматически в тех местах, которые я упомянул.
Spiff
3

NMAP[nmap] - ваш лучший друг для всех видов сканирования сетевых устройств. Используйте, Zenmapесли вам нужен графический интерфейс [zenmap].

Предполагая, что ваша локальная сеть 192.168.0.0/24(где 24означает маску сети 255.255.255.0), это даст вам онлайн-хосты с их IP и MAC-адресами:

nmap -sP 192.168.0.0/24

Вы можете скачать пакет с веб-сайта проекта или создать себя из источников с MacPorts [macports]. Наслаждайтесь! :-)

[nmap] https://nmap.org/

[zenmap] https://nmap.org/zenmap/

[macports] https://www.macports.org/

CeDeROM
источник
0

Работает:

$ for ip in $(seq 1 254); do ping -c 1 192.168.0.$ip; done

или же

$ for ip in $(seq 1 254); do ping -c 1 192.168.0.$ip -W 1; done

Описание:

loop from 1 till 254
on each loop ping the ip one after another, to skip press CTRL + C
or
on each loop -W 1 means auto skip after 1 second
YumYumYum
источник
0

Fing (в основном известный как сканер мобильных сетей для android / ios) имеет свободно доступную консольную версию macos, которая дополнительно производит дактилоскопию через встроенные таблицы производителей mac-адресов. Похоже, что это быстрее, чем Nmap и проще в использовании.

После установки вы можете запустить его с:

sudo fing

Это явно закрытый источник, поэтому я не знаю, насколько безопасно его использовать. Убедитесь, что вы знаете о потенциальных рисках.

ccpizza
источник
-2

На Mac есть IP Scanner , который выглядит как GUI, который объединяет arp, bonjour, NBT и некоторые другие технологии сетевого сканирования.

Ecume Des Jours
источник
7
Здравствуй! В соответствии с часто задаваемыми вопросами , пожалуйста, раскрывайте любую принадлежность к продуктам, которые вы рекомендуете. И, пожалуйста, не позволяйте этому быть единственной причиной, по которой вы являетесь Супер пользователем, иначе ваши посты могут рассматриваться как спам.
slhck
6
IP-сканер бесполезен, так как имеет ограничение в 6 устройств, тогда они хотят 30 долларов. Избегайте этого.
JohnnyVegas