Пингует порты www.apple.com - PullRequest
0 голосов
/ 14 мая 2018

Я создаю небольшое приложение для iOS с GCDAsyncSocket, которое будет пинговать порты на сайте www.apple.com: список портов .

Например, при попытке подключиться к TCP-порту 80 и 443 я получил статус «подключен», но при попытке 2195 и 2196 я получаю «тайм-аут».

При попытке подключиться к портамс помощью GCDAsyncUdpSocket, к какому бы порту я ни пытался подключиться, я подключаюсь, даже если некоторые порты не открыты (проверено с помощью nmap, которое возвращает «закрыто»).

Итак, у меня есть пара вопросов:

1) Я что-то не так делаю, когда пытаюсь подключиться к портам 2195, 2196 и т. Д.?

2) Является ли GCDAsyncUdpSocket надежным?Что бы я ни пытался с этим, оно проходит.

1 Ответ

0 голосов
/ 14 мая 2018

У вас есть несколько заблуждений:

  1. Вы не должны пытаться подключаться ко многим портам на сервере, который вам не принадлежит, если у вас нет на это полномочий.Это называется pentesting , и это как минимум не приятно, если не незаконно.
  2. Список портов, на которые вы ссылаетесь, не о "www.apple.com", а об Appleпродукты в целом, так как любые компьютеры MacOS.Вы можете использовать компьютер своего друга, чтобы попробовать это.Или виртуальная машина на вашем собственном компьютере.
  3. Протокол UDP не имеет "подключенного" состояния.Большая разница между UDP и TCP заключается в том, что TCP поддерживает соединения, а UDP - нет.«Подключенное» состояние GCDAsyncUdpSocket, вероятно, является поддельным.

См. Это об обнаружении, открыт ли порт UDP или нет.

...