Inhoud

Inleiding

Doelstelling van routebeperking

Gedrag zonder RTC

RTC-configuratie

PE-configuratie

RR-configuratie

Gedrag van RTC

PE

RR

Routeverfrissing

Gerelateerde informatie

Inleiding

Dit document beschrijft een mechanisme waarbij de uitwisseling van VPNv4- en VPNv6-prefixes naar PE-routers (Provider Edge) wordt beperkt tot het strikt noodzakelijke.

Doelstelling van routebeperking

Met Multiprotocol Label Switching (MPLS) VPN stuurt de iBGP-peer of Route Reflector (RR) van het Internet Border Gateway Protocol (iBGP) alle VPN4- en/of VPN6-prefixes naar de PE-routers. De PE-router daalt de VPN4/6 prefixes waarvoor er geen VPN-routing en -expediteur (VRF) wordt geïmporteerd. Dit is een gedrag waarbij RR VPN4/6 prefixes naar de PE router stuurt, die het niet nodig heeft. Dit is een verspilling van verwerkingscapaciteit op de RR en de PE en een verspilling van bandbreedte.

Met Route Target Constraint (RTC) stuurt de RR alleen gewilde VPN4/6-prefixes naar de PE. 'Gezocht' betekent dat de PE VRF de specifieke prefixes heeft geïmporteerd.

RFC 4684 specificeert RTC. De ondersteuning wordt geleverd door een nieuw filter van de adresfamilie voor zowel VPNv4 als VPNv6.

De informatie van het Toedoel van de Route (RT) wordt van de de invoer van VPN RT van alle VRFs op de PE router verkregen. De PE-router stuurt deze filterinformatie als een BGP-update in het filter van de adresfamilie naar de RR. Deze filterinformatie voor RT-lidmaatschap wordt gecodeerd in de informatie over de leesbaarheid van de netwerklaag (NLRI) van de eigenschappen MP_REACH_NLRI en MP_UNREACH_NLRI.

De ontvangende BGP-peer vertaalt dit NLRI in een filter en installeert dit filter naar buiten aan de verzendende peer. De ontvangende BGP-peer gebruikt dit filter om te beslissen welke VPNv4/6 prefixes om te verzenden of niet te verzenden, afhankelijk van de aanwezigheid van aangesloten RTs.

Om RTC te kunnen laten werken, moeten beide BGP-peers RTC ondersteunen. Dat wil zeggen, de RR en de PE moeten dit steunen. De implementatie kan echter ook geleidelijk worden uitgevoerd. Dit betekent dat niet alle RR- en PE-routers het programma in één keer moeten ondersteunen. RTC kan in het netwerk werken, met sommige PE routers die het ondersteunen en andere niet. Op de routers die dit ondersteunen, zal RTC al actief zijn. Op routers die dit nog niet ondersteunen, werken de advertenties zoals voorheen, wat zonder RTC is (dus zonder uitgaande filtering).

Dit cijfer toont het RTC-beginsel:

Gedrag zonder RTC

RR stuurt alle VPN4/6-prefixes naar de PE. Het PE daalt degene waarvoor er geen RT wordt ingevoerd. Debug BGP-updates tonen de gedropte prefixes. Het bericht 'GEDWONGEN vanwege: een uitgebreide gemeenschap die niet wordt gesteund " wordt gegeven .

Een voorbeeld voor VPNv4 unicast is als volgt:

BGP(4): 10.100.1.3 rcvd UPDATE w/ att: nexthop 10.100.1.1, origin i, localpref 100,

metric 0, originator 10.100.1.1, clusterlist 10.100.1.3, merged path 65003,

AS_PATH , extended community RT:1:2

BGP(4): 10.100.1.3 rcvd 1:2:10.100.1.6/32, label 27 -- DENIED due to:  extended

community not supported;

Een voorbeeld voor VPNv6 unicast is:

BGP(5): 10.100.1.3 rcvd UPDATE w/ attr: nexthop ::FFFF:10.100.1.1, origin i,

localpref 100, metric 0, originator 10.100.1.1, clusterlist 10.100.1.3,

