...
Table of Contents |
---|
Network Requirement
As shown in Figure. 1, BGP runs on all the switches.
An EBGP connection is established between Switch A and Switch B, and IBGP fullmesh connections are established between Switch B, Switch C, and Switch D.
Configure IBGP connections between Switch B, Switch C, and Switch D.
Configure an EBGP connection between Switch A and Switch B.
Figure 1. BGP configuration
Procedure
This section describes the steps of configuring how to configure basic BGP functions on SwitchA, SwitchB, SwitchC and SwitchD.
Switch A
Step1 Configure the VLANs and VLAN interfaces.
Code Block |
---|
admin@SwitchA# set vlans vlan-id 10 l3-interface 10 admin@SwitchA# set vlans vlan-id 20 l3-interface 20 admin@SwitchA# set interface gigabit-ethernet te-1/1/1 family ethernet-switching native-vlan-id 10 admin@SwitchA# set interface gigabit-ethernet te-1/1/2 family ethernet-switching native-vlan-id 20 admin@SwitchA# set vlanl3-interface vlan-interface 10 vif 10 address 192.168.10.1 prefix-length 24 admin@SwitchA# set vlanl3-interface vlan-interface 20 vif 20 address 192.168.20.1 prefix-length 24 |
...
Code Block |
---|
admin@SwitchA# set protocols bgp bgprouter-id 1.1.1.1 admin@SwitchA# set protocols bgp local-as 100 admin@SwitchA# set protocols bgp peerneighbor 192.168.20.2 remote-as 200 |
Step3 Enable IP routing.
Code Block |
---|
admin@SwitchA# set protocolsip bgprouting peer 192.168.20.2 local-ip 192.168.20.1 admin@SwitchA# set protocols bgp peer 192.168.20.2 next-hop-self true |
Step3 Commit the configurations.
Code Block |
---|
admin@SwitchA# enable true |
Step4 Commit the configurations.
Code Block |
---|
admin@SwitchA# commit |
Switch B
Step1 Configure the VLANs and VLAN interfaces.
Code Block |
---|
admin@SwitchB# set vlans vlan-id 20 l3-interface 20 admin@SwitchB# set vlans vlan-id 30 l3-interface 30 admin@SwitchB# set vlans vlan-id 40 l3-interface 40 admin@SwitchB# set interface gigabit-ethernet gete-1/1/2 family ethernet-switching native-vlan-id 20 admin@SwitchB# set interface gigabit-ethernet gete-1/1/3 family ethernet-switching native-vlan-id 30 admin@SwitchB# set interface gigabit-ethernet gete-1/1/4 family ethernet-switching native-vlan-id 40 admin@SwitchB# set vlanl3-interface vlan-interface 20 vif 20 address 192.168.20.2 prefix-length 24 admin@SwitchB# set vlanl3-interface vlan-interface 30 vif 30 address 192.168.30.1 prefix-length 24 admin@SwitchB# set vlanl3-interface vlan-interface 40 vif 40 address 192.168.40.1 prefix-length 24 |
...
Code Block |
---|
admin@SwitchB# set protocols bgp bgprouter-id 2.2.2.2 admin@SwitchB# set protocols bgp local-as 200 admin@SwitchB# set protocols bgp peerneighbor 192.168.20.1 remote-as 100 admin@SwitchB# set protocols bgp peerneighbor 192.168.2030.12 localremote-ip 192.168.20.2as 200 admin@SwitchB# set protocols bgp peerneighbor 192.168.2040.12 nextremote-hop-self true as 200 |
Step3 Enable IP routing.
Code Block |
---|
admin@SwitchB# set protocolsip bgprouting peer 192.168.30.2 as 200 admin@SwitchB# set protocols bgp peer 192.168.30.2 local-ip 192.168.30.1 admin@SwitchB# set protocols bgp peer 192.168.30.2 next-hop-self true admin@SwitchB# set protocols bgp peer 192.168.40.2 as 200 admin@SwitchB# set protocols bgp peer 192.168.40.2 local-ip 192.168.40.1 admin@SwitchB# set protocols bgp peer 192.168.40.2 next-hop-self true |
Step3 Commit the configurations.
Code Block |
---|
admin@SwitchA# commit |
Switch C
...
enable true |
Step4 Commit the configurations.
Code Block |
---|
admin@SwitchB# commit |
Switch C
Step1 Configure the VLANs and VLAN interfaces.
Code Block |
---|
admin@SwitchC# set vlans vlan-id 40 l3-interface 40
admin@SwitchC# set vlans vlan-id 50 l3-interface 50
admin@SwitchC# set interface gigabit-ethernet te-1/1/4 family ethernet-switching native-vlan-id 40
admin@SwitchC# set interface gigabit-ethernet te-1/1/5 family ethernet-switching native-vlan-id 50
admin@SwitchC# set l3-interface vlan-interface 40 address 192.168.30.2 prefix-length 24
admin@SwitchC# set l3-interface vlan-interface 50 address 192.168.50.1 prefix-length 24 |
Step2 Configure the IBGP connection.
Code Block |
---|
admin@SwitchC# set vlansprotocols bgp vlanrouter-id 40 l3-interface 403.3.3.3 admin@SwitchC# set protocols bgp local-as 200 admin@SwitchC# set vlans vlan-id 50 l3-interface 50protocols bgp neighbor 192.168.30.1 remote-as 200 admin@SwitchC# set interfaceprotocols gigabit-ethernet ge-1/1/4 family ethernet-switching native-vlan-id 40 admin@SwitchC# set interface gigabit-ethernet ge-1/1/5 family ethernet-switching native-vlan-id 50 admin@SwitchC# set vlan-interface interface 40 vif 40 address 192.168.40.2 prefix-length 24 admin@SwitchC# set vlan-interface interface 50 vif 50 address 192.168.50.2 prefix-length 24 |
Step2 Configure the IBGP connection.
Code Block |
---|
admin@SwitchC# set protocols bgp bgp-id 3.3.3.3 admin@SwitchC# set protocols bgp local-as 200 admin@SwitchC# set protocols bgp peerbgp neighbor 192.168.50.2 remote-as 200 |
Step3 Enable IP routing.
Code Block |
---|
admin@SwitchC# set ip routing enable true |
Step4 Commit the configurations.
Code Block |
---|
admin@SwitchC# commit |
Switch D
Step1 Configure the VLANs and VLAN interfaces.
Code Block |
---|
admin@SwitchD# set vlans vlan-id 30 l3-interface 30 admin@SwitchD# set vlans vlan-id 50 l3-interface 50 admin@SwitchD# set interface gigabit-ethernet te-1/1/3 family ethernet-switching native-vlan-id 30 admin@SwitchD# set interface gigabit-ethernet te-1/1/5 family ethernet-switching native-vlan-id 50 admin@SwitchD# set l3-interface vlan-interface 40 address 192.168.40.12 asprefix-length 20024 admin@SwitchC#admin@SwitchD# set protocols bgp peerl3-interface vlan-interface 50 address 192.168.4050.12 localprefix-ip 192.168.40.2 admin@SwitchC# length 24 |
Step2 Configure the IBGP connection.
Code Block |
---|
admin@SwitchD# set protocols bgp peerrouter-id 1924.1684.404.1 next-hop-self true admin@SwitchC#4 admin@SwitchD# set protocols bgp peer 192.168.50.1 local-as 200 admin@SwitchC#admin@SwitchD# set protocols bgp peerneighbor 192.168.5040.1 localremote-ip 192.168.50.2 admin@SwitchC#as 200 admin@SwitchD# set protocols bgp peerneighbor 192.168.50.1 next-hop-selfremote-as 200 |
Step3 Enable IP routing.
Code Block |
---|
admin@SwitchD# set ip routing enable true |
Step3 Step4 Commit the configurations.
Code Block |
---|
admin@SwitchA#admin@SwitchD# commit |
Switch D
Step1 Configure the VLANs and VLAN interfaces.
Code Block |
---|
admin@XorPlus# set vlans vlan-id 30 l3-interface 30
admin@XorPlus# set vlans vlan-id 50 l3-interface 50
admin@XorPlus# set interface gigabit-ethernet ge-1/1/3 family ethernet-switching native-vlan-id 30
admin@XorPlus# set interface gigabit-ethernet ge-1/1/5 family ethernet-switching native-vlan-id 50
admin@XorPlus# set vlan-interface interface 30 vif 40 address 192.168.30.2 prefix-length 24
admin@XorPlus# set vlan-interface interface 50 vif 50 address 192.168.50.1 prefix-length 24 |
Step2 Configure the IBGP connection.
Code Block |
---|
admin@XorPlus# set protocols bgp bgp-id 4.4.4.4
admin@XorPlus# set protocols bgp local-as 200
admin@XorPlus# set protocols bgp peer 192.168.30.1 as 200
admin@XorPlus# set protocols bgp peer 192.168.30.1 local-ip 192.168.30.2
admin@XorPlus# set protocols bgp peer 192.168.30.1 next-hop-self true
admin@XorPlus# set protocols bgp peer 192.168.50.2 as 200
admin@XorPlus# set protocols bgp peer 192.168.50.2 local-ip 192.168.50.1
admin@XorPlus# set protocols bgp peer 192.168.50.2 next-hop-self true |
Step3 Commit the configurations.
Code Block |
---|
admin@SwitchA# commit |
Viewing BGP Peer Status on Switch B
Code Block |
---|
admin@XorPlus# run show bgp peers detail
Peer 2: local 192.168.20.2/179 remote 192.168.20.1/179
Peer ID: 1.1.1.1
Peer State: ESTABLISHED
Admin State: START
Negotiated BGP Version: 4
Peer AS Number: 100
Updates Received: 20, Updates Sent: 2
Messages Received: 634, Messages Sent: 611
Time since last received update: 1685 seconds
Number of transitions to ESTABLISHED: 1
Time since last entering ESTABLISHED state: 15995 seconds
Retry Interval: 120 seconds
Hold Time: 90 seconds, Keep Alive Time: 30 seconds
Configured Hold Time: 90 seconds, Configured Keep Alive Time: 30 seconds
Minimum AS Origination Interval: 0 seconds
Minimum Route Advertisement Interval: 0 seconds
Peer 2: local 192.168.30.1/179 remote 192.168.30.2/179
Peer ID: 4.4.4.4
Peer State: ESTABLISHED
Admin State: START
Negotiated BGP Version: 4
Peer AS Number: 100
Updates Received: 20, Updates Sent: 2
Messages Received: 634, Messages Sent: 611
Time since last received update: 1685 seconds
Number of transitions to ESTABLISHED: 1
Time since last entering ESTABLISHED state: 15995 seconds
Retry Interval: 120 seconds
Hold Time: 90 seconds, Keep Alive Time: 30 seconds
Configured Hold Time: 90 seconds, Configured Keep Alive Time: 30 seconds
Minimum AS Origination Interval: 0 seconds
Minimum Route Advertisement Interval: 0 seconds
Peer 3: local 192.168.40.1/179 remote 192.168.40.2/179
Peer ID: 3.3.3.3
Peer State: ESTABLISHED
Admin State: START
Negotiated BGP Version: 4
Peer AS Number: 100
Updates Received: 20, Updates Sent: 2
Messages Received: 634, Messages Sent: 611
Time since last received update: 1685 seconds
Number of transitions to ESTABLISHED: 1
Time since last entering ESTABLISHED state: 15995 seconds
Retry Interval: 120 seconds
Hold Time: 90 seconds, Keep Alive Time: 30 seconds
Configured Hold Time: 90 seconds, Configured Keep Alive Time: 30 seconds
Minimum AS Origination Interval: 0 seconds
Minimum Route Advertisement Interval: 0 seconds |
Configuring Switch A to Advertise Route 192.168.10.0/24
Code Block |
---|
admin@XorPlus# set policy policy-statement direct-to-bgp term t1 from protocol connected
admin@XorPlus# set policy policy-statement direct-to-bgp term t1 from network4 192.168.10.0/24
admin@XorPlus# set policy policy-statement direct-to-bgp term t1 then accept
admin@XorPlus# commit
Waiting for merging configuration.
Commit OK.
Save done.
admin@XorPlus#
admin@XorPlus# set protocols bgp export direct-to-bgp
admin@XorPlus# commit
Waiting for merging configuration.
Commit OK.
Save done.
admin@XorPlus# |
...
Code Block |
---|
admin@XorPlus# run show bgp routes
Status Codes: * valid route, > best route
Origin Codes: i IGP, e EGP, ? incomplete
Prefix Nexthop Peer AS Path
------ ------- ---- -------
*> 192.168.10.0/24 192.168.20.1 1.1.1.1 100 ?
admin@XorPlus# |
...
Code Block |
---|
admin@XorPlus# run show bgp routes
Status Codes: * valid route, > best route
Origin Codes: i IGP, e EGP, ? incomplete
Prefix Nexthop Peer AS Path
------ ------- ---- -------
192.168.10.0/24 192.168.20.1 2.2.2.2 100 ?
admin@XorPlus# |
The preceding command output display that the route to destination 192.168.10.0/24 becomes invalid because the next hop address of this route is unreachable.
Configuring Switch B to Advertise a Connected Route
Code Block |
---|
admin@XorPlus# set policy policy-statement direct-to-bgp term t1 from protocol connected
admin@XorPlus# set policy policy-statement direct-to-bgp term t1 then accept
admin@XorPlus# commit
Waiting for merging configuration.
Commit OK.
Save done.
admin@XorPlus#
admin@XorPlus# set protocols bgp export direct-to-bgp
admin@XorPlus# commit
Waiting for merging configuration.
Commit OK.
Save done.
admin@XorPlus# |
Ping 192.168.10.1 on Switch C:
Code Block |
---|
admin@XorPlus# run ping 192.168.10.1
PING 192.168.10.1 (192.168.10.1) 56(84) bytes of data.
64 bytes from 192.168.10.1: icmp_req=1 ttl=63 time=4.68 ms
64 bytes from 192.168.10.1: icmp_req=2 ttl=63 time=4.46 ms
64 bytes from 192.168.10.1: icmp_req=3 ttl=63 time=5.35 ms
64 bytes from 192.168.10.1: icmp_req=4 ttl=63 time=4.52 ms
64 bytes from 192.168.10.1: icmp_req=5 ttl=63 time=4.51 ms
192.168.10.1 ping statistics —
5 packets transmitted, 5 received, 0% packet loss, time 4017ms
rtt min/avg/max/mdev = 4.460/4.709/5.358/0.338 ms
admin@XorPlus# |
View the BGP routing table of Switch C:
...
Viewing BGP Peer Status on Switch B
Code Block |
---|
admin@SwitchB# run show bgp neighbor
BGP neighbor on vlan20: 192.168.20.1, remote AS 100, local AS 200, external link
BGP version 4, remote router ID 1.1.1.1, local router ID 2.2.2.2
BGP state = Idle
Last read 00:15:06, Last write never
Hold time is 180, keepalive interval is 60 seconds
Graceful restart information:
Local GR Mode: Helper*
Remote GR Mode: NotApplicable
R bit: False
Timers:
Configured Restart Time(sec): 120
Received Restart Time(sec): 0
Message statistics:
Inq depth is 0
Outq depth is 0
Sent Rcvd
Opens: 0 0
Notifications: 0 0
Updates: 0 0
Keepalives: 0 0
Route Refresh: 0 0
Capability: 0 0
Total: 0 0
Minimum time between advertisement runs is 0 seconds
For address family: IPv4 Unicast
Not part of any update group
Community attribute sent to this neighbor(all)
0 accepted prefixes
Connections established 0; dropped 0
Last reset 00:15:06, Waiting for Peer IPv6 LLA
BGP Connect Retry Timer in Seconds: 120
Read thread: off Write thread: off FD used: -1
BGP neighbor is 192.168.30.2, remote AS 200, local AS 200, internal link
Administratively shut down
BGP version 4, remote router ID 3.3.3.3, local router ID 2.2.2.2
BGP state = Idle
Last read 00:15:06, Last write never
Hold time is 180, keepalive interval is 60 seconds
Graceful restart information:
Local GR Mode: Helper*
Remote GR Mode: NotApplicable
R bit: False
Timers:
Configured Restart Time(sec): 120
Received Restart Time(sec): 0
Message statistics:
Inq depth is 0
Outq depth is 0
Sent Rcvd
Opens: 0 0
Notifications: 0 0
Updates: 0 0
Keepalives: 0 0
Route Refresh: 0 0
Capability: 0 0
Total: 0 0
Minimum time between advertisement runs is 600 seconds
For address family: IPv4 Unicast
Not part of any update group
Advertise bestpath per AS via addpath
Override ASNs in outbound updates if aspath equals remote-as
Community attribute sent to this neighbor(all)
0 accepted prefixes
Connections established 0; dropped 0
Last reset 00:15:06, No AFI/SAFI activated for peer
External BGP neighbor may be up to 255 hops away.
BGP Connect Retry Timer in Seconds: 111
Peer Authentication Enabled
Read thread: off Write thread: off FD used: -1
BGP neighbor is 192.168.40.2, remote AS 200, local AS 200, internal link
BGP version 4, remote router ID 4.4.4.4, local router ID 2.2.2.2
BGP state = Active
Last read 00:15:06, Last write never
Hold time is 180, keepalive interval is 60 seconds
Graceful restart information:
Local GR Mode: Helper*
Remote GR Mode: NotApplicable
R bit: False
Timers:
Configured Restart Time(sec): 120
Received Restart Time(sec): 0
Message statistics:
Inq depth is 0
Outq depth is 0
Sent Rcvd
Opens: 0 0
Notifications: 0 0
Updates: 0 0
Keepalives: 0 0
Route Refresh: 0 0
Capability: 0 0
Total: 0 0
Minimum time between advertisement runs is 0 seconds
For address family: IPv4 Unicast
Not part of any update group
Advertise bestpath per AS via addpath
Override ASNs in outbound updates if aspath equals remote-as
Community attribute sent to this neighbor(all)
0 accepted prefixes
Connections established 0; dropped 0
Last reset 00:15:06, No AFI/SAFI activated for peer
External BGP neighbor may be up to 255 hops away.
BGP Connect Retry Timer in Seconds: 111
Peer Authentication Enabled
Read thread: off Write thread: off FD used: -1 |
Configuring Switch A to Advertise Route 192.168.10.0/24
Code Block |
---|
admin@SwitchA# set protocols bgp ipv4-unicast network 192.168.10.0/24
admin@SwitchA# commit |
View the BGP routing table of Switch B:
Code Block |
---|
admin@SwitchB# run show bgp
show bgp ipv4 unicast
=====================
BGP table version is 2, local router ID is 4.4.4.4, vrf id 0
Default local pref 100, local AS 200
Status codes: s suppressed, d damped, h history, * valid, > best, = multipath,
i internal, r RIB-failure, S Stale, R Removed
Nexthop codes: @NNN nexthop's vrf id, < announce-nh-self
Origin codes: i - IGP, e - EGP, ? - incomplete
Network Next Hop Metric LocPrf Weight Path
*> 192.168.10.0/24
192.168.20.1 0 100 32768 i
Displayed 1 routes and 1 total paths
show bgp ipv6 unicast
=====================
No BGP prefixes displayed, 0 exist |
View the BGP routing table of Switch C:
Code Block |
---|
admin@SwitchC# run show bgp
show bgp ipv4 unicast
=====================
BGP table version is 2, local router ID is 3.3.3.3, vrf id 0
Default local pref 100, local AS 200
Status codes: s suppressed, d damped, h history, * valid, > best, = multipath,
i internal, r RIB-failure, S Stale, R Removed
Nexthop codes: @NNN nexthop's vrf id, < announce-nh-self
Origin codes: i - IGP, e - EGP, ? - incomplete
Network Next Hop Metric LocPrf Weight Path
*> 192.168.10.0/24
192.168.20.1 0 100 32768 i
Displayed 1 routes and 1 total paths
show bgp ipv6 unicast
=====================
No BGP prefixes displayed, 0 exist |
The preceding command output display that the route to destination 192.168.10.0/24 becomes invalid because the next hop address of this route is unreachable.
Configuring Switch B to Advertise a Connected Route
Code Block |
---|
admin@SwitchB# set protocols bgp ipv4-unicast redistribute connected
admin@SwitchB# commit |
Ping 192.168.10.1 on Switch C:
Code Block |
---|
admin@SwitchC# run ping 192.168.10.1
PING 192.168.10.1 (192.168.10.1) 56(84) bytes of data.
64 bytes from 192.168.10.1: icmp_req=1 ttl=63 time=4.68 ms
64 bytes from 192.168.10.1: icmp_req=2 ttl=63 time=4.46 ms
64 bytes from 192.168.10.1: icmp_req=3 ttl=63 time=5.35 ms
64 bytes from 192.168.10.1: icmp_req=4 ttl=63 time=4.52 ms
64 bytes from 192.168.10.1: icmp_req=5 ttl=63 time=4.51 ms
192.168.10.1 ping statistics —
5 packets transmitted, 5 received, 0% packet loss, time 4017ms
rtt min/avg/max/mdev = 4.460/4.709/5.358/0.338 ms |
View the BGP routing table of Switch C:
Code Block |
---|
admin@SwitchC# run show bgp
show bgp ipv4 unicast
=====================
BGP table version is 2, local router ID is 3.3.3.3, vrf id 0
Default local pref 100, local AS 200
Status codes: s suppressed, d damped, h history, * valid, > best, = multipath,
i internal, r RIB-failure, S Stale, R Removed
Nexthop codes: @NNN nexthop's vrf id, < announce-nh-self
Origin codes: i - IGP, e - EGP, ? - incomplete
Network Next Hop Metric LocPrf Weight Path
*> 192.168.10.0/24
192.168.20.1 0 100 32768 i
*> 192.168.40.0/24
192.168.30.1 0 100 32768 i
192.168.30.0/24
192.168.30.1 0 100 32768 i
*> 192.168.10.0/24
192.168.30.1 0 100 32768 i
Displayed 4 routes and 4 total paths
show bgp ipv6 unicast
=====================
No BGP prefixes displayed, 0 exist
|