I've added the rule you suggested. Now the situation is as follows:
- I can ping both 10.99.0.1 and 10.99.0.2
- I can connect with Winbox to 10.99.0.2
- I cannot connect with Winbox to 10.99.0.1 - Probably because there is no rule on the input chain for BTH, but why is it needed if I already allow MGMT_VLAN access to 10.99.0.1?
- Neighbor discovery does not work on my laptop when connected through the VPN - I can't see any device in Mikrotik
How do I fix those last two issues?
Here is my config. I'll be very thankful if you take a look at it and maybe point out some other misconfigurations, especially regarding my firewall rules and VLAN setup.
# 2025-03-30 15:06:00 by RouterOS 7.18.2
#
# model = RB5009UG+S+
/interface bridge
add name=bridge protocol-mode=none vlan-filtering=yes
/interface wireguard
add comment=back-to-home-vpn listen-port=3218 mtu=1420 name=back-to-home-vpn
/interface vlan
add interface=bridge name=GUEST_VLAN vlan-id=20
add interface=bridge name=IOT_VLAN vlan-id=30
add interface=bridge name=MGMT_VLAN vlan-id=99
add interface=bridge name=PRIVATE_VLAN vlan-id=10
add interface=bridge name=SECURITY_VLAN vlan-id=50
/interface list
add name=WAN
add name=VLAN
add name=MGMT
/interface wifi datapath
add bridge=bridge name=WiFi_PRIVATE vlan-id=10
add bridge=bridge name=WiFi_GUEST vlan-id=20
add bridge=bridge name=WiFi_IoT vlan-id=30
/interface wifi security
add authentication-types=wpa2-psk,wpa3-psk ft=yes ft-over-ds=yes name=\
WiFi_PRIVATE
add authentication-types=wpa2-psk,wpa3-psk ft=yes ft-over-ds=yes name=\
WiFi_GUEST
add authentication-types=wpa2-psk,wpa3-psk ft=yes ft-over-ds=yes name=\
WiFi_IoT
/interface wifi configuration
add datapath=WiFi_PRIVATE name=WiFi_PRIVATE security=WiFi_PRIVATE ssid=\
SUPER_INTERNET
add datapath=WiFi_GUEST name=WiFi_GUEST security=WiFi_GUEST ssid=SUPER_GUEST
add datapath=WiFi_IoT name=WiFi_IoT security=WiFi_IoT ssid=SUPER_IoT
/ip pool
add name=PRIVATE_POOL ranges=10.0.10.2-10.0.10.254
add name=GUEST_POOL ranges=10.0.20.2-10.0.20.254
add name=IOT_POOL ranges=10.0.30.2-10.0.30.254
add name=SECURITY_POOL ranges=10.0.50.2-10.0.50.254
add name=MGMT_POOL ranges=10.99.0.2-10.99.0.254
/ip dhcp-server
add address-pool=PRIVATE_POOL interface=PRIVATE_VLAN name=PRIVATE_DHCP
add address-pool=GUEST_POOL interface=GUEST_VLAN name=GUEST_DHCP
add address-pool=IOT_POOL interface=IOT_VLAN name=IOT_DHCP
add address-pool=SECURITY_POOL interface=SECURITY_VLAN name=SECURITY_DHCP
add address-pool=MGMT_POOL interface=MGMT_VLAN name=MGMT_DHCP
/dude
set enabled=yes
/interface bridge port
add bridge=bridge interface=ether8 pvid=99
add bridge=bridge frame-types=admit-only-vlan-tagged interface=ether1
add bridge=bridge frame-types=admit-only-vlan-tagged interface=ether2
add bridge=bridge frame-types=admit-only-vlan-tagged interface=ether3
add bridge=bridge frame-types=admit-only-vlan-tagged interface=ether4
add bridge=bridge frame-types=admit-only-vlan-tagged interface=ether5
add bridge=bridge frame-types=admit-only-vlan-tagged interface=ether6
/ip neighbor discovery-settings
set discover-interface-list=MGMT
/interface bridge vlan
add bridge=bridge tagged=bridge,ether1,ether2,ether3,ether4,ether5,ether6 \
vlan-ids=10
add bridge=bridge tagged=bridge,ether1,ether2,ether3,ether4,ether5,ether6 \
vlan-ids=20
add bridge=bridge tagged=bridge,ether1,ether2,ether3,ether4,ether5,ether6 \
vlan-ids=30
add bridge=bridge tagged=bridge,ether1,ether2,ether3,ether4,ether5,ether6 \
vlan-ids=50
add bridge=bridge tagged=bridge,ether1,ether2,ether3,ether4,ether5,ether6 \
untagged=ether8 vlan-ids=99
/interface list member
add interface=ether7 list=WAN
add interface=PRIVATE_VLAN list=VLAN
add interface=GUEST_VLAN list=VLAN
add interface=IOT_VLAN list=VLAN
add interface=SECURITY_VLAN list=VLAN
add interface=MGMT_VLAN list=VLAN
add interface=MGMT_VLAN list=MGMT
/interface ovpn-server server
add mac-address=FE:8F:AF:29:63:8B name=ovpn-server1
/interface wifi capsman
set enabled=yes interfaces=MGMT_VLAN
/interface wifi provisioning
add action=create-dynamic-enabled master-configuration=WiFi_PRIVATE \
supported-bands=5ghz-ax
add action=create-dynamic-enabled master-configuration=WiFi_PRIVATE \
slave-configurations=WiFi_GUEST,WiFi_IoT supported-bands=2ghz-ax
/ip address
add address=10.99.0.1/16 interface=MGMT_VLAN network=10.99.0.0
add address=10.0.10.1/24 interface=PRIVATE_VLAN network=10.0.10.0
add address=10.0.20.1/24 interface=GUEST_VLAN network=10.0.20.0
add address=10.0.30.1/24 interface=IOT_VLAN network=10.0.30.0
add address=10.0.50.1/24 interface=SECURITY_VLAN network=10.0.50.0
add address=192.168.88.201/24 interface=ether7 network=192.168.88.0
/ip cloud
set back-to-home-vpn=enabled ddns-enabled=yes
/ip cloud back-to-home-user
add allow-lan=yes file-access=full name=smigol private-key=\
"wOVKygOk90s1LpmZjYl6R762JNDypzgyyPlbVqKcmFo=" public-key=\
"r4HZ9rPfCCCYlVj9SzB1XT+geA0zvByWBj3Tlvqvazw="
/ip dhcp-server lease
add address=10.0.50.2 client-id=\
ff:9a:cd:72:c2:0:2:0:0:ab:11:9e:13:50:9:3f:a:80:14 mac-address=\
0C:EA:14:3D:83:1D server=SECURITY_DHCP
/ip dhcp-server network
add address=10.0.10.0/24 dns-server=10.99.0.1 gateway=10.0.10.1
add address=10.0.20.0/24 dns-server=10.99.0.1 gateway=10.0.20.1
add address=10.0.30.0/24 dns-server=10.99.0.1 gateway=10.0.30.1
add address=10.0.50.0/24 dns-server=10.99.0.1 gateway=10.0.50.1
add address=10.99.0.0/16 dns-server=10.99.0.1 gateway=10.99.0.1
/ip dns
set allow-remote-requests=yes use-doh-server=\
https://cloudflare-dns.com/dns-query verify-doh-cert=yes
/ip dns static
add address=104.16.248.249 name=cloudflare-dns.com type=A
add address=104.16.249.249 name=cloudflare-dns.com type=A
/ip firewall filter
add action=accept chain=input comment="Allow Estab & Related" \
connection-state=established,related
add action=accept chain=input comment="Allow VLAN to access DNS (TCP)" \
dst-port=53 in-interface-list=VLAN protocol=tcp
add action=accept chain=input comment="Allow VLAN to access DNS (UDP)" \
dst-port=53 in-interface-list=VLAN protocol=udp
add action=accept chain=input comment="Allow MGMT_VLAN full access" \
in-interface-list=MGMT
add action=accept chain=input comment="Allow ICMP" icmp-options=8:0-255 \
protocol=icmp
add action=drop chain=input comment=Drop
add action=accept chain=forward comment="Allow Estab & Related" \
connection-state=established,related
add action=accept chain=forward comment="VLAN Internet Access only" \
connection-state=new in-interface-list=VLAN out-interface-list=WAN
add action=accept chain=forward comment="BTH Internet Access" \
connection-state=new in-interface=back-to-home-vpn out-interface-list=WAN
add action=accept chain=forward comment="BTH allow MGMT_VLAN" in-interface=\
back-to-home-vpn out-interface-list=MGMT
add action=accept chain=forward comment=\
"Allow MGMT_VLAN to access UI CloudKey+ in SECURITY_VLAN" dst-address=\
10.0.50.2 in-interface-list=MGMT
add action=drop chain=forward comment=Drop
/ip firewall nat
add action=masquerade chain=srcnat comment="Default masquerade" \
out-interface-list=WAN
/ip route
add distance=1 gateway=192.168.88.1
/ip service
set telnet disabled=yes
set ftp disabled=yes
set www disabled=yes
set api disabled=yes
set api-ssl disabled=yes
/system clock
set time-zone-name=Europe/Warsaw
/system identity
set name=MainRouter
/system note
set show-at-login=no
/tool mac-server
set allowed-interface-list=MGMT
/tool mac-server mac-winbox
set allowed-interface-list=none