Building on the topology shown in Example: Configuring the JCS 1200 Platform as a Route Reflector, this example shows how to configure routers for OSPF client-to-client route reflection.
This example requires the following hardware and software components:
Figure 16: Example: Configuring Client-to-Client Reflection (OSPF)
The example configuration shown in contains one router reflector (RR) and three client routers (R1, R2, and R3). The three routers (R1 through R3) and the route reflector (RR) are configured as PSDs that include Routing Engines on the JCS chassis.
The routers have the following loopback addresses:
With this configuration example, a route added to client router R1 is propagated to the route reflector (RR) and to the other client routers (R2, R3). This example uses OSPF as the IGP and enables BFD for the connections from the route reflector.
First, configure protocols for the route reflector (RR), then configure protocols for the routers (R1, R2, and R3).
To configure the route reflector (PSD15):
A BGP system must know which routers are its peers (neighbors). You define the peer relationship explicitly by configuring the neighboring routers that are the peers of the local BGP system. After peer relationships have been established, the BGP peers exchange update messages to advertise network reachability information.
Display the results of the configuration:
- routing-options {
- autonomous-system 2;
- }
-
- protocols {
-
- bgp {
-
- group int {
- type internal;
- local-address 10.12.1.1;
- cluster 1.2.3.4;
- neighbor 10.12.1.2;
- neighbor 10.12.1.3;
- neighbor 10.12.1.4;
- }
- }
-
- ospf {
- overload;
-
- area 0.0.0.0 {
-
- interface fxp1.1 {
-
- bfd-liveness-detection {
- minimum-interval 333;
- }
- }
-
- interface fxp0.1 {
-
- bfd-liveness-detection {
- minimum-interval 333;
- }
- }
- }
- }
- }
To configure the route reflector (PSD11):
A routing policy contains one or more terms. The nh-self policy you are defining includes three terms (term a, term b, and term c). This policy is applied to routes exported from the routing table into BGP.
These statements specify that for all remaining static routes, the next-hop address is replaced by the local IP address used for the BGP adjacency. The router is then accepted with the new, next-hop value.
Display the results of the configuration:
-
- routing-options {
- autonomous-system 2;
- }
-
- protocols {
-
- bgp {
-
- group int {
- type internal;
- local-address 10.12.1.2;
- export nh-self;
- neighbor 10.12.1.1;
- }
- }
-
- ospf {
-
- area 0.0.0.0 {
- interface ge-1/1/1.0;
- interface ge-1/1/0.0;
- }
- }
- }
-
- policy-options {
-
- policy-statement nh-self {
-
- term a {
-
- from {
- protocol static;
- route-filter 0.0.0.0/0 exact;
- }
- then reject;
- }
-
- term b {
- from protocol static;
-
- then {
- next-hop self;
- accept;
- }
- }
-
- term c {
- then reject;
- }
- }
- }
To configure the route reflector (PSD12):
A routing policy contains one or more terms. The nh-self policy you are defining includes three terms (term a, term b, and term c). This policy is applied to routes exported from the routing table into BGP.
These statements specify that for all remaining static routes, the next-hop address is replaced by the local IP address used for the BGP adjacency. The router is then accepted with the new, next-hop value.
Display the results of the configuration:
-
- routing-options {
- autonomous-system 2;
- }
-
- protocols {
-
- bgp {
-
- group int {
- type internal;
- local-address 10.12.1.3;
- export nh-self;
- neighbor 10.12.1.1;
- }
- }
-
- ospf {
-
- area 0.0.0.0 {
- interface ge-2/0/2.0;
- interface ge-2/0/3.0;
-
- interface ge-2/0/1.0 {
-
- bfd-liveness-detection {
- minimum-interval 333;
- }
- }
- }
- }
- }
-
- policy-options {
-
- policy-statement nh-self {
-
- term a {
-
- from {
- protocol static;
- route-filter 0.0.0.0/0 exact;
- route-filter 10.12.1.1/32 exact;
- }
- then reject;
- }
-
- term b {
- from protocol static;
-
- then {
- next-hop self;
- accept;
- }
- }
-
- term c {
- then reject;
- }
- }
- }
To configure the route reflector (PSD13):
A routing policy contains one or more terms. The nh-self policy you are defining includes three terms (term a, term b, and term c). This policy is applied to routes exported from the routing table into BGP.
These statements specify that for all remaining static routes, the next-hop address is replaced by the local IP address used for the BGP adjacency. The router is then accepted with the new, next-hop value.
Display the results of the configuration:
-
- routing-options {
- autonomous-system 2;
- }
-
- protocols {
-
- bgp {
-
- group int {
- type internal;
- local-address 10.12.1.4;
- export nh-self;
- neighbor 10.12.1.1;
- }
- }
-
- ospf {
-
- area 0.0.0.0 {
- interface ge-0/2/3.0;
- interface ge-0/1/7.0;
-
- interface ge-0/1/0.0 {
-
- bfd-liveness-detection {
- minimum-interval 333;
- }
- }
- }
- }
- }
-
- policy-options {
-
- policy-statement nh-self {
-
- term a {
-
- from {
- protocol static;
- route-filter 0.0.0.0/0 exact;
- }
- then reject;
- }
-
- term b {
- from protocol static;
-
- then {
- next-hop self;
- accept;
- }
- }
-
- term c {
- then reject;
- }
- }
- }