Вопрос задаю из любопытства, работе он не мешает. Есть сервер owa, внутри сети, есть шлюз в интернет cisco, извне эта же cisco делает проброс 443 на сервер owa. Так вот, если изнутри подключатьться на внутренний ip owa, то все работает. Из интернета на внешний ip cisco - тоже работает. А вот если изнутри подключаться на внешний ip, то ssl error. И это не ошибка имени, а не устанавливается ssl соединение в принципе. Получается что пакет уходит на шлюз, далее на шлюз провайдера и возвращается в сеть. Вот думаю, что в нём портится по пути?
На шлюз провайдера в данном случае пакет не уходит, если у вас единственное подключение и NAT настроен на вашем шлюзе.
Скорей всего происходит следующее - вы отправляете пакет на внешний адрес (шлюз), шлюз NAT'ит его на внутренний адрес сервера, сервер видит что пакет локальный и отвечает напрямую, минуя шлюз, поэтому пакет не NATится обратно и приходит с адреса локального интерфейса. Поскольку адрес ответа отличается от того, на который был послан пакет - ответ реджектится инициатором соединения.
Чтоб такого не было, обычно серверы выносят в отдельную зону (DMZ) которая роутится через шлюз.
Именно так. Достаточно на бумажке нарисовать как изменяются source и destination адреса в заголовках пакетов согласно правилам NAT, и невозможность изнутри сети обращения на внешний айпи становится очевидной.
надо смотреть на сервере owa.
1. пакет уходит на внешний адрес, но проброс не срабатывает, тк правило на внешний интерфейс
2. пакет успешно пробрасывается, но тк пакет пришел на внутренний интерфейс, ip адресата не меняется. то есть примерно так 192.168.1.10 -> x.x.x.x:443 -> 192.168.1.3:443 (source ip=192.168.1.10, блин, я же устанавливал tcp соединение с x.x.x.x, а пришло от 192.168.1.3, хакиры походу, отбой)