RFC: 3027
Оригинал: Protocol Complications with the IP Network Address Translator
Категория: Информационный
Дата публикации:
Авторы: ,
Перевод: Мельников Дмитрий Анатольевич

2.4. Трансляция IP-пакетов, содержащих фрагменты TCP/UDP-блоков, через NAT-модуль

При передаче IP-пакетов (например, корпоративными IP-узлами), содержащих фрагменты TCP/UDP-блоков, использование NAPT-модуля может привести к преждевременному прерыванию сеанса связи. Причина этого в следующем. Только IP-пакет с первым фрагментом TCP/UDP-блока, будет содержать TCP/UDP-заголовок, который будет необходим для привязки каждого IP-пакета к конкретному сеансу связи. Последующие IP-пакеты будут содержать фрагменты TCP/UDP-блока без TCP/UDP-заголовка, но они будут содержать один и тот же идентификатор разбиения блока, который был указан в первом фрагменте. Предположим, два корпоративных IP-узла передают IP-пакетов, содержащие фрагменты TCP/UDP-блоков, одному и тому же IP-узлу-получателю. И может случиться так, что оба IP-узла используют одинаковый идентификатор разбиения блока. Когда IP-узел-получатель принимает два не связанных между собой фрагмента TCP/UDP-блоков, но имеющих одинаковый идентификатор разбиения блоков, и причем с одинаковым IP-адресом IP-узла-отправителя, то тогда просто невозможно определить к каким сеансам связи принадлежат принятые фрагменты блоков. Соответственно, оба сеанса связи будут скомпрометированы и досрочно завершены.

2.5. Прикладные службы, требующие постоянной (неизменяемой) «привязки» отображаемых адресов

NAT-модуль будет нарушать функционирование тех прикладных служб, которые требуют сохранения одной и той же «привязки» транслируемых адресов (корпоративного и внешнего) на протяжении всех последующих сеансов связи. Такие прикладные службы требуют, чтобы отображение корпоративного адреса во внешний и наоборот («привязка адресов») не изменялось между сеансами связи, так как один и тот же внешний адрес может понадобиться для повторного использования в течении последующих сеансов связи. И действительно, NAT-модуль не может знать этого требования и может переназначить внешний IP-адрес для других IP-узлов между сеансами связи. Чтобы блокировать процеуду NAT-модуля по удалению «привязки» транслируемых адресов, может понадобиться дополнительный программный модуль, который бы по требованию прикладного процесса информировал NAT-модуль о сохранении имеющегося взаимооднозначного соответствия адресов. В противном случае, такую функцию может выполнять ALG-субмодуль, то есть будет информировать NAT-модуль о сохранении «привязки» адресов.

2.6. Прикладные службы, требующие большего числа внешних адресов, чем их есть в действительности

Данная проблема возникает тогда, когда число корпоративных IP-узлов больше, чем число имеющихся внешних IP-адресов, в которые отображаются корпоративные IP-адреса. Возьмем, к примеру, прикладную службу удаленного доступа «rlogin», сеанс связи которой инициирован IP-узлом корпоративного сетевого сегмента, обслуживаемого NAPT-модулем. Пользователи службы «rlogin» используют «хорошо известный» номер ТСР-порта «512», зарегистрированный для «rlogin», в качестве идентификатора транспортного уровня. Не более, чем один IP-узел в корпоративной сети может инициировать сеанс связи этой службы. В данном случае требуется большое количество внешних адресов, чем их есть на самом деле. NAT-модули могут только резервировать адреса, но не могут формировать новые номера.

2007 - 2017 © Русские переводы RFC, IETF, ISOC.