# Практика

Egress PE в нашем случае — _Linkmeup\_R1_, который является шлюзом в интернет для всей сети linkmeup — никаких абсолютно дополнительных настроек на других узлах.\
Пусть _PC2_ из сети C3PO Electronic (_C3PO\_2_) хочет получить доступ в Интернет.\
&#xNAN;_&#x50;C1 из TARS’ Robotics не трогаем и оставляем без изменений — они со своими белыми адресами — отдельная история, хотя их тоже вполне можно натить таким же образом._

**1)** Итак, во-первых на _Linkmeup\_R1_ должен быть VRF C3PO. Он уже есть, но если бы не было, нужно было бы, чтобы было бы.\
Конфигурация VRF типичная и она не поменялась:

```
Linkmeup_R1(config)#ip vrf C3PO
Linkmeup_R1(config-vrf)#rd 64500:100
Linkmeup_R1(config-vrf)#route-target export 64500:100
Linkmeup_R1(config-vrf)#route-target import 64500:100
```

**2)** Настраиваем NAT\
Включаем **ip nat inside** в ту сторону, откуда получаем пакеты для трансляции, то есть в сторону P-маршрутизатора _Linkmeup\_R2_:

```
Linkmeup_R1(config)#interface FastEthernet 0/1
Linkmeup_R1(config-if)#ip nat inside
```

В сторону Интернета включаем **ip nat outside**:

```
Linkmeup_R1(config)#interface FastEthernet 1/1
Linkmeup_R1(config-if)#ip nat outside
```

Создаём ACL, где разрешаем доступ из сети C3PO в интернет:

```
Linkmeup_R1(config)#access-list 100 permit ip 192.168.0.0 0.0.255.255 any
```

И собственно сам NAT:

```
Linkmeup_R1(config)#$ip nat inside source list 100 interface FastEthernet 1/1 vrf C3PO overload
```

**3)** В BGP, как и в прошлый раз, прописываем отправку маршрута по умолчанию в данный VRF:

```
Linkmeup_R1(config)#router bgp 64500
Linkmeup_R1(config-router)#address-family ipv4 vrf C3PO
Linkmeup_R1(config-router-af)#redistribute static
Linkmeup_R1(config-router-af)#default-information originate
```

> Поосторожней с редистрибьюцией в продакшне. Используй только вместе с фильтрацией.

Заметьте, что здесь недостаточно одной только команды redistribute static, чтобы забрать и анонсировать маршрут по умолчанию. Для этого дополнительно придётся выполнить явно команду **default-information originate**.\
Чтобы этот маршрут анонсировался BGP, нужно, чтобы он был в таблице маршрутизации:

```
Linkmeup_R1(config)#ip route vrf C3PO 0.0.0.0 0.0.0.0 101.0.0.1 global
```

Сейчас сразу не заработает, потому что я слегка слукавил, говоря, что никакие настройки нигде кроме интернет-шлюза не понадобятся.\
Дело в том, что мы сгенерировали маршрут по умолчанию для VRF C3PO на _Linkmeup\_R1_ и по BGP передали его на _Linkmeup\_R3_, но тут он и застрял, не дойдя до _C3PO\_2_ — нужно заставить OSPF анонсировать маршрут по умолчанию. Как и в предыдущий раз без явной команды **default-information originate** он этого делать не будет:

```
Linkmeup_R3(config)#router ospf 2 vrf C3PO
Linkmeup_R3(config-router)# default-information originate
```

Проверяем:\
![](https://habrastorage.org/getpro/habr/post_images/03c/084/3f3/03c0843f30c324e7c70fb10ff0dd1030.png)\
&#xNAN;_&#x411;ыло бы странно, если бы не заработало._
