FRRouting / frr

The FRRouting Protocol Suite
https://frrouting.org/
Other
3.33k stars 1.25k forks source link

BGP unnumbered issue - Could not finish the TCP handshake #4826

Closed pythonxian closed 5 years ago

pythonxian commented 5 years ago

Hi Guys,

Needs some help on getting around the BGP unnumbered issue. I think I have my configuration done right but the BGP peers are not even able to finish the TCP handshake with the link local address.

Test topology: SP02 -port 96 ------------------------ RA01 - port 100

Network gear: SP02, RA01 - Arista switch running Sonic FRR version - 7.01 Linux - 4.9.0-8-2-amd64 #1 SMP Debian 4.9.110-3+deb9u6 (2015-12-19) x86_64 GNU/Linux

################## RA01 ##################

interface Ethernet100 ipv6 nd ra-interval 5 no ipv6 nd suppress-ra ! interface lo ip address 100.127.200.3/32 ! router bgp 65593 bgp router-id 100.127.200.3 neighbor ISL peer-group neighbor ISL remote-as external neighbor ISL bfd neighbor ISL capability extended-nexthop neighbor Ethernet100 interface peer-group ISL ! address-family ipv4 unicast redistribute connected route-map ADV_LO exit-address-family ! address-family ipv6 unicast neighbor ISL activate exit-address-family ! route-map ADV_LO permit 10 match interface lo !

################### Sp02 ################### ! interface Ethernet96 ipv6 nd ra-interval 5 no ipv6 nd suppress-ra ! interface lo ip address 100.127.200.2/32 ! router bgp 65592 bgp router-id 100.127.200.2 neighbor ISL peer-group neighbor ISL remote-as external neighbor ISL bfd neighbor ISL capability extended-nexthop neighbor Ethernet96 interface peer-group ISL ! address-family ipv4 unicast redistribute connected route-map ADV_LO exit-address-family ! address-family ipv6 unicast neighbor ISL activate exit-address-family ! route-map ADV_LO permit 10 match interface lo

ISSUE:

Both end could not finish the 3 ways handshake because no ACK is returned from either end.

tcpdump on SP02.99:

18:11:25.097912 IP6 fe80::2a99:3aff:fe43:828.60094 > fe80::2a99:3aff:fea0:f79c.bgp: Flags [S], seq 1916461314, win 27120, options [mss 9040,sackOK,TS val 60494016 ecr 0,nop,wscale 7], length 0 18:11:25.098014 IP6 fe80::2a99:3aff:fea0:f79c.bgp > fe80::2a99:3aff:fe43:828.60094: Flags [S.], seq 3862918119, ack 1916461315, win 27084, options [mss 9040,sackOK,TS val 1187858364 ecr 60486120,nop,wscale 7], length 0

tcpdump On RA01.99:

17:21:17.526446 IP6 fe80::2a99:3aff:fea0:f79c.52486 > fe80::2a99:3aff:fe43:828.bgp: Flags [S], seq 2854675523, win 27120, options [mss 9040,sackOK,TS val 1187864576 ecr 0,nop,wscale 7], length 0 17:21:17.526578 IP6 fe80::2a99:3aff:fe43:828.bgp > fe80::2a99:3aff:fea0:f79c.52486: Flags [S.], seq 239598513, ack 2854675524, win 27084, options [mss 9040,sackOK,TS val 60500224 ecr 1187864576,nop,wscale 7], length 0

ton31337 commented 5 years ago

I had something similar between Cumulus and Nexus 7k. Have you tried using ebgp-multihop for that session?

rohitgeek commented 5 years ago

I had to install below package on FRR and then just a copy pasted above config between 2 FRR routers brought up BGP sessions:

"apt install -y iproute libc-ares2"

R1(config-route-map)# do sh bgp summary


BGP router identifier 100.127.200.3, local AS number 65593 vrf-id 0
BGP table version 2
RIB entries 3, using 480 bytes of memory
Peers 1, using 21 KiB of memory
Peer groups 1, using 64 bytes of memory
Neighbor        V         AS MsgRcvd MsgSent   TblVer  InQ OutQ  Up/Down State/PfxRcd
ens256          4      65592       6       6        0    0    0 00:00:05            1

Total number of neighbors 1

IPv6 Unicast Summary:
BGP router identifier 100.127.200.3, local AS number 65593 vrf-id 0
BGP table version 0
RIB entries 0, using 0 bytes of memory
Peers 1, using 21 KiB of memory
Peer groups 1, using 64 bytes of memory
Neighbor        V         AS MsgRcvd MsgSent   TblVer  InQ OutQ  Up/Down State/PfxRcd
ens256          4      65592       6       6        0    0    0 00:00:05            0
Total number of neighbors 1
R1(config-route-map)# ```
ton31337 commented 5 years ago

@polychaeta autoclose in 2days