Translation(s): Русский

(!) ?Обсуждения


Прохождение NAT, NAT Traversal (протокол), NAT-T — инкапсулирует трафик IPSec и одновременно создает пакеты UDP, которые NAT корректно пересылает. Для этого NAT-T помещает дополнительный заголовок UDP перед пакетом IPSec, чтобы он во всей сети обрабатывался как обычный пакет UDP и хост получателя не проводил никаких проверок целостности. После поступления пакета к месту назначения заголовок UDP удаляется, и пакет данных продолжает свой дальнейший путь как инкапсулированный пакет IPSec. Итак, с помощью техники NAT-T возможно установление связи между клиентами IPSec в защищённых сетях и общедоступными хостами IPSec через межсетевые экраны.

Contents

  1. IKE-v1
  2. IKE-v2

IKE-v1


До выпуска strongSWAN версии 5.0.0, обнаружение (discovery) и обход (traversal) NAT должен был ручками явно включаться установкой параметра настройки "nat_traversal=yes" в разделе "config setup" файла "ipsec.conf". В противном случае, IKE-v1-демон pluto, из strongSwan версий линейки 4.x, не будет принимать входящие IKE-пакеты содержащие UDP-порт источника отличный от номера 500. Начиная с версии 5.0.0 IKE-v1-трафик обрабатывается демоном charon, который поддерживает обход (traversal) NAT в соответствии с RFC 3947, при этом не включая NAT-T явно при помощи параметра настройки.

IKE-v2


The IKEv2 protocol includes NAT traversal in the core standard, but it's optional to implement. strongSwan implements it, and there is no configuration involved. The NAT_DETECTION_SOURCE/DESTINATION_IP notifications included in the IKE_SA_INIT exchange indicate the peers NAT-T capability and if a NAT situation is detected, UDP encapsulation is activated for IPsec.

В том случае, если strongSWAN находится за маршрутизатором NAT, то для поддержания незатронутого состояния проброса портов (mapping) на устройстве NAT, strongSwan начинает отправлять keep-alive пакеты.