Routing policy

From VyOS Wiki
Jump to: navigation, search

Routing Policies could be used to tell the router (self or neighbors) what routes and their attributes needs to be put into the routing table.

There could be a wide range of routing policies. Some examples are below:

1-Set some metric to routes learned from a particular neighbor

2-Set some attributes (like AS PATH or Community value) to advertised routes to neighbors

3-Prefer a specific routing protocol routes over another routing protocol running on the same router

Routing Policy Example


Routes learned before routing policy applied

vyos@vos1:~$ sho ip bgp
BGP table version is 0, local router ID is 192.168.56.101
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
              r RIB-failure, S Stale, R Removed
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop            Metric LocPrf Weight Path
*> 22.22.22.22/32   1.1.1.2                  1             0 2 i   <<<<< Path 

Total number of prefixes 1

Routes learned after routing policy applied

vyos@vos1:~$ sho ip b
BGP table version is 0, local router ID is 192.168.56.101
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
              r RIB-failure, S Stale, R Removed
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop            Metric LocPrf Weight Path
*> 22.22.22.22/32   1.1.1.2                  1             0 2 2 2 2 i <<< longer AS_path length

Total number of prefixes 1
vyos@vos1:~$ 

commands used on vyos1 to apply the routing policy

Define policy 

set policy route-map setmet rule 2 action 'permit'
set policy route-map setmet rule 2 set as-path-prepend '2 2 2'  

Apply policy to BGP
set protocols bgp 1 neighbor 1.1.1.2 route-map import 'setmet'
set protocols bgp 1 neighbor 1.1.1.2 soft-reconfiguration 'inbound' <<<< *** 

*** get policy update without bouncing the neighbor