NSStream - ошибка обратного просмотра DNS - PullRequest
1 голос
/ 01 апреля 2012

Я должен открыть NSStream для точки доступа Wi-Fi, которая имеет только числовой адрес, а не имя. NSStream занимает 30-40 секунд, чтобы открыть сокет. Экспериментируя, я обнаружил, что telnet-соединение с AP из окна Windows было мгновенным, но на Mac, соединяя те же 30-40 секунд. при исследовании telnet я обнаружил, что реализация на Mac немного отличается, так как по умолчанию он пытается найти имя. читая страницу руководства для telnet, я нашел: -N Запрещает IP-адрес для поиска имени, когда хост назначения указан как IP-адрес.

когда я использовал "порт IP-адреса telnet -N", мое соединение было мгновенным! Я подозреваю, что эта же проблема вызывает задержку в моем соединении NSStream. Есть ли способ сделать эквивалент установки флага "-N" в NSStream?

1 Ответ

1 голос
/ 02 апреля 2012

Похоже, что NSHost недоступен в Cocoa Touch, поэтому вы не можете принудительно заставить хост с данным адресом, хотя я не знаю, сводит ли это к нулю поиск DNS.

Эта проблема имеетбыл с 2005 года, хотя это может не относиться к библиотекам Cocoa Touch.В любом случае не существует данного решения:

...