Need Help on BGP

Ching01Ching01 Member Posts: 83 ■■□□□□□□□□
Guys, I am stucked in BGP, I don't know if I am wrong or right because it does not give me any output.

I tried to configure simple BGP using dynamips , However when I issued show ip BGP to see my BGP table it is empty but when I issued show ip bgp neigh it is showing Established which mean TCP connection is success.

Here's my topo look like:

EBGP(200)
EBGP(100)
IBGP(100)

Actually I tried using C3640 series and C720 series and both have problems.

In c3640, the show ip bgp is okay but the IBGP is not learning the route from EBGP(100). let say update from EBGP 200 advertise to EBGP 100
so the update should be

172.16.10.1 with it's interface address as next hop 10.0.0.1

if EBGP 100 rec the update it should forward it to IBGP but still the nexthop is the interface of EBGP 200 according to the rules.

According to the rules IBGP cannot forward its learned routes from IBGP.
If IBGP 100 has a neighbor of IBGP100 -B then it will not learned the route.

I also tried route reflector, I am expecting the client will rec. the update but sadly to say it still the same.

here's my config

EBGP200

router bgp 200
! advertise 172.16.10.1
network 172.16.10.0
no syn < since all routers are running BGP

neig 10.0.0.2 remote-as 100

EBGP100

router bgp 100

no syn < since all routers are running BGP

neig 10.0.0.1 remote-as 200
neig 192.168.10.2 remote-as 100

when I issue show ip bgp the table shoudl look like this

>10.0.0.0 10.0.0.1
0.0.0.0
>172.16.10.0 10.0.0.1


In IBGP 100

router bgp 100
nei 192.168.10.1 remtoe-as 100

IBGP 100 should received the update or route 172.16.10.0 with a nexthop address of 10.0.0.1