merged path 65003, AS_PATH , extended community RT:1:2

BGP(5): 10.100.1.3 rcvd [1:2]2001:10:100:1::6/128, label 23 -- DENIED due to:

extended community not supported;

RTC-configuratie

PE-configuratie

vrf definition green

rd 1:2

route-target export 1:2

route-target import 1:2

!

address-family ipv4

exit-address-family

!

vrf definition red

rd 1:1

route-target export 1:1

route-target import 1:1

!

address-family ipv4

exit-address-family

!

address-family ipv6

exit-address-family

router bgp 1

bgp log-neighbor-changes

neighbor 10.100.1.3 remote-as 1

neighbor 10.100.1.3 update-source Loopback0

neighbor 10.100.1.4 remote-as 1

neighbor 10.100.1.4 update-source Loopback0

!

address-family vpnv4

neighbor 10.100.1.3 activate

neighbor 10.100.1.3 send-community both

neighbor 10.100.1.4 activate

neighbor 10.100.1.4 send-community both

exit-address-family

!

address-family rtfilter unicast

neighbor 10.100.1.3 activate

neighbor 10.100.1.3 send-community extended

exit-address-family

!

address-family ipv4 vrf green

neighbor 10.1.6.6 remote-as 65003

neighbor 10.1.6.6 activate

neighbor 10.1.6.6 send-community both

exit-address-family

!

address-family ipv4 vrf red

neighbor 10.1.5.5 remote-as 65001

neighbor 10.1.5.5 activate

neighbor 10.1.5.5 send-community both

exit-address-family

RR-configuratie

router bgp 1

bgp log-neighbor-changes

neighbor 10.100.1.1 remote-as 1

neighbor 10.100.1.1 update-source Loopback0

neighbor 10.100.1.2 remote-as 1

neighbor 10.100.1.2 update-source Loopback0

!

address-family vpnv4

neighbor 10.100.1.1 activate

neighbor 10.100.1.1 send-community both

neighbor 10.100.1.1 route-reflector-client

neighbor 10.100.1.2 activate

neighbor 10.100.1.2 send-community both

neighbor 10.100.1.2 route-reflector-client

exit-address-family

!

address-family rtfilter unicast

neighbor 10.100.1.1 activate

neighbor 10.100.1.1 send-community both

neighbor 10.100.1.1 route-reflector-client

neighbor 10.100.1.1 default-originate

exit-address-family

Gedrag van RTC

Wanneer het BGP-peering wordt ingesteld, ruilen de peers de mogelijkheid voor rtfilter, die 1/132 is (voor VPNV4 en VPNV6).

RR1# show bgp rtfilter unicast all neighbors 10.100.1.1

BGP neighbor is 10.100.1.1,  remote AS 1, internal link

BGP version 4, remote router ID 10.100.1.1

BGP state = Established, up for 00:14:28

Last read 00:00:01, last write 00:00:56, hold time is 180,

keepalive interval is 60 seconds

Neighbor sessions:

1 active, is not multisession capable (disabled)

Neighbor capabilities:

Route refresh: advertised and received(new)

Four-octets ASN Capability: advertised and received

Address family IPv4 Unicast: received

Address family VPNv4 Unicast: advertised and received

Address family VPNv6 Unicast: advertised and received

Address family RT Filter: advertised and received

Enhanced Refresh Capability: advertised and received

Multisession Capability:

Stateful switchover support enabled: NO for session 1

Message statistics:

InQ depth is 0

OutQ depth is 0

Sent       Rcvd

Opens:                  1          1

Notifications:          0          0

Updates:                6          7

Keepalives:            17         18

Route Refresh:          0          0

Total:                 24         30

Default minimum time between advertisement runs is 0 seconds

For address family: VPNv4 Unicast

Session: 10.100.1.1

BGP table version 65, neighbor version 65/0

Output queue size : 0

Index 19, Advertise bit 1

Route-Reflector Client

19 update-group member

RT Filter activate

Community attribute sent to this neighbor

Slow-peer detection is disabled

