Обнаружение, если исходящий порт заблокирован - PullRequest
4 голосов
/ 06 декабря 2011

Я работаю над приложением, которое использует AsyncSocket.

Есть ли способ проверить, не блокируется ли определенный порт брандмауэром?

1 Ответ

0 голосов
/ 09 сентября 2013

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

NSError *error = nil;

    if (![socket bindToPort:port error:&error])
    {
        [self logError:[NSString stringWithFormat:@"Error binding port: %@", error)]];
        return;
    }

Работа в сети очень популярна, и мы надеемся, что в большинстве случаев это удастся.

...