> For the complete documentation index, see [llms.txt](https://linkmeup.gitbook.io/sdsm/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://linkmeup.gitbook.io/sdsm/11.-mpls-l3vpn/11.1.-mpls-l3vpn-i-dostup-v-internet/1.-vrf-aware-nat/1.-teoriya.md).

# Теория

**Что происходит с пакетом?**

1\) От *PC2* до *Linkmeup\_R3* он доходит без видимых изменений (только заголовок MAC меняется). На *PC2* маршрут по умолчанию настроен вручную. На *C3PO\_2* он изучен по OSPF от *Linkmeup\_R3*.

2\) На интерфейсе FE0/1 пакет входит в VRF C3PO и приобретает сервисную метку.

3\) Маршрут по умолчанию в VRF импортирован из BGP и он ведёт к 1.1.1.1 через 10.0.23.2:\
![](https://habrastorage.org/getpro/habr/post_images/8fb/e22/a37/8fbe22a3714af09991b0021a215149eb.png)

4\) От *Linkmeup\_R3* до *Linkmeup\_R2* пакет идёт по MPLS с двумя метками: внутренней сервисной — 27 и внешней транспортной — 18. Это видно из скриншота выше.\
\_

> Не забывайте делать поправку на PHP — от Penultimate Router (*Linkmeup\_R2*) — к Egress PE (*Linkmeup\_R1*) — пакет пойдёт с одной сервисной меткой, потому что транспортная была снята в результате PHP.

*5) На \_Linkmeup\_R1* происходит Route leaking из VRF C3PO в глобальную таблицу — так пакет покидает VRF.\
Также здесь происходит трансляция. *Linkmeup\_R1* записывает информацию об этом факте в свою таблицу трансляций для VRF C3PO:\
![](https://habrastorage.org/getpro/habr/post_images/f4f/ebc/4e9/f4febc4e9639a217e1d1c5f4cc308db7.png)

6\) В Интернет пакет уходит уже, конечно, без меток MPLS и с публичным адресом отправителя — 101.0.0.2 в заголовке

7\) Ответный пакет на *Linkmeup\_R1* попадает по глобальной таблице маршрутизации — Интернету известен адрес 101.0.0.2. На этом узле происходит обратная трансляция. Адрес назначения меняется на 192.168.2.2 и искать его нужно уже в VRF C3PO — так сказала таблица NAT.

8\) А дальше процесс вам уже известен — две метки, долгий путь до *Linkmeup\_R3* и далее до *PC2*.

[Полная конфигурация узлов для VRF Aware NAT.](https://docs.google.com/document/d/1_Xc0J5hzRrttBO6u4Dluj8Qb2k8kNjdpderGhV9Ikn0/pub)

Это был тот же Route Leaking.
