1

I am using quagga and FreeBSD boxes to achieve this: http://www.cisco.com/c/en/us/support/docs/ip/border-gateway-protocol-bgp/13762-40.html#conf3. Only change is that upstream provider is sending full bgp instead of the default route.

I have everything set up and working moreless correctly. However, I am having issues with few things:

  • when connection between R101 and R103 goes down, R101 doesn't send traffic over R102-R104 link. This is because, R101 doesn't have any routes R102 besides the one I am advertising. How should I can configure quagga to redistribute routes obtained via external peer over internal BGP session?

  • For advertising my networks, Quagga works until the moment I restart R101. Once, R!01 comes back and internal BGP session is re-established, R102 stops advertising anything to R101, but advertises to R104. Is this normal? After I restart quagga on R102, the advertising to R101 works correctly.

Quagga config from R101:

!
hostname Router
log file /var/log/quagga.log
log stdout
hostname bgpd
bgp config-type cisco
!
debug bgp updates in
!
password zebra
enable password zebra
!
interface bge0
 ipv6 nd suppress-ra
 no link-detect
!
interface bge1
 ipv6 nd suppress-ra
 no link-detect
!
interface igb0
 ipv6 nd suppress-ra
 no link-detect
!
interface igb1
 ipv6 nd suppress-ra
 no link-detect
!
interface igb2
 ipv6 nd suppress-ra
 no link-detect
!
interface igb3
 ipv6 nd suppress-ra
 no link-detect
!
interface lagg0
 ipv6 nd suppress-ra
 no link-detect
!
interface lo0
 no link-detect
!
interface lo1
 ipv6 nd suppress-ra
 no link-detect
!
interface pfsync0
 ipv6 nd suppress-ra
 no link-detect
!
interface vlan3
 ipv6 nd suppress-ra
 no link-detect
!
interface vlan4
 ipv6 nd suppress-ra
 no link-detect
!
interface vlan5
 ipv6 nd suppress-ra
 no link-detect
!
interface vlan101
 ipv6 nd suppress-ra
 no link-detect
!
interface vlan106
 ipv6 nd suppress-ra
 no link-detect
!
interface vlan107
 ipv6 nd suppress-ra
 no link-detect
!
interface vlan109
 ipv6 nd suppress-ra
 no link-detect
!
router bgp 1
 no synchronization
 bgp router-id 0.0.0.1
 bgp log-neighbor-changes
 network 1.0.0.0
 network 2.0.0.0
 neighbor 4.4.4.1 remote-as 2
 neighbor 4.4.4.1 description "R101 uplink"
 neighbor 4.4.4.1 update-source 4.4.4.2
 neighbor 4.4.4.1 send-community both
 neighbor 4.4.4.1 route-map R1-MAP out
 neighbor 1.1.1.1 remote-as 1
 neighbor 1.1.1.1 description "R101 BGP interconnect"
 neighbor 1.1.1.1 update-source 1.1.1.2
 neighbor 1.1.1.1 next-hop-self
 neighbor 1.1.1.1 send-community both
 neighbor 1.1.1.1 soft-reconfiguration inbound
 maximum-paths 2
 no auto-summary
!
ip prefix-list 1 seq 5 permit 2.0.0.0/8
ip prefix-list 2 seq 5 permit 1.0.0.0/8
!
route-map R1-MAP permit 10
 match ip address prefix-list 1
 set as-path prepend 1 1 1
!
route-map R1-MAP permit 20
 match ip address prefix-list 2
!
ip forwarding
!
line vty
!
end

R102 full config:

hostname Router
hostname bgpd
log file /var/log/quagga.log
log stdout
bgp config-type cisco
!
password zebra
enable password zebra
!
interface bge0
 ipv6 nd suppress-ra
 no link-detect
!
interface bge1
 ipv6 nd suppress-ra
 no link-detect
!
interface igb0
 ipv6 nd suppress-ra
 no link-detect
!
interface igb1
 ipv6 nd suppress-ra
 no link-detect