Slow-peer split-update-group dynamic is disabled

Sent       Rcvd

...

For address family: VPNv6 Unicast

Session: 10.100.1.1

BGP table version 5, neighbor version 5/0

Output queue size : 0

Index 3, Advertise bit 1

Route-Reflector Client

3 update-group member

RT Filter activate

Community attribute sent to this neighbor

Slow-peer detection is disabled

Slow-peer split-update-group dynamic is disabled

...

For address family: RT Filter

Session: 10.100.1.1

BGP table version 52, neighbor version 52/0

Output queue size : 0

Index 13, Advertise bit 0

Route-Reflector Client

13 update-group member

NEXT_HOP is always this router for eBGP paths

Community attribute sent to this neighbor

Default information originate, default sent

Slow-peer detection is disabled

Slow-peer split-update-group dynamic is disabled

Sent       Rcvd

Prefix activity:                ----       ----

Prefixes Current:                1          2 (Consumes 160 bytes)

Prefixes Total:                  1          2

Implicit Withdraw:               0          0

Explicit Withdraw:               0          0

Used as bestpath:              n/a          2

Used as multipath:             n/a          0

Outbound       Inbound

Local Policy Denied Prefixes:    --------       -------

Bestpath from iBGP peer:              2         n/a

Total:                                2           0

Number of NLRIs in the update sent: max 1, min 0

Last detected as dynamic slow peer: never

Dynamic slow peer recovered: never

Refresh Epoch: 1

Last Sent Refresh Start-of-rib: never

Last Sent Refresh End-of-rib: never

Last Received Refresh Start-of-rib: never

Last Received Refresh End-of-rib: never

Sent       Rcvd

Refresh activity:              ----       ----

Refresh Start-of-RIB          0          0

Refresh End-of-RIB            0          0

Address tracking is enabled, the RIB does have a route to 10.100.1.1

Connections established 16; dropped 15

Last reset 00:14:28, due to Peer closed the session of session 1

Transport(tcp) path-mtu-discovery is enabled

Graceful-Restart is disabled

PE

debug bgp all

BGP: 10.100.1.3 active rcvd OPEN w/ optional parameter type 2 (Capability) len 6

BGP: 10.100.1.3 active OPEN has CAPABILITY code: 1, length 4

BGP: 10.100.1.3 active OPEN has MP_EXT CAP for afi/safi: 1/132

BGP: 10.100.1.3 accept RTC SAFI

PE1# show bgp rtfilter unicast rt 1:1

BGP routing table entry for 1:2:1:1, version 3