Comments

  • EdTheLadEdTheLad Member Posts: 2,111 ■■■■□□□□□□
    Can you provide a "show runn" of all 3 routers along with a "show ip route" and a "show ip bgp"
    Networking, sometimes i love it, mostly i hate it.Its all about the $$$$
  • Ching01Ching01 Member Posts: 83 ■■□□□□□□□□
    Actually, because of frustration I deleted the sampe lab but here's another scenario
    EBGP 100
    EBGP 200
    IBGP 200


    EBGP 100


    router bgp 100
    bgp log-neighbor-changes
    network 172.16.0.0
    network 192.168.10.0
    neighbor 10.0.0.2 remote-as 200

    EBGP 200

    !
    router bgp 200
    bgp log-neighbor-changes
    neighbor 10.0.0.1 remote-as 100
    neighbor 10.0.0.6 remote-as 200

    IBGP 100

    router bgp 200
    bgp log-neighbor-changes
    neighbor 10.0.0.5 remote-as 200
    !

    As you can see I advertised 2 loopback address from EBGP 100
    172.16.10.0 and 192.168.10.0

    Before showing the tables I want you to see the bgp log-neighbor-changes output from EBGP 100

    00:22:14: %BGP-5-ADJCHANGE: neighbor 10.0.0.2 Down User reset
    00:22:55: %BGP-5-ADJCHANGE: neighbor 10.0.0.2 Up
    00:22:56: BGP(0): nettable_walker 172.16.0.0/16 route sourced locally
    00:22:56: BGP(0): nettable_walker 192.168.10.0/24 route sourced locally
    00:22:56: BGP(0): 10.0.0.2 computing updates, afi 0, neighbor version 0, table version 3, starting at 0.0.0.0
    00:22:56: BGP(0): 10.0.0.2 send UPDATE (format) 172.16.0.0/16, next 10.0.0.1, metric 0, path
    00:22:56: BGP(0): 10.0.0.2 send UPDATE (prepend, chgflags: 0x20icon_cool.gif 192.168.10.0/24, next 10.0.0.1, metric 0, path
    00:22:56: BGP(0): 10.0.0.2 1 updates enqueued (average=55, maximum=55)
    00:22:56: BGP(0): 10.0.0.2 update run completed, afi 0, ran for 12ms, neighbor version 0, start version 3, throttled to 3
    00:22:56: BGP: 10.0.0.2 initial update completed
    00:23:18: BGP(0): nettable_scan: invalidate local path for 172.16.0.0/16
    00:23:18: BGP(0): nettable_scan: invalidate sourced path for 172.16.0.0/16
    00:23:18: BGP(0): no valid path for 172.16.0.0/16
    00:23:18: BGP(0): nettable_walker 172.16.0.0/16 no best path
    00:23:24: BGP(0): 10.0.0.2 computing updates, afi 0, neighbor version 3, table version 4, starting at 0.0.0.0
    00:23:24: BGP(0): 10.0.0.2 send unreachable 172.16.0.0/16
    00:23:24: BGP(0): 10.0.0.2 send UPDATE 172.16.0.0/16 -- unreachable
    00:23:24: BGP(0): 10.0.0.2 1 updates enqueued (average=26, maximum=26)
    00:23:24: BGP(0): 10.0.0.2 update run completed, afi 0, ran for 8ms, neighbor version 3, start version 4, throttled to 4
    00:24:18: BGP(0): nettable_scan: invalidate local path for 172.16.0.0/16
    00:24:18: BGP(0): nettable_scan: invalidate sourced path for 172.16.0.0/16
    00:24:18: BGP(0): no valid path for 172.16.0.0/16
    00:24:18: BGP(0): nettable_walker 172.16.0.0/16 no best path
    00:24:19: BGP(0): 10.0.0.2 computing updates, afi 0, neighbor version 4, table version 6, starting at 0.0.0.0
    00:24:19: BGP(0): 10.0.0.2 update run completed, afi 0, ran for 0ms, neighbor version 4, start version 6, throttled to 6

    I don't know why 172.16.0.0 is giving me no valid path but 192.168.10.0 is fine
    here's the bgp table and ip route table

    BGP table version is 4, local router ID is 10.0.0.5
    Status codes: s suppressed, d damped, h history, * valid, > best, i - internal
    Origin codes: i - IGP, e - EGP, ? - incomplete

    Network Next Hop Metric LocPrf Weight Path
    *> 192.168.10.0 10.0.0.1 0 0 100 i
    B#show ip ro
    Gateway of last resort is not set

    B 192.168.10.0/24 [20/0] via 10.0.0.1, 00:03:51
    10.0.0.0/30 is subnetted, 2 subnets
    C 10.0.0.0 is directly connected, FastEthernet0/0
    C 10.0.0.4 is directly connected, FastEthernet1/0
    B#

    from IBGP 200

    sh ip ro
    C#sh ip ro
    Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP
    D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
    N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
    E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP
    i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
    ia - IS-IS inter area, * - candidate default, U - per-user static route
    o - ODR, P - periodic downloaded static route

    Gateway of last resort is not set

    10.0.0.0/30 is subnetted, 1 subnets
    C 10.0.0.4 is directly connected, FastEthernet1/0
    C#

    Why is it 192.168.10.0 is not in the ip routing table but in bgp table it is there?

    C#sh ip bgp
    BGP table version is 1, local router ID is 10.0.0.6
    Status codes: s suppressed, d damped, h history, * valid, > best, i - internal

    sh ip bgp
    Origin codes: i - IGP, e - EGP, ? - incomplete

    Network Next Hop Metric LocPrf Weight Path
    * i192.168.10.0 10.0.0.1 0 100 0 100 i

    Okay I see it here that still the next hop is 10.0.0.1, Do I need to issue next_hop_self on EBGP100 to force that to reach 192.168.10.0 is through 10.0.0.5 Or it is just applicable on NBMA?
  • Ching01Ching01 Member Posts: 83 ■■□□□□□□□□
    Ed, I tried to add a mask on 172.16.10.0

    here' my config

    network 172.16.10.0 mask 255.255.255.0
    I saw that no valid path in 172.16.0.0/16 since I don't have this network and I have 172.16.10.0.

    now it's learning the route howerver, why in IBGP 200 it is not in the routing table like EBGP 200

    EBGP 200
    Gateway of last resort is not set

    B 192.168.10.0/24 [20/0] via 10.0.0.1, 00:00:25
    172.16.0.0/24 is subnetted, 1 subnets
    B 172.16.10.0 [20/0] via 10.0.0.1, 00:00:25
    10.0.0.0/30 is subnetted, 2 subnets
    C 10.0.0.0 is directly connected, FastEthernet0/0
    C 10.0.0.4 is directly connected, FastEthernet1/0
    B#

    from IBGP 200

    C#sh ip ro
    Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP
    D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
    N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
    E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP
    i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
    ia - IS-IS inter area, * - candidate default, U - per-user static route
    o - ODR, P - periodic downloaded static route

    Gateway of last resort is not set

    10.0.0.0/30 is subnetted, 1 subnets
    C 10.0.0.4 is directly connected, FastEthernet1/0
  • Ching01Ching01 Member Posts: 83 ■■□□□□□□□□
    Ed, I have a questioned do I need to put static on IBGP100 to reach 192.168.10.0 and 172.16.10.0 network.

    I tried to add next_hop_self on EBGP200 like this nei 10.0.0.6 next_hop_self

    so in IBGP 200 BGP table it change the next hop but unsuccessfully ping
    what will I do?

    Status codes: s suppressed, d damped, h history, * valid, > best, i - internal
    Origin codes: i - IGP, e - EGP, ? - incomplete

    Network Next Hop Metric LocPrf Weight Path
    * i172.16.10.0/24 10.0.0.5 0 100 0 100 i
    * i192.168.10.0 10.0.0.5 0 100 0 100 i
  • Ching01Ching01 Member Posts: 83 ■■□□□□□□□□
    Ed, I got it why it is not learning the 172.16.10.0 route. EBGP 100 is advertising 172.16.10.0 to EBGP 200 as 172.16.0.0/16 so EBGP 100 will look for that route however there is not route 172.16.0.0 but 172.16.10.0.

    I am just confused I need to advertise the network between the ebgp routers via igp.

    you mean EBGP to EBGP not EBGP to IBGP
  • EdTheLadEdTheLad Member Posts: 2,111 ■■■■□□□□□□
    You want a config like below,i hope i didnt miss anything!, in your example IBGP did not have a route to the "next-hop" address 10.0.0.0/30, you can provide this either using static or an igp.Also you defined the network for 172.16.0.0 incorrectly, this all depends on the auto-summary setting on bgp.
    Better practice is to use loopback interfaces internally for ibgp sources, also you could use next-hop-self but this can cause suboptimal routing.
    Please next time provide the complete running configs as it makes troubleshooting so much easier.


    EBGP 100

    int lo0 192.168.10.1 255.255.255.0
    int lo1 172.16.10.1 255.255.255.0

    router bgp 100
    neighbor 10.0.0.2 remote-as 200
    no-auto-summary
    no synch
    network 192.168.10.0 mask 255.255.255.0
    network 172.16.10.0 mask 255.255.255.0

    EBGP 200

    router bgp 200
    neighbor 10.0.0.1 remote-as 100
    neighbor 10.0.0.6 remote-as 200
    no synch

    router ospf
    network 10.0.0.5 0.0.0.0 area 0
    network 10.0.0.2 0.0.0.0 area 0
    passive-int s0/0

    Ibgp 200

    router bgp 200
    neighbor 10.0.0.5 remore-as 200
    no synch

    router ospf 1
    network 10.0.0.5 0.0.0.0 area 0
    Networking, sometimes i love it, mostly i hate it.Its all about the $$$$
  • Ching01Ching01 Member Posts: 83 ■■□□□□□□□□
    Ed, I am login in router C IBGP 200 why I can't ping 172.16.10.1 and 192.168.10.1 even though it's already on my ip table and BGP table.

    However I notice that on routerA I don't have access to 10.0.0.4 network does it mean I need to add a static route on router A to reach 10.0.0.4 network?

    I am not getting confuse with BGP
    Anyway, here's my config

    A#sh run
    Building configuration...

    Current configuration : 709 bytes
    !
    version 12.2
    service timestamps debug uptime
    service timestamps log uptime
    no service password-encryption
    !
    hostname A
    !
    !
    ip subnet-zero
    !
    !
    no ip domain-lookup
    !
    call rsvp-sync
    !
    !
    !
    interface Loopback0
    ip address 172.16.10.1 255.255.255.0
    !
    interface Loopback1
    ip address 192.168.10.1 255.255.255.0
    !
    interface FastEthernet0/0
    ip address 10.0.0.1 255.255.255.252
    duplex auto
    speed auto
    !
    router bgp 100
    no synchronization
    bgp log-neighbor-changes
    network 172.16.10.0 mask 255.255.255.0
    network 192.168.10.0
    neighbor 10.0.0.2 remote-as 200
    no auto-summary

    !
    ip classless
    ip http server
    !
    !
    !
    dial-peer cor custom
    !
    !
    !
    !
    line con 0
    logging synchronous
    line aux 0
    line vty 0 4
    !

    A#sh ip bgp
    BGP table version is 3, local router ID is 192.168.10.1
    Status codes: s suppressed, d damped, h history, * valid, > best, i - internal
    Origin codes: i - IGP, e - EGP, ? - incomplete

    Network Next Hop Metric LocPrf Weight Path
    *> 172.16.10.0/24 0.0.0.0 0 32768 i
    *> 192.168.10.0 0.0.0.0 0 32768 i

    A#

    >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>


    Here's Router B

    B#sh run
    Building configuration...

    Current configuration : 748 bytes
    !
    version 12.2
    service timestamps debug uptime
    service timestamps log uptime
    no service password-encryption
    !
    hostname B
    !
    !
    ip subnet-zero
    !
    !
    !
    call rsvp-sync
    !
    !
    !
    !
    !
    !
    !
    !
    interface FastEthernet0/0
    ip address 10.0.0.2 255.255.255.252
    duplex auto
    speed auto
    !
    interface FastEthernet1/0
    ip address 10.0.0.5 255.255.255.252
    duplex auto
    speed auto
    !
    router ospf 1
    log-adjacency-changes
    passive-interface FastEthernet0/0
    network 10.0.0.2 0.0.0.0 area 0
    network 10.0.0.5 0.0.0.0 area 0
    !
    router bgp 200
    no synchronization
    bgp log-neighbor-changes
    neighbor 10.0.0.1 remote-as 100
    neighbor 10.0.0.6 remote-as 200
    no auto-summary
    !
    ip classless
    ip http server
    !
    !
    !
    dial-peer cor custom
    !
    sh ip route and sh ip bgp
    Gateway of last resort is not set

    B 192.168.10.0/24 [20/0] via 10.0.0.1, 00:24:00
    172.16.0.0/24 is subnetted, 1 subnets
    B 172.16.10.0 [20/0] via 10.0.0.1, 00:24:00
    10.0.0.0/30 is subnetted, 2 subnets
    C 10.0.0.0 is directly connected, FastEthernet0/0
    C 10.0.0.4 is directly connected, FastEthernet1/0
    B#sh ip bgp
    BGP table version is 3, local router ID is 10.0.0.5
    Status codes: s suppressed, d damped, h history, * valid, > best, i - internal
    Origin codes: i - IGP, e - EGP, ? - incomplete

    Network Next Hop Metric LocPrf Weight Path
    *> 172.16.10.0/24 10.0.0.1 0 0 100 i
    *> 192.168.10.0 10.0.0.1 0 0 100 i
    B#

    >>>>>>>>>>>>>>.

    router C
    C#sh run
    Building configuration...

    Current configuration : 635 bytes
    !
    version 12.2
    service timestamps debug uptime
    service timestamps log uptime
    no service password-encryption
    !
    hostname C
    !
    !
    ip subnet-zero
    !
    !
    !
    call rsvp-sync
    !
    !
    !
    !
    !
    !
    !
    !
    interface FastEthernet0/0
    no ip address
    shutdown
    duplex auto
    speed auto
    !
    interface FastEthernet1/0
    ip address 10.0.0.6 255.255.255.252
    duplex auto
    speed auto
    !
    router ospf 1
    log-adjacency-changes
    network 10.0.0.6 0.0.0.0 area 0
    !
    router bgp 200
    no synchronization
    bgp log-neighbor-changes
    neighbor 10.0.0.5 remote-as 200
    no auto-summary
    !
    ip classless
    ip http server
    !
    !
    !
    dial-peer cor custom
    !
    !
    !
    !
    line con 0
    line aux 0
    line vty 0 4
    !
    end

    sh ip route and sh ip bgp

    Gateway of last resort is not set

    B 192.168.10.0/24 [200/0] via 10.0.0.1, 00:15:35
    172.16.0.0/24 is subnetted, 1 subnets
    B 172.16.10.0 [200/0] via 10.0.0.1, 00:15:35
    10.0.0.0/30 is subnetted, 2 subnets
    O 10.0.0.0 [110/2] via 10.0.0.5, 00:16:17, FastEthernet1/0
    C 10.0.0.4 is directly connected, FastEthernet1/0
    C#sh ip bgp
    BGP table version is 7, local router ID is 10.0.0.6
    Status codes: s suppressed, d damped, h history, * valid, > best, i - internal
    Origin codes: i - IGP, e - EGP, ? - incomplete

    Network Next Hop Metric LocPrf Weight Path
    *>i172.16.10.0/24 10.0.0.1 0 100 0 100 i
    *>i192.168.10.0 10.0.0.1 0 100 0 100 i
    C#

    As you can see I added static route on Router A EBP 100
  • Ching01Ching01 Member Posts: 83 ■■□□□□□□□□
    Now I added a fourth router D as IBGP 200 also, so it did not received any updates on IBGP 200 router C meaning it's true that IBGP will not forward traffic to it peer IBGP.

    Now what I did is configure router D as router-reflector-client to received BGP updates. Again I need to add a static route on RTA EBGP 100 as ip route 10.0.0.8 255.255.255.252 10.0.0.2 or f0/0

    Now I can ping router D
  • EdTheLadEdTheLad Member Posts: 2,111 ■■■■□□□□□□
    The config you use will depend on the topology,you can inject the local segments into bgp or if you have a stub network you can use a default route.
    Ibgp will not forward updates received from ibgp peers to other ibgp peers,but it will forward local networks injected into bgp to ibgp peers.
    Networking, sometimes i love it, mostly i hate it.Its all about the $$$$
  • Ching01Ching01 Member Posts: 83 ■■□□□□□□□□
    Now to make it more complex I add again aditional router as EBGP 300 which act as a core router, what I want is to summarize 10.0.0.4 to .16 network is one summary address.

    So my network look like this

    EBGP300
    EBGP 100
    EBGP200
    IBGP200---IBGP 100 RRC
    <<10.0.0.0/28 <<<<<<<<<<<<<<<<<<

    How can I summarize 10.0.0.4 to 10.0.0.16 going to EBGP 300, later I will apply distributed list on int f1/0 to block the summary address 10.0.0.0/28 going to EBGP 200 towards IBGP 200

    like this aggregate-address 10.0.0.0 255.255.255.240 summary only

    Am I right? so that EBGP 300 can reach EBGP 200.

    Anyway, Mike I found some site regarding summary in BGP so I 'll read it first. Thank you for your help now I understand why it needs IGP or static in BGP.
Sign In or Register to comment.