Example for Configuring Basic BGP Functions
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 how to configure basic BGP functions on SwitchA, SwitchB, SwitchC and SwitchD.
Switch A
Step1 Configure the VLANs and VLAN interfaces.
admin@SwitchA# set vlans vlan-id 10 l3-interface vlan10 admin@SwitchA# set vlans vlan-id 20 l3-interface vlan20 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 l3-interface vlan-interface vlan10 address 192.168.10.1 prefix-length 24 admin@SwitchA# set l3-interface vlan-interface vlan20 address 192.168.20.1 prefix-length 24
Step2 Configure an EBGP connection.
admin@SwitchA# set protocols bgp router-id 1.1.1.1 admin@SwitchA# set protocols bgp local-as 100 admin@SwitchA# set protocols bgp neighbor 192.168.20.2 remote-as 200 admin@SwitchA# set protocols bgp ebgp-requires-policy false
Step3 Enable IP routing.
admin@SwitchA# set ip routing enable true
Step4 Commit the configurations.
admin@SwitchA# commit
Switch B
Step1 Configure the VLANs and VLAN interfaces.
admin@SwitchB# set vlans vlan-id 20 l3-interface vlan20 admin@SwitchB# set vlans vlan-id 30 l3-interface vlan30 admin@SwitchB# set vlans vlan-id 40 l3-interface vlan40 admin@SwitchB# set interface gigabit-ethernet te-1/1/2 family ethernet-switching native-vlan-id 20 admin@SwitchB# set interface gigabit-ethernet te-1/1/3 family ethernet-switching native-vlan-id 30 admin@SwitchB# set interface gigabit-ethernet te-1/1/4 family ethernet-switching native-vlan-id 40 admin@SwitchB# set l3-interface vlan-interface vlan20 address 192.168.20.2 prefix-length 24 admin@SwitchB# set l3-interface vlan-interface vlan30 address 192.168.30.1 prefix-length 24 admin@SwitchB# set l3-interface vlan-interface vlan40 address 192.168.40.1 prefix-length 24
Step2 Configure EBGP and IBGP connections.
admin@SwitchB# set protocols bgp router-id 2.2.2.2 admin@SwitchB# set protocols bgp local-as 200 admin@SwitchB# set protocols bgp neighbor 192.168.20.1 remote-as 100 admin@SwitchB# set protocols bgp neighbor 192.168.30.2 remote-as 200 admin@SwitchB# set protocols bgp neighbor 192.168.40.2 remote-as 200 admin@SwitchB# set protocols bgp ebgp-requires-policy false
Step3 Enable IP routing.
admin@SwitchB# set ip routing enable true
Step4 Commit the configurations.
admin@SwitchB# commit
Switch C
Step1 Configure the VLANs and VLAN interfaces.
admin@SwitchC# set vlans vlan-id 30 l3-interface vlan30 admin@SwitchC# set vlans vlan-id 50 l3-interface vlan50 admin@SwitchC# set interface gigabit-ethernet te-1/1/4 family ethernet-switching native-vlan-id 30 admin@SwitchC# set interface gigabit-ethernet te-1/1/5 family ethernet-switching native-vlan-id 50 admin@SwitchC# set l3-interface vlan-interface vlan30 address 192.168.30.2 prefix-length 24 admin@SwitchC# set l3-interface vlan-interface vlan50 address 192.168.50.1 prefix-length 24
Step2 Configure the IBGP connection.
admin@SwitchC# set protocols bgp router-id 3.3.3.3 admin@SwitchC# set protocols bgp local-as 200 admin@SwitchC# set protocols bgp neighbor 192.168.30.1 remote-as 200 admin@SwitchC# set protocols bgp neighbor 192.168.50.2 remote-as 200
Step3 Enable IP routing.
admin@SwitchC# set ip routing enable true
Step4 Commit the configurations.
admin@SwitchC# commit
Switch D
Step1 Configure the VLANs and VLAN interfaces.
admin@SwitchD# set vlans vlan-id 40 l3-interface vlan40 admin@SwitchD# set vlans vlan-id 50 l3-interface vlan50 admin@SwitchD# set interface gigabit-ethernet te-1/1/4 family ethernet-switching native-vlan-id 40 admin@SwitchD# set interface gigabit-ethernet te-1/1/5 family ethernet-switching native-vlan-id 50 admin@SwitchD# set l3-interface vlan-interface vlan40 address 192.168.40.2 prefix-length 24 admin@SwitchD# set l3-interface vlan-interface vlan50 address 192.168.50.2 prefix-length 24
Step2 Configure the IBGP connection.
admin@SwitchD# set protocols bgp router-id 4.4.4.4 admin@SwitchD# set protocols bgp local-as 200 admin@SwitchD# set protocols bgp neighbor 192.168.40.1 remote-as 200 admin@SwitchD# set protocols bgp neighbor 192.168.50.1 remote-as 200
Step3 Enable IP routing.
admin@SwitchD# set ip routing enable true
Step4 Commit the configurations.
admin@SwitchD# commit
Viewing BGP Peer Status on Switch B
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
admin@SwitchA# set protocols bgp ipv4-unicast network 192.168.10.0/24 admin@SwitchA# commit
View the BGP routing table of Switch B:
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:
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
admin@SwitchB# set protocols bgp ipv4-unicast redistribute connected admin@SwitchB# commit
Ping 192.168.10.1 on Switch C:
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:
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
Copyright © 2025 Pica8 Inc. All Rights Reserved.