Брандмауэр Windows 7 работает с параметрами по умолчанию, разрешающими исходящие подключения и блокирующими входящие подключения. У меня есть процесс, пытающийся регулярно подключаться из моей локальной сети, и это нормально. Когда работает программа, которая принимает соединение, все идет хорошо. Когда это не так, брандмауэр Windows 7 вызывает тайм-аут попытки подключения вместо отказа в подключении (как это и должно быть).
Я попытался создать правила, чтобы явно разрешить все подключения к этому порту, но время ожидания тем не менее. Мне интересно, блокирует ли брандмауэр пакет RST
от отправки обратно? Полное отключение общего профиля приводит к отказу в соединении (как и ожидалось), а к правилу брандмауэра - нет.
Вот правила, которые я пробовал до сих пор без успеха:
Тип порта, TCP, Указанный порт 11211, Разрешить соединение, применить к Домену, Частному и Общему
Какие-либо предложения?
Примечание. Когда я говорю "отказано", я имею в виду ответ операционной системы на соединение, говорящий «извините, ничего не слушается». Проверьте это на своем локальном компьютере. Откройте командную строку и введите telnet localhost 60000
. Вы должны увидеть что-то вроде этого:
Trying 127.0.0.1...
telnet: connect to address 127.0.0.1: Connection refused
Это соединение отказано. Операционная система "отклоняет" запрос, потому что (по крайней мере, в моей системе) ничего не прослушивает порт 60000.
Теперь попробуйте telnet example.com 60000
. Подождите. В конечном итоге вы увидите что-то вроде этого:
Trying 192.0.43.10...
telnet: connect to address 192.0.43.10: Operation timed out
Увидеть разницу? На сайте example.com нет хоста, который мог бы ответить "отказано", поэтому ваша локальная операционная система (например, не сервер) говорит: «Ничего нет, тайм-аут».
Очень разные. Проблема заключается в том, что брандмауэр Windows 7 не генерирует "отказ", как должно быть. Я хотел бы узнать, как это исправить.