Я работаю с микропроцессорными устройствами, на которых установлен / запущен микро-веб-сервер.
У меня есть два из этих устройств, настроенных так, что они могут быть доступны для / через Интернет - я назову устройства «A» и «B».
В настоящее время я могу успешно подключиться к «А» из Интернета (и через его локальную сеть). Однако я не могу подключиться к «B» из Интернета, но я могу подключиться к «B» через его локальную сеть. Обратите внимание, что «B» не защищен брандмауэром - он открыт для Интернета.
Используя Fiddler2, чтобы посмотреть, что происходит, я заметил, что когда я подключаюсь к «A» из Интернета, заголовок запроса читает:
..... **Connection: keep-alive** User-Agent: Mozilla/5.0 (Windows NT 6.0) AppleWebKit/534.30 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 Accept-Encoding: gzip,deflate,sdch Accept-Language: en-US,en;q=0.8 Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Когда я пытаюсь подключиться к «B» из Интернета, заголовок запроса гласит: (это подключение всегда не работает)
..... **Proxy-Connection: keep-alive** User-Agent: Mozilla/5.0 (Windows NT 6.0) AppleWebKit/534.30 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 Accept-Encoding: gzip,deflate,sdch Accept-Language: en-US,en;q=0.8 Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Когда я подключаюсь к "B" из его локальной сети, заголовок запроса гласит: (это соединение всегда успешно)
..... **Connection: keep-alive** User-Agent: Mozilla/5.0 (Windows NT 6.0) AppleWebKit/534.30 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 Accept-Encoding: gzip,deflate,sdch Accept-Language: en-US,en;q=0.8 Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Чтобы быть ясным, всеми разными способами, которые я пытался подключиться к устройствам «A» и «B», я заметил последовательное поведение, когда все неудачные подключения содержат значение заголовка «Proxy-Connection: keep-alive» и все успешные подключения. содержат значение заголовка "Connection: keep-alive".
Также, используя Fiddler, я заметил, что ответ сервера при неудачном соединении гласил:
«Невозможно установить соединение, потому что целевая машина активно отказалась от него».
Причина ошибки заключалась в опечатке в конфигурации сети шлюза и маски подсети: \