modified on 11 sty 2010 at 14:52 ••• 4 858 views

Dostęp do internetu z VRF z NATem

Z MikroTik Wiki

Wymagane pakiety: routing-test, mpls-test, RouterOS wersja 3.28+

Spis treści

MPLS Per-VRF NAT dla dostępu do internetu dla L3VPN

Wstęp

Ten artykuł opisuje podstawową konfigurację zapewnienia dostępu do internetu dla klientów L3VPN w infrastrukturze MPLS. Przetestowano na RouterOS wersji 3.27 z mpls-test i routing-test. Artykuł zakłada podstawową wiedzę o działaniu MPLS jak i o NAT i routingu.

Wymagania

Opisywana koncepcja wymaga przynajmniej jednego publicznego adresu IP na VRF mającego dostępu do internetu. Musisz także mieć dedykowany router PE umieszczony pomiędzy Twoim routerem z dostępem do internetu a siecią MPLS aby móc wykonywać translację NAT zanim dane zostaną przesłane do routera po stronie internetu. Artykuł nie wymaga od Ciebie posiadania swojego własnego AS jeśli masz wolne publiczne adresy IP, które możesz przekazać klientom.

Przykładowa topologia

Image:Mikrotik-per-vrf-snat.png

W przykładowej topologi mamy dwóch klientów, RED i GREEN, obydwaj znajdują się w oddzielnych VRF. Ich adresacja LAN nie jest rozważana w tym artykule i można ją ominąć. Klienci mają dostęp do internetu przez router InetPE. Rozwiązanie nie jest prawdziwą siecią MPLS, a jedynie prostym przykładem koncepcji.

Konfiguracja InetPE

Zakładamy, że przykładowa sieć ma publiczną sieć 1.1.1.0/24. Łącze pomiędzy InetPE a bramką internetową to 1.1.1.0/30, a 1.1.1.16/28 jest przeznaczona dla zakończenia VRF. Domyślna trasa do bramki internetowej istnieje w pewnej formie w InetPE, kierująca do 1.1.1.1 i 1.1.1.1 powinien mieć trasę do 1.1.1.16/28 przez 1.1.1.2 (InetPE).

Konfiguracja VRF

VRF konfiguruje się na przykład tak:

/ip route vrf add routing-mark=RED route-distinguisher=65001:111 import-route-targets=65001:111 export-route-targets=65001:111 disabled=no 

/ip route vrf add routing-mark=GREEN route-distinguisher=65001:222 import-route-targets=65001:222 export-route-targets=65001:222 disabled=no

/routing bgp instance vrf add routing-mark=RED redistribute-static=yes instance=default

/routing bgp instance vrf add routing-mark=GREEN redistribute-static=yes instance=default

Domyślna trasa

Aby dodać domyślną trasę, użyj poniższych poleceń:

/ip route add routing-mark=RED dst-address=0.0.0.0/0 gateway=1.1.1.1@main
/ip route add routing-mark=GREEN dst-address=0.0.0.0/0 gateway=1.1.1.1@main

Zauważ część @main. Wskazuje, że adres 1.1.1.1 powinien być zresolvowany w głównej tablicy routingu zamiast tablicy VRF.

NAT

W tej konfiguracji, zastosujemy źródłowy NAT dla ruchu z RED VRF na adres 1.1.1.16 i GREEN VRF na 1.1.1.17. Wymaga to wpisu NAT i znakowania, ponieważ ruch powracający nie wraca automatycznie do odpowiedniego VRF.

  • NAT:
/ip firewall nat add action=src-nat chain=srcnat out-interface=ether1 routing-mark=RED to-addresses=1.1.1.16 disabled=no

/ip firewall nat add action=src-nat chain=srcnat out-interface=ether1 routing-mark=GREEN to-addresses=1.1.1.17 disabled=no

  • znakowanie:
/ip firewall mangle add chain=prerouting action=mark-routing disabled=no dst-addres=1.1.1.16 new-routing-mark=RED passthrough=yes

/ip firewall mangle add chain=prerouting action=mark-routing disabled=no dst-address=1.1.1.17 new-routing-mark=GREEN passthrough=yes

Rozważania o dalszym rozwoju

Jest kilka sposobów poprawienia tego przykładu. Możesz rozważyć rozbicie dostępu do internetu na oddzielne RT, zezwalając na większą elastyczność tras internetowych.

Należy jeszcze wymyślić jak zrobić to samo bez domyślnej trasy wskazującej na router następnego skoku, np. jeśli chcesz zakończyć VRF na urządzeniu z pełnym feedem BGP. Jeśli to zrobisz, popraw ten artykuł.

Podsumowanie

Jest to wystarczająca konfiguracja aby uzyskać działający src-nat. Możesz poprawić reguły aby bardziej pasowały do Twojej konfiguracji. Dst-nat nie był poruszany w tym artykule, ale powinien być prosty w konfiguracji jeśli pamiętasz odpowiednie reguły znakowania.

Rozwiązanie nie było dokładnie przebadane i nie można powiedzieć jakiej wydajności można się spodziewać.