Как получить все доступные имена хостов и связанные IP-адреса в локальной сети, используя Obj C в Mac OS X? - PullRequest
0 голосов
/ 17 августа 2011

У меня есть требование получить список IP-адресов всех машин, подключенных к локальной сети. Я создал объект NSHost и использовал его для получения адресов текущего хоста, и он работал нормально. Но мне нужно получить адреса всех других хостов в сети. Любой полезный ответ будет полезен. Заранее спасибо.

мой фрагмент:

NSHost* host = [NSHost currentHost];
NSString* myIPAddress = [NSString stringWithFormat:
                                  [[host addresses] objectAtIndex:1]];

, выполнив это, присвоило myIPAddress значение 192.168.1.202, что является правильным.

1 Ответ

0 голосов
/ 17 августа 2011

Это не обязательно знать и зависит от сговора с другими хозяевами. Вы можете определить свой широковещательный адрес (например, 192.168.1.255), отправить эхо-запрос ICMP и затем перечислить ответы, но система, которая не отвечает на запрос, не будет отображаться. Подобные проблемы очевидны при использовании ответов на любой другой запрос: сканирование портов или регистрации mDNS.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...