Closed elico closed 1 month ago
It looks like your CHR is not accepting incoming BGP connection or something is blocking the outgoing connections.
It may also be that the source IP address is not configured on the host
@thomas-mangin Thanks, The issue was that the RouterOS firmware is probably corrupted in some way. The bgp daemon is not working properly on this device. On other devices I have here it works fine both in virtual environment and also on physical devices. I will try to factory reset (netinstall) the RouterOS device to see if it's resolve that issue and will update.
Now the issue is only to find the right way to configure the service with RouterOS devices so the blacklisted routes will be routed to a blackhole somehow.
Thanks.
OK, I managed to make it work eventually with the next routeros bgp config:
/ip route
add blackhole disabled=no distance=1 dst-address=192.0.2.1/32 gateway="" routing-table=main scope=30 \
suppress-hw-offload=no target-scope=10
/routing bgp template
add address-families=ip as=65001 disabled=no hold-time=30s multihop=yes name=as1 router-id=192.168.111.96 routing-table=\
main
/routing bgp connection
add address-families=ip as=65001 disabled=no hold-time=30s input.filter=get_active listen=yes local.address=\
192.168.111.96 .role=ibgp multihop=yes name=as1-to-as3 output.filter-chain=get_active .filter-select=my_select_chain \
remote.address=192.168.220.159/32 .as=65001 router-id=192.168.111.96 routing-table=main templates=as1
/routing filter rule
add chain=get_active disabled=no rule="if (dst in 0.0.0.0/0) {set distance 1;accept}"
/routing filter select-rule
add chain=my_select_chain disabled=no do-where=get_active
with the next exabgp file:
#!/usr/bin/env exabgp
process blocklist-192.168.111.96 {
run ./api-blocklist.run;
encoder text;
}
template {
neighbor blocklist {
local-as 65001;
peer-as 65001;
router-id 192.168.220.159;
local-address 192.168.220.159;
group-updates true;
hold-time 30;
capability {
graceful-restart 1200;
route-refresh enable;
operational enable;
}
family {
ipv4 unicast;
}
}
}
neighbor 192.168.111.96 {
inherit blocklist;
api {
processes [ blocklist-192.168.111.96 ];
}
}
Thanks! I hope it will help others (I kind of cherry picked from https://help.mikrotik.com/docs/display/ROS/Route+Selection+and+Filters )
Request for help
I am trying to connect exabgp to Mikrotik RouterOS v7.15.2 devices and CHR but unable to make the bgp session to stick. I am able to establish a connection/session between two RouterOS device. I need to test how is with VyOS and FRR in general.
I am using the next exabgp conf:
I am receiving the next output when running exabgp:
I see that the blocklist app works fine and I stopped it since I do see a fundamental issue with the session establishment.
To Reproduce
RouterOS configuration (might be the issue..)
Expected behavior
A bgp sessions to be established so I can try to filter the input from the block lists
Environment (please complete the following information):
Additional context I have a lab and I am able to text every detail regarding RouterOS, VyOS, basic FRR and couple other devices like EDGEROUTER Lite. I hope it will help me and others to work with exabgp and RouterOS.