У меня есть служба Windows, которая взаимодействует с сервером и действует как прокси-сервер между клиентами и реальным сервером. Данные клиента отправляются на сервер и данные сервера обратно клиенту. Вышеуказанные два полностью независимы, поскольку они работают на отдельной ветке.Сокет, кажется, дает проблемы во внешней сети
Ниже приведены шаги: -
- Оправа принят слушателем
- Thread 1 - получает данные от сервера и отправляет его клиенту
- Тема 2 - получает данные от клиента и отправляет его к серверу
Это происходит непрерывно в течение нескольких часов без проблем в локальной сети (если клиенты и сервер находятся на одной машине или в той же локальной сети)
Проблема возникает, когда клиент находится в другой сети. Мой сервер прослушивает сервер Win2003 и имеет открытый IP-адрес. Когда клиент пытается подключиться к этому серверу с помощью общедоступного IP + порта, соединение выполняется, но вскоре оно будет сброшено и будет выброшено SocketException (10053 - соединение, прерванное программным обеспечением на этом компьютере). На этом компьютере нет антивирусного клиента, а брандмауэр Windows отключен.
** Обновлено
сервис работает на сервере клиента, и я не очень уверен, что любой другой брандмауэр. Услуга отлично работает на моем сервере Win2003 с клиентами в моей сети, но дает проблемы на другом сервере с клиентами в другой сети.
Есть ли другие межсетевые экраны между двумя сетями? –