Paths: (1 available, best #1)

Advertised to update-groups:

13

Refresh Epoch 1

Local

0.0.0.0 from 0.0.0.0 (10.100.1.1)

Origin IGP, localpref 100, weight 32768, valid, sourced, local, best

RT generation: import

rx pathid: 0, tx pathid: 0x0

AF-filter gebruikt ook update-groepen:

PE1# show bgp rtfilter unicast all update-group 13

BGP version 4 update-group 13, internal, Address Family: RT Filter

BGP Update version : 12/0, messages 0

Extended-community attribute sent to this neighbor

Topology: global, highest version: 12, tail marker: 12

Format state: Current working (OK, last not in list)

Refresh blocked (not in list, last not in list)

Update messages formatted 1, replicated 1, current 0, refresh 0, limit 1000

Number of NLRIs in the update sent: max 2, min 0

Minimum time between advertisement runs is 0 seconds

Has 1 member:

10.100.1.3

Controleer het RTFilter verzonden door PE:

PE1# show bgp rtfilter unicast all neighbors 10.100.1.3 advertised-routes

BGP table version is 8, local router ID is 10.100.1.1

Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,

r RIB-failure, S Stale, m multipath, b backup-path, f RT-Filter,

x best-external, a additional-path, c RIB-compressed,

Origin codes: i - IGP, e - EGP, ? - incomplete

RPKI validation codes: V valid, I invalid, N Not found

Network          Next Hop            Metric LocPrf Weight Path

*>  1:2:1:1          0.0.0.0                            32768 i

*>  1:2:1:2          0.0.0.0                            32768 i

Total number of prefixes 2

De codering van de voorvoegsel van het Doel van de route is 4 bytes voor het Autonomous System Number en 8 bytes voor het Route Target, een uitgebreide community-eigenschap.  In het bovenstaande voorbeeld wordt het voorvoegsel van het filter "1:2:1:1" als volgt gedecodeerd:

- 1 is het Autonomous System nummer

- 2 is het type en het subtype van de uitgebreide communautaire eigenschap (in decimale volgorde) (zie RFC 4360)

- 1:1 is de routedoelstelling zelf

RR stuurt het standaardfilter naar PE (RR-client). Dit komt doordat de RR door design alle VPNv4-routes wil:

BGP(10): (base) 10.100.1.1 send UPDATE (format) 0:0:0:0, next 10.100.1.3,

metric 0, path Local

PE ontvangt en installeert een standaard rt filter. Zo wordt alles naar de RR gestuurd:

(debug bgp rtfilter unicast updates)

BGP(10): 10.100.1.3 rcvd UPDATE w/ attr: nexthop 10.100.1.3, origin i,

localpref 100, metric 0, community no-export

BGP(10): 10.100.1.3 rcvd 0:0:0:0

BGP(4): Default RT filter installed for 10.100.1.3

De RR ontvangt het filter van PE1 en installeert het:

(debug bgp rtfilter unicast updates)

BGP(10): 10.100.1.1 rcvd UPDATE w/ attr: nexthop 10.100.1.1, origin i,

localpref 100, metric 0

BGP(10): 10.100.1.1 rcvd 1:2:1:1

BGP(4): 1:2:1:1 RT filter installed for 10.100.1.1

BGP: installing rt filter on 10.100.1.1

BGP: add installed RT filter 1:2:1:1 for 10.100.1.1

BGP(10): 10.100.1.1 rcvd 1:2:1:2

BGP(4): 1:2:1:2 RT filter installed for 10.100.1.1

BGP(4): 1:2:1:2 Initiating an incremental table walk for 10.100.1.1

BGP: installing rt filter on 10.100.1.1

BGP: add installed RT filter 1:2:1:2 for 10.100.1.1

Controleer de ontvangen filters op RR:

RR1# show bgp vpnv4 unicast all neighbors 10.100.1.1 received rtfilters

Address family: VPNv4 Unicast

Extended community filter has: 2 entries with default filtering disabled

Incremental refresh walk mode

Status codes: * valid, S Stale > installed

Route-Target Outbound Filter

*> Extended Community RT:1:2

*> Extended Community RT:1:1

Het PE installeert geen RT filter met specifieke RTs. PE ontving het standaard rt filter van de RR, zodat PE alle VPNv4/v6 prefixes verstuurt:

PE1# show bgp vpnv4 unicast all neighbors 10.100.1.3 received rtfilters

Address family: VPNv4 Unicast

Extended community filter has: 1 entries with default filtering enabled

Incremental refresh walk mode

Om een standaard RT filter te maken, moet u "buurman x.x.x.x standaard-originate" onder AF RTfilter configureren.

Dit wordt automatisch op de RR gemaakt voor de RR-clientbewerkingen.

RR

router bgp 1

address-family rtfilter unicast

neighbor 10.100.1.1 activate

neighbor 10.100.1.1 send-community both

neighbor 10.100.1.1 route-reflector-client

neighbor 10.100.1.1 default-originate

exit-address-family

Routeverfrissing

Wanneer een nieuwe invoer van RT wordt gevormd of wanneer de invoer van RT wordt verwijderd, wordt een route verfrissen van PE naar RR voor de adresfamilie VPNv4/6 verzonden.

Wanneer een nieuwe VRF wordt geconfigureerd, verstuurt de PE een route-verfrissing naar de RR.

In beide gevallen met RTC actief, zendt de RR niet alle VPNv4/6 prefixes naar de PE. De set wordt alleen volgens het RT-filter verzonden.

Gerelateerde informatie

- Technische ondersteuning en documentatie – Cisco Systems