Достижимость тогда плохо названа. Это вводит в заблуждение ... проверка достижимости имени хоста подразумевает для меня, что iphone может пропинговать хост по моему выбору И посмотреть, отвечает ли этот хост. Таким образом, все достижимость программным образом отражается на том, отображается ли на экране значок Wi-Fi или значок 4G (за исключением случаев, когда значки графического интерфейса пользователя не отражают истинное состояние базовой сети). Доступность означает, что iPhone подключен к сети и готов к работе. Ничего больше. Это не поможет вам выяснить ситуацию, когда сервер вашей компании не работает, а сайт 24-7, такой как google.com, работает. Это правильно?

мотрел образец Reachability от Apple и еще один пример из «Поваренной книги разработчика Iphone»

Вот шаги для проверки доступности ip / порта

создать переменную sockaddr_in с указанным IP / порт.вызовите SCNetworkReachabilityCreateWithAddress с адресомвызовите SCNetworkReachabilityGetFlags и посмотрите, установлено ли kSCNetworkFlagsReachable.

Я обнаружил, что любой действительный (действительный диапазон) ip / порт, который я установил для тестирования, мой код говорит, что он достижим, даже если они на самом деле не достижимы, когда я проверяю ping или тест telnet.
(Я видел другие посты SO, где тест на достижимость для конкретного ip всегда был успешным)Достижимость достижимости с адресом не работает

такое SCNetworkReachability .. call только проверяет правильность аргумента (IP-адрес или имя хоста)? то есть, они фактически отправляют пакет (или соединяются) по указанному адресу для проверки достижимости?

Я могу реализовать асинхронное соединение с тайм-аутом самостоятельно, но неясно, сколько времени должно быть, чтобы тайм-ауты не были отклонены рецензентами яблок. все)

Спасибо

Ответы на вопрос(1)

Ваш ответ на вопрос