# NAT-Traversal

Тут мы не будем вдаваться в принципы работы [NAT-T](http://en.wikipedia.org/wiki/NAT_traversal) Передам только суть: за счёт дополнительного UDP-заголовка IPSec может строить туннель сквозь NAT. Это позволяет строить VPN даже на тех узлах, где у вас нет публичного адреса.\
Нет необходимости этот функционал каким-то особым образом активировать и настраивать – он работает по умолчанию.\
Усложним схему добавлением ещё одного маршрутизатора в Брно.

![](http://img-fotki.yandex.ru/get/4135/83739833.24/0_abee9_dda37d0c_XL.jpg)

Допустим, это провайдерская железка, осуществляющая натирование. То есть фактически на роутере в филиале у нас будет динамический адрес из приватного диапазона на физическом интерфейсе. GRE в чистом виде не может построить VPN при таких условиях, IPSec может, но сложно настраивать. mGRE в связке с IPSec может легко!

Давайте посмотрим как выглядит таблица NHRP в этом случае:

> msk-arbat-gw1#show ip nhrp brief\
> Target Via NBMA Mode Intfc Claimed\
> 172.16.254.4/32 172.16.254.4 **10.0.0.2** dynamic Tu0 < >

То есть изучил он всё-таки приватный адрес, выделенный провайдером.\
Надо заметить, что в таблице маршрутизации должен быть маршрут до этого приватного адреса, выданного провайдером в филиале, пусть даже дефолтный.

На туннельном интерфейсе у нас активирован IPSec, следовательно должны быть карты шифрования:

> msk-arbat-gw1#show crypto map\
> Crypto Map «Tunnel0-head-0» 65537 ipsec-isakmp\
> Map is a PROFILE INSTANCE.\
> **Peer = 198.51.103.2**\
> Extended IP access list\
> access-list permit gre host 198.51.100.2 host 10.0.0.2\
> **Current peer: 198.51.103.2**\
> Security association lifetime: 4608000 kilobytes/3600 seconds\
> PFS (Y/N): N\
> Transform sets={\
> AES128-SHA,\
> }\
> Interfaces using crypto map Tunnel0-head-0:\
> Tunnel0

Таким образом шифрованный туннель строится между 198.51.100.2 и 198.51.103.2, дальше, данные по-прежнему шифрованные за счёт NAT-T в туннеле идут до 10.0.0.2. А дальше вы уже знаете.

Толковая подробная статья по [NHRP](http://habrahabr.ru/post/84738/).
