MPLS L3VPN. С комментариями

C3PO_1

hostname C3PO_1

!

ip cef

!

Конфигурация C3PO Electronic самая обычная - ни MPLS, ни VRF - только OSPF с провайдером.

Интерфейс Loopback 0 - эмулирует сеть клиента.

interface Loopback0

 ip address 192.168.255.1 255.255.255.255

!

interface FastEthernet0/0

 description To Linkmeup

 ip address 192.168.0.2 255.255.255.0

!

OSPF как внутри сети клиента, так и в сторону провайдера

router ospf 1

 network 192.168.0.0 0.0.255.255 area 0

TARS_1

hostname TARS_1

!

ip cef

!

Конфигурация TARS Robotics самая обычная - ни MPLS, ни VRF - только EBGP с провайдером.

Интерфейс Loopback 0 - эмулирует сеть клиента.

interface Loopback0

 ip address 172.16.255.1 255.255.255.255

!

interface FastEthernet0/0

 ip address 100.0.0.2 255.255.255.252

!

В качестве соседа указывается линковый адрес провайдера.

Адрес интерфейса loopback0 - анонсируемая подсеть. В случае большой сети филиала здесь прописываются соответствующие префиксы.

router bgp 64510

 network 172.16.255.1 mask 255.255.255.255

 neighbor 100.0.0.1 remote-as 64500

Здесь нет конфигурации OSPF, но лишь потому, что у нас нет и сети как таковой - только один маршрутизатор. OSPF по-прежнему может использоваться TARS’ Robotics для маршрутизации внутри филиала, тогда нужно добавить секцию router ospf.

 

Linkmeup_R1

hostname Linkmeup_R1

!

ip cef

!

mpls ip

!

Создаются VRF и указываются для них RD и RT.

ip vrf C3PO

 rd 64500:100

 route-target export 64500:100

 route-target import 64500:100

!

ip vrf TARS

 rd 64500:200

 route-target export 64500:200

 route-target import 64500:200

!

interface Loopback0

 ip address 1.1.1.1 255.255.255.255

 ip router isis 1

!

Клиентский интерфейс привязывается к VRF.

interface FastEthernet0/0

 description To C3PO_Electronic_1

 ip vrf forwarding C3PO

 ip address 192.168.0.1 255.255.255.0

!

На интерфейсе в сторону провайдерской сети должен быть включен MPLS.

interface FastEthernet0/1

 description To Linkmeup_R2

 ip address 10.0.12.1 255.255.255.0

 ip router isis 1

 mpls ip

!

Клиентский интерфейс привязывается к VRF.

interface FastEthernet1/0

 description To TARS_1

 ip vrf forwarding TARS

 ip address 100.0.0.1 255.255.255.252

!

OSPF для связи с C3Po запускается конкретном VRF. В него импортируются маршруты из BGP.

router ospf 2 vrf C3PO

 redistribute bgp 64500 subnets

 network 192.168.0.0 0.0.255.255 area 0

!

ISIS для внутренней связности в сети провайдера.

router isis 1

 net 10.0000.0000.0001.00

!

Удалённый PE должен быть настроен в качестве соседа. Поскольку это IBGP, указываем, что пакеты отправляются от интерфейса Loopback0.

router bgp 64500

 neighbor 3.3.3.3 remote-as 64500

 neighbor 3.3.3.3 update-source Loopback0

 !

Это то, что превращает скучный BGP в MBGP - address family vpnv4 для передачии клиентских маршрутов.

 address-family vpnv4

 neighbor 3.3.3.3 activate

 neighbor 3.3.3.3 send-community both

 !

Этот address family нужен для того, чтобы BGP принял от клиента его маршруты по EBGP. Обратите внимание на команду redistribute connected. Она позволяет импортировать в BGP линковую сеть, если этого вдруг не сделает клиент.

 address-family ipv4 vrf TARS

 redistribute connected

 neighbor 100.0.0.2 remote-as 64510

 neighbor 100.0.0.2 activate

 !

Этот address-family нужен для того, чтобы в BGP импортировать клиентские маршруты. В данном случае из OSPF. Оперирует в VRF C3PO

 address-family ipv4 vrf C3PO

 redistribute ospf 2 vrf C3PO

!

mpls ldp router-id Loopback0 force

Linkmeup_R2

hostname Linkmeup_R2

!

ip cef

!

mpls ip

!

Linkmeup_R2 выступает в роли P. Поэтому у него нет никаких забот, кроме MPLS на интерфейсах: ни BGP, ни VRF, ни какие-то дополнительные IGP.

interface Loopback0

 ip address 2.2.2.2 255.255.255.255

 ip router isis 1

!

interface FastEthernet0/0

 description To Linkmeup_R1

 ip address 10.0.12.2 255.255.255.0

 ip router isis 1

 mpls ip

!

interface FastEthernet0/1

 description To Linkmeup_R3

 ip address 10.0.23.2 255.255.255.0

 ip router isis 1

 mpls ip

!

router isis 1

 net 10.0000.0000.0002.00

!

mpls ldp router-id Loopback0 force

 

 

Linkmeup_R3

hostname Linkmeup_R3

!

ip cef

!

mpls ip

!

ip vrf C3PO

 rd 64500:100

 route-target export 64500:100

 route-target import 64500:100

!

ip vrf TARS

 rd 64500:200

 route-target export 64500:200

 route-target import 64500:200

!

interface Loopback0

 ip address 3.3.3.3 255.255.255.255

 ip router isis 1

!

interface FastEthernet0/0

 description To Linkmeup_R2

 ip address 10.0.23.3 255.255.255.0

 ip router isis 1

 mpls ip

!

interface FastEthernet0/1

 description To C3PO_2

 ip vrf forwarding C3PO

 ip address 192.168.1.1 255.255.255.0

!

interface FastEthernet1/0

 description To TARS_2

 ip vrf forwarding TARS

 ip address 100.0.1.1 255.255.255.252

!

router ospf 2 vrf C3PO

 redistribute bgp 64500 subnets

 network 192.168.0.0 0.0.255.255 area 0

!

router isis 1

 net 10.0000.0000.0003.00

!

router bgp 64500

 neighbor 1.1.1.1 remote-as 64500

 neighbor 1.1.1.1 update-source Loopback0

 !

 address-family vpnv4

 neighbor 1.1.1.1 activate

 neighbor 1.1.1.1 send-community both

!

 address-family ipv4 vrf TARS

 neighbor 100.0.1.2 remote-as 64520

 neighbor 100.0.1.2 activate

!

 address-family ipv4 vrf C3PO

 redistribute ospf 2 vrf C3PO

!

mpls ldp router-id Loopback0

 

 

TARS_2

ip cef

!

hostname TARS_2

!

interface Loopback0

 ip address 172.16.255.2 255.255.255.255

!

interface FastEthernet0/0

 description To Linkmeup

 ip address 100.0.1.2 255.255.255.252

!

router bgp 64520

 network 172.16.255.2 mask 255.255.255.255

 neighbor 100.0.1.1 remote-as 64500

C3PO_2

hostname C3PO_2

!

ip cef

!

interface Loopback0

 ip address 192.168.255.2 255.255.255.255

!

interface FastEthernet0/0

 description To Linkmeup

 ip address 192.168.1.2 255.255.255.0

!

router ospf 1

 network 192.168.0.0 0.0.255.255 area 0