I have two routers (cr01 and cr02) in the same location for redundancy purposes (using VRRP).
Some servers announce routes via BGP to the VRRP address of the routers. Those routes are learned, seen as active and traffic gets routed there.
[user@cr01] > /routing/route/print where bgp
Flags: A - ACTIVE; b, y - COPY; +, B - BLACKHOLE
Columns: DST-ADDRESS, GATEWAY, AFI, DISTANCE, SCOPE, TARGET-SCOPE, IMMEDIATE-GW
DST-ADDRESS GATEWAY AFI DISTANCE SCOPE TARGET-SCOPE IMMEDIATE-GW
Ab+ 10.10.10.1/32 10.10.3.2 ip4 200 40 30 10.10.3.2%vl-1030-tools
10.10.3.2%vrrp-tools
b+ 10.10.10.1/32 10.10.3.3 ip4 200 40 30 10.10.3.3%vl-1030-tools
10.10.3.3%vrrp-tools
The routing table for BGP addresses for cr02 is empty as expected at this time (VRRP IP is active on cr01).
Now I want to announce/advertise the learned BGP routes from cr01 to cr02 (and the other way around) but this does not succeed (unfortunately I cannot see why).
[user@cr01] > /routing/bgp/export
# jan/19/2023 11:53:41 by RouterOS 7.7
# software id = x
#
# model = CCR2116-12G-4S+
# serial number = x
/routing bgp connection
add as=64601 disabled=no listen=yes local.address=10.10.99.253 .role=ebgp name=to_cr02.home output.network=test_host_anycast_dns remote.address=10.10.99.252 router-id=10.10.99.253 routing-table=main
add as=64600 listen=yes local.address=10.10.3.254 .role=ibgp name=from_net_tools remote.address=10.10.3.0/24 router-id=10.10.3.253
[user@cr02] > /routing/bgp/export
# jan/19/2023 11:55:29 by RouterOS 7.7
# software id = x
#
# model = RB3011UiAS
# serial number = x
/routing bgp connection
add as=64602 disabled=no listen=yes local.address=10.10.99.252 .role=ebgp name=to_cr01.home output.network=test_host_anycast_dns remote.address=10.10.99.253 router-id=10.10.99.252
add as=64600 listen=yes local.address=10.10.3.254 .role=ibgp name=from_net_tools remote.address=10.10.3.0/24 router-id=10.10.3.252
For testing purposes I announced the routes from the server to both router IP addresses (.253 and .252) and that worked.
I have the following address list on both routers.
[user@cr01] > /ip/firewall/address-list/print where list="test_host_anycast_dns"
Columns: LIST, ADDRESS, CREATION-TIME
# LIST ADDRESS CREATION-TIME
;;; TEST anycast IP for DNS
0 test_host_anycast_dns 10.10.10.1 jan/18/2023 20:32:55
For the output.network I have also tried a net rather than a single IP address to sort this out. I used 10.10.10.0/24 before.
The BGP connections are there.
[user@cr01] > /routing/bgp/connection/print
Flags: D - dynamic, X - disabled, I - inactive
0 name="to_cr02.home"
remote.address=10.10.99.252
local.address=10.10.99.253 .role=ebgp
listen=yes routing-table=main router-id=10.10.99.253 as=64601
output.network=test_host_anycast_dns
1 name="from_net_tools"
remote.address=10.10.3.0/24
local.address=10.10.3.254 .role=ibgp
listen=yes routing-table=main router-id=10.10.3.253 as=64600
[user@cr02] > /routing/bgp/connection/print
Flags: D - dynamic, X - disabled, I - inactive
0 name="to_cr01.home"
remote.address=10.10.99.253
local.address=10.10.99.252 .role=ebgp
listen=yes routing-table=main router-id=10.10.99.252 as=64602
output.network=test_host_anycast_dns
1 name="from_net_tools"
remote.address=10.10.3.0/24
local.address=10.10.3.254 .role=ibgp
listen=yes routing-table=main router-id=10.10.3.252 as=64600
Unfortunately I couldn’t help myself with the documentation or things I found on the internet.
Could somebody please point out what I am missing?