Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
Dron
Зарегистрирован: 06.11.2001 Сообщения: 3
|
Добавлено: Чт Ноя 01 2001 18:55 Заголовок сообщения: Как это делается? |
|
|
Предположим есть комп во внутренней сетке (с внутренним IP), тогда если какая-то программулина (предположим на компе с внешним IP), захочет соединится с первым компом у нее ничего не выйдет. Но если инициатором соединения будет первый комп, то связь (я имею ввиду TCP-соединение) со вторым компом будет установлена, и пакеты будут летать в обе стороны. Меня интересует вот что: предположим первый комп установил связь со вторым, и второй надумал отправить первому какой-нибудь пакетик, у него все получится. Интересно как это делается на уровне IP: какой IP адрес стоит в заголовке IP-пакета, как этот пакет проходит через роутеры, ну вообщем принцип пересылки пакета при описанном мною случае. Буду благодарен за любые разъяснения, желательно, конечно, верные разъяснения-))). |
|
Вернуться к началу |
|
|
and3008
Зарегистрирован: 12.10.2001 Сообщения: 14893 Откуда: Н.Новгород
|
Добавлено: Пт Ноя 02 2001 01:12 Заголовок сообщения: Re: Как это делается? |
|
|
Вы пропустили одно звено. Комп, стоящий во внутренней сети наверняка стоит за маршрутизатором, который поддерживает NAT.
Комп посылает пакет во внешнюю сеть. Его принимает маршрутизатор. Запоминает откуда пакет пришел и куда предназначается, после этого он в заголовке пакета меняет IP-источника и посылает его во внешнюю сеть ОТ СВОЕГО имени.
Внешний комп отвечает. Машрутизатор принимает пакет, глядит от кого и кому он предназначается и передает ее во внутреннюю сеть.
Объяснил я очень примитивно, но идея именно такая. |
|
Вернуться к началу |
|
|
Dmitry.Karpov Гость
|
Добавлено: Пт Ноя 02 2001 11:42 Заголовок сообщения: NAT и все-все-все |
|
|
Начнем с того, что доступ наружу можно делать несколькими способами ( http://www.pi2.ru/UnixFAQ "Ориентировка"). Но в любом случае пакет извне может быть прислат только той программе, которая обслуживается на Proxy, остальным программам Proxy не станет переадресовывать пакетов. Кроме того, Proxy еще и перекорежит этот пакет, т.к. в исходном виде пакет непригоден для внутренней машины.
В случае Masquerading Proxy будет обслуживать только клиентскую программу, открывшую соединение наружу. Т.е. если внутренняя машина запускает Browser и/или ICQ-клиента, и одновременно осуществляет "разделение файлов и принтеров", то доступ к "файлам и принтерам" получить извне не удастся. |
|
Вернуться к началу |
|
|
Dron
Зарегистрирован: 06.11.2001 Сообщения: 3
|
Добавлено: Пт Ноя 02 2001 12:10 Заголовок сообщения: Большое спасибо! Но... |
|
|
меня интересовало немножко на более глубоком уровне. А именно gateway с натом запоминает ip локального компьютера, методом сопоставления ему какого-либо своего порта, в дальнейшем если при установленном тср соединении на этот порт маршрутизатора с натом прийдет пакет, то он швырнет его в локалку на соответствующий внутренний ip, а как запоминает номер порта локального компьютера? Еще раз спасибо! |
|
Вернуться к началу |
|
|
Dmitry.Karpov Гость
|
Добавлено: Пт Ноя 02 2001 15:09 Заголовок сообщения: "Ну и запросы у вас!" сказала база данных и повисла |
|
|
С такими запросами надо брать исходник NAT-демона и читать его! А сопоставление происходит очень похоже на то, как на машине сопоставляются TCP-сессии для разных приложений. |
|
Вернуться к началу |
|
|
|