Hello,

Je suis confronté à un probleme étrange sur IOS XE. 

Voici le contexte:
- 1 ASR1002-X
- Qui fait de la validation RPKI sur les sessions eBGP (pas iBGP)
- Qui fait du peering sur un IXP
- Qui recoit ses routes du réseau depuis des RR (notamment des downstreams)

Par défaut, j'ai remarqué que l'état RPKI de la route était pris en
compte dans le BGP selection path, chose qui m'emmerde car si une route
recue en eBGP est valide, il la préfere à une route "unknown" recue en
IBGP, et ce même si la localpref est supérieure sur celle recue en
interne (car downstream):

Ici, en l'occurence, selon la localpref, il devrait plutot choisir la
premiere, mais par défaut, il choisit celle d'apres:

>>BGP routing table entry for 193.43.214.0/24, version 36202932
>>Paths: (8 available, best #7, table default)
>>  Advertised to update-groups:
>>     16         17        
>>  Refresh Epoch 1
>>  44097
>>    193.164.153.126 (metric 5020) from 193.164.153.2 (193.164.153.2)
>>      Origin incomplete, metric 500, localpref 600, valid, internal
>>      Community: 34019:44097 65512:20001
>>      Originator: 193.17.192.143, Cluster list: 193.164.153.2
>>      path 7F8057EB3658 RPKI State not found
>>      rx pathid: 0, tx pathid: 0
>>  Refresh Epoch 1
>>(...)
>>  43100 200780 44097
>>    91.206.52.207 from 91.206.52.252 (91.206.52.252)
>>      Origin IGP, metric 400, localpref 400, valid, external, best
>>      Community: 34019:65000 34019:65130 34019:65133 65512:20009
>>      unknown transitive attribute: flag 0xE0 type 0x20 length 0x24
>>        value 0000 A5EC 0000 FC00 0000 000B 0000 A5EC
>>              0000 FC00 0000 0015 0000 A5EC 0000 FC00
>>              0000 001F 
>>      path 7F805E0F0418 RPKI State valid
>>      rx pathid: 0, tx pathid: 0x0
>>  Refresh Epoch 1
>>(...)


Du coup, je me suis inspiré du lien suivant:
https://bgpfilterguide.nlnog.net/guides/reject_invalids/
... pour revoir ma conf, et rajouter "bgp bestpath prefix-validate
disable" dans la conf de mes address-family en BGP, en rajoutant un
statement dans mes route-map rejetant les rpki invalid, et ca semble...
juste désactiver RPKI. En effet, on ne voit plus du tout d'état RPKI,
alors que 1.1.1.0/24 est supposé être signé:


>> RPKI validation codes: V valid, I invalid, N Not found
>>
>>      Network          Next Hop            Metric LocPrf Weight Path
>> *>   1.0.0.0/24       91.206.52.192          100    400      0 13335 i
>> *>   1.1.1.0/24       91.206.52.192          100    400      0 13335 i

>>BGP routing table entry for 1.1.1.0/24, version 27436194
>>Paths: (6 available, best #5, table default)
>>  Advertised to update-groups:
>>     16         17        
>>  Refresh Epoch 1
>>(...)
>>  13335, (aggregated by 13335 162.158.148.1)
>>    91.206.52.192 from 91.206.52.192 (162.158.148.1)
>>      Origin IGP, metric 100, localpref 400, valid, external, best
>>      Community: 34019:65000 34019:65130 34019:65131 65512:20009
>>      rx pathid: 0, tx pathid: 0x0
>>  Refresh Epoch 1

Une idée de comment faire en sorte que IOS XE fasse de la validation
RPKI proprement ?

A noter: Il n'est pas concevable de faire de la validation RPKI reçues
sur les routes en IBGP, car on reçoit des RR des more specific de nos
subnets (que l'on redistribue en BGP plutot qu'en ISIS), et il serait
contre productif de faire des ROA autorisant jusqu'au /32 + /128 de nos
supernets :)

Merci par avance pour vos lumières,

-- 
Clément Cavadore

Attachment: signature.asc
Description: This is a digitally signed message part

Répondre à