!
interface igb2
 ipv6 nd suppress-ra
 no link-detect
!
interface igb3
 ipv6 nd suppress-ra
 no link-detect
!
interface lagg0
 ipv6 nd suppress-ra
 no link-detect
!
interface lo0
 no link-detect
!
interface lo1
 no link-detect
!
interface pfsync0
 ipv6 nd suppress-ra
 no link-detect
!
interface vlan3
 ipv6 nd suppress-ra
 no link-detect
!
interface vlan4
 ipv6 nd suppress-ra
 no link-detect
!
interface vlan5
 ipv6 nd suppress-ra
 no link-detect
!
interface vlan101
 ipv6 nd suppress-ra
 ipv6 nd suppress-ra
 no link-detect
!
interface vlan106
 ipv6 nd suppress-ra
 no link-detect
!
interface vlan107
 ipv6 nd suppress-ra
 no link-detect
!
interface vlan109
 ipv6 nd suppress-ra
 no link-detect
!
router bgp 1
 no synchronization
 bgp router-id 0.0.0.2
 bgp log-neighbor-changes
 network 1.0.0.0
 network 2.0.0.0
 neighbor 3.3.3.1 remote-as 2
 neighbor 3.3.3.1 description "R102 uplink"
 neighbor 3.3.3.1 update-source 3.3.3.2
 neighbor 3.3.3.1 send-community both
 neighbor 3.3.3.1 route-map R102-MAP out
 neighbor 1.1.1.2 remote-as 1
 neighbor 1.1.1.2 description "R102 BGP interconnect"
 neighbor 1.1.1.2 update-source 1.1.1.1
 neighbor 1.1.1.2 next-hop-self
 neighbor 1.1.1.2 send-community both
 neighbor 1.1.1.2 soft-reconfiguration inbound
 no auto-summary
!
ip prefix-list 1 seq 5 permit 1.0.0.0/8
ip prefix-list 2 seq 5 permit 2.0.0.0/8
!
route-map R102-MAP permit 10
 match ip address prefix-list 1
 set as-path prepend 1 1 1
!
route-map R102-MAP permit 20
 match ip address prefix-list 2
!
ip forwarding
!
line vty
!
end
18
  • Can you made a "sho ip bgp" on R101 and R102??, You can put here the major of your configuration, on the way to clear our doubts about your conf. Nov 19, 2015 at 13:26
  • I you can, also put R103 and R104 conf. Nov 19, 2015 at 13:41
  • I don't have access to R103 and R104 (it's on provider's side). I will paste the configs shortly. "sho ip bgp" shows full bgp routing tablee. Nov 19, 2015 at 13:46
  • Oh, i see, i was thinking that your conf was only for testing purpose. We will be expecting. Nov 19, 2015 at 13:52
  • I have some things like AS number, peer IPs etc replaced with faked, which should be OK. Nov 19, 2015 at 13:57

1 Answer 1

1

By the data that you give us, this one is an interesting part. Unless you had change the neighbors for your safety, and put the conf here, i think you need to explaind why your iBGP neighbor has the same IP address of your UPDATE SOURCE? This one is like if your iBGP share your same host.

neighbor 1.1.1.1 description "R101 BGP interconnect"
neighbor 1.1.1.1 update-source 1.1.1.1
neighbor 1.1.1.1 next-hop-self
neighbor 1.1.1.1 send-community both
neighbor 1.1.1.1 soft-reconfiguration inbound

neighbor 1.1.1.2 description "R102 BGP interconnect"
neighbor 1.1.1.2 update-source 1.1.1.2
neighbor 1.1.1.2 next-hop-self
neighbor 1.1.1.2 send-community both
neighbor 1.1.1.2 soft-reconfiguration inbound
1
  • I am sorry, this was a mistake on my part. I double checked before posting the config. I actually changed the config for safety reason. It's supposed to be inverted. I'll fix it in the config. Nov 19, 2015 at 19:37

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.