-
Bug
-
Resolution: Unresolved
-
Undefined
-
None
-
4.20
-
None
-
Quality / Stability / Reliability
-
False
-
-
None
-
None
-
None
-
None
-
None
-
None
-
CNF Network Sprint 275, CNF Network Sprint 277
-
2
-
None
-
None
-
None
-
None
-
None
-
None
-
None
Description of problem:
BGP neighbours with IPv6 addresses from the speakers not getting establish
Version-Release number of selected component (if applicable):
OCP: 4.20 MetalLB Operator: v4.20.0-202507241514
How reproducible:
100%
Steps to Reproduce:
1. Deploy OCP 4.20 in a baremetal cluster with dualstack 2. Install MetalLB operator 4.20.0 3. Configure BGP Peers, IPAddressPool, and BGPAdvertisement with dual stack. 4. Create a service from the IPAddressPool the service EXTERNAL-IP and an application workload 5. Check the BGP neighbours in the switch side and there would be only IPv4 BGP peers
Actual results:
BGP neighbours with IPv6 addresses from the speakers not getting establish
Expected results:
BGP neighbours with IPv6 addresses from the speakers should be established
Additional info:
Previous OCP releases and MetalLB operator versions are working ok
Preliminary output from our cluster configuration (must-gather attached)
[kni@provisioner.cluster5.dfwt5g.lab ~]$ oc -n metallb-system get pods NAME READY STATUS RESTARTS AGE controller-77d567694-8v4cs 2/2 Running 0 3h6m metallb-operator-controller-manager-8644655685-54g2r 1/1 Running 0 3h22m metallb-operator-webhook-server-7c795599fb-2lg5x 1/1 Running 0 3h16m speaker-4nws8 2/2 Running 0 3h6m speaker-8t27x 2/2 Running 0 3h6m speaker-htgdj 2/2 Running 0 3h6m speaker-twwlc 2/2 Running 0 3h6m [kni@provisioner.cluster5.dfwt5g.lab ~]$ oc -n metallb-system get IPAddressPool NAME AUTO ASSIGN AVOID BUGGY IPS ADDRESSES vlan544 true false ["10.100.5.50-10.100.5.70","fdb4:da34:100:5::5-fdb4:da34:100:5::10"] [kni@provisioner.cluster5.dfwt5g.lab ~]$ oc -n metallb-system get BGPPeer NAME ADDRESS ASN BFD PROFILE MULTI HOPS dfw01edge-sp01-cluster5-vlan544-ipv4 192.168.55.2 65000 bfd-fastest dfw01edge-sp01-cluster5-vlan544-ipv6 fdb0:5b22:e86a:55::2 65000 bfd-fastest dfw01edge-sp02-cluster5-vlan544-ipv4 192.168.55.3 65000 bfd-fastest dfw01edge-sp02-cluster5-vlan544-ipv6 fdb0:5b22:e86a:55::3 65000 bfd-fastest [kni@provisioner.cluster5.dfwt5g.lab ~]$ oc -n metallb-system get BGPAdvertisement NAME IPADDRESSPOOLS IPADDRESSPOOL SELECTORS PEERS vlan544 ["vlan544"] ["dfw01edge-sp01-cluster5-vlan544-ipv4","dfw01edge-sp02-cluster5-vlan544-ipv4","dfw01edge-sp01-cluster5-vlan544-ipv6","dfw01edge-sp02-cluster5-vlan544-ipv6"] [kni@provisioner.cluster5.dfwt5g.lab ~]$ oc -n metallb-app-vlan544 get pods NAME READY STATUS RESTARTS AGE httpbin-vlan544-6f7fd6bf65-kqprd 1/1 Running 0 3h18m httpbin-vlan544-6f7fd6bf65-mzmwv 1/1 Running 0 3h18m [kni@provisioner.cluster5.dfwt5g.lab ~]$ oc -n metallb-app-vlan544 get svc NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE metallb-vlan544 LoadBalancer 172.30.55.224 10.100.5.50,fdb4:da34:100:5::5 8080:31061/TCP 3h17m
Servers IPv4/IPv6 addresses on the speakers:
[kni@provisioner.cluster5.dfwt5g.lab ~]$ for i in {0..3}; do echo "=== worker-${i} ==="; ssh core@worker-${i} "sudo ip a s bond0.544"; done 2>/dev/null === worker-0 === 179: bond0.544@bond0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9000 qdisc noqueue state UP group default qlen 1000 link/ether b8:83:03:91:c5:c8 brd ff:ff:ff:ff:ff:ff inet 192.168.55.24/26 brd 192.168.55.63 scope global noprefixroute bond0.544 valid_lft forever preferred_lft forever inet6 fdb0:5b22:e86a:55::18/64 scope global noprefixroute valid_lft forever preferred_lft forever inet6 fe80::ba83:3ff:fe91:c5c8/64 scope link noprefixroute valid_lft forever preferred_lft forever === worker-1 === 136: bond0.544@bond0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9000 qdisc noqueue state UP group default qlen 1000 link/ether b8:83:03:92:c0:44 brd ff:ff:ff:ff:ff:ff inet 192.168.55.25/26 brd 192.168.55.63 scope global noprefixroute bond0.544 valid_lft forever preferred_lft forever inet6 fdb0:5b22:e86a:55::19/64 scope global noprefixroute valid_lft forever preferred_lft forever inet6 fe80::ba83:3ff:fe92:c044/64 scope link noprefixroute valid_lft forever preferred_lft forever === worker-2 === 87: bond0.544@bond0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9000 qdisc noqueue state UP group default qlen 1000 link/ether b8:83:03:91:c5:10 brd ff:ff:ff:ff:ff:ff inet 192.168.55.26/26 brd 192.168.55.63 scope global noprefixroute bond0.544 valid_lft forever preferred_lft forever inet6 fdb0:5b22:e86a:55::1a/64 scope global noprefixroute valid_lft forever preferred_lft forever inet6 fe80::ba83:3ff:fe91:c510/64 scope link noprefixroute valid_lft forever preferred_lft forever === worker-3 === 179: bond0.544@bond0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9000 qdisc noqueue state UP group default qlen 1000 link/ether b8:83:03:91:c5:60 brd ff:ff:ff:ff:ff:ff inet 192.168.55.27/26 brd 192.168.55.63 scope global noprefixroute bond0.544 valid_lft forever preferred_lft forever inet6 fdb0:5b22:e86a:55::1b/64 scope global noprefixroute valid_lft forever preferred_lft forever inet6 fe80::ba83:3ff:fe91:c560/64 scope link noprefixroute valid_lft forever preferred_lft forever
In the switch side we only see the IPv4 BGP neighbours:
dfw01edge-sp01#show ip bgp summary BGP summary information for VRF default Router identifier 192.168.103.2, local AS number 65000 Neighbor Status Codes: m - Under maintenance Neighbor V AS MsgRcvd MsgSent InQ OutQ Up/Down State PfxRcd PfxAcc 192.168.5.30 4 65001 256824 256965 0 0 3d07h Estab 2 2 192.168.55.24 4 65052 193 204 0 0 03:08:17 Estab 1 1 192.168.55.25 4 65052 193 203 0 0 03:08:17 Estab 1 1 192.168.55.26 4 65052 193 203 0 0 03:08:17 Estab 1 1 192.168.55.27 4 65052 193 203 0 0 03:08:17 Estab 1 1 dfw01edge-sp01#show ip bgp BGP routing table information for VRF default Router identifier 192.168.103.2, local AS number 65000 Route status codes: s - suppressed, * - valid, > - active, # - not installed, E - ECMP head, e - ECMP S - Stale, c - Contributing to ECMP, b - backup, L - labeled-unicast Origin codes: i - IGP, e - EGP, ? - incomplete AS Path Attributes: Or-ID - Originator ID, C-LST - Cluster List, LL Nexthop - Link Local Nexthop Network Next Hop Metric LocPref Weight Path * > 10.10.0.0/24 192.168.5.30 0 100 0 65001 i * > 10.20.0.0/24 192.168.5.30 0 100 0 65001 i * > 10.100.5.50/32 192.168.55.24 0 100 0 65052 i * 10.100.5.50/32 192.168.55.25 0 100 0 65052 i * 10.100.5.50/32 192.168.55.26 0 100 0 65052 i * 10.100.5.50/32 192.168.55.27 0 100 0 65052 i dfw01edge-sp01#show ipv6 bgp BGP routing table information for VRF default Router identifier 192.168.103.2, local AS number 65000 Route status codes: s - suppressed, * - valid, > - active, # - not installed, E - ECMP head, e - ECMP S - Stale, c - Contributing to ECMP, b - backup, L - labeled-unicast Origin codes: i - IGP, e - EGP, ? - incomplete AS Path Attributes: Or-ID - Originator ID, C-LST - Cluster List, LL Nexthop - Link Local Nexthop Network Next Hop Metric LocPref Weight Path * > fd6e:5873:9d61:10::/64 fddd:82bd:8708:5::30 0 100 0 65001 i * > fd6e:5873:9d61:20::/64 fddd:82bd:8708:5::30 0 100 0 65001 i dfw01edge-sp01#show ipv6 bgp summary BGP summary information for VRF default Router identifier 192.168.103.2, local AS number 65000 Neighbor Status Codes: m - Under maintenance Neighbor V AS MsgRcvd MsgSent InQ OutQ Up/Down State PfxRcd PfxAcc fddd:82bd:8708:5::30 4 65001 256844 256984 0 0 3d08h Estab 2 2