Adding IP to a VLAN interface breaks routing

Hi,

I’m following Mikrotik RouterOS: Simple Guest Vlan Configuration
to configure guest WiFi and encounter a problem.

I have external server, which works as DHCP (it’s not on Mikrotik itself). I have two main networks: 10.10.10.0/24 for lan and 10.10.20.0/24 for kids.
Without IP address on the VLAN interface I can ping from Mikrotik both 10.10.10.1 and 10.10.20.1 addresses (those are IP addresses of DHCP server). But when I assign the 10.10.20.28 IP address to my VLAN interface, the default (or more correctly dynamic) routing is added, which prevents network flow: ping to 10.10.20.1 timing out.
Is this an expected behaviour for the configuration I’m trying to do?

I’m trying to solve this problem, because I can connect to my guest wifi, but the device can’t acquire an IP address.

My full configuration below (I disabled all the firewall rules just in case, probably was a dumb idea, but added a default allow forward rule):

/export hide-sensitive  
# 2024-10-29 15:02:02 by RouterOS 7.17beta4
# software id = C1AP-NZRR
#
# model = cAPGi-5HaxD2HaxD
# serial number = <REDACTED>
/interface bridge
add admin-mac=D4:01:C3:67:B7:55 auto-mac=no comment="Bridge for LAN network" name=LAN_BRIDGE vlan-filtering=yes
/interface vlan
add comment=INT_KIDS_20 interface=LAN_BRIDGE name=INT_KIDS_20 vlan-id=20
/interface list
add comment=defconf name=WAN
add comment=defconf name=LAN
/interface wifi configuration
add comment=WiFi_SSID disabled=no mode=ap name=WiFi_SSID ssid=WiFi_SSID
/interface wifi security
add authentication-types=wpa2-psk,wpa3-psk comment=WiFi_SSID disabled=no name=WiFi_SSID
add authentication-types=wpa2-psk,wpa3-psk comment="Test security for VLAN wifi" disabled=no name=VLAN-testing
/interface wifi
set [ find default-name=wifi2 ] channel.band=2ghz-ax .skip-dfs-channels=10min-cac .width=20/40mhz configuration=WiFi_SSID configuration.mode=ap disabled=no name=WiFi_SSID2 security=WiFi_SSID security.ft=yes .ft-over-ds=yes
add channel.band=5ghz-n comment="Test WiFi with VLAN" configuration.mode=ap .ssid=WiFi_SSID3 mac-address=D6:01:C3:67:B7:57 master-interface=WiFi_SSID2 name=WiFi_SSID3 security=VLAN-testing
set [ find default-name=wifi1 ] channel.band=5ghz-ax .skip-dfs-channels=10min-cac .width=20/40/80mhz configuration=WiFi_SSID configuration.mode=ap disabled=no name=WiFi_SSID5 security=WiFi_SSID security.ft=yes .ft-over-ds=yes
/ip pool
add name=default-dhcp ranges=192.168.88.10-192.168.88.254
/disk settings
set auto-media-interface=LAN_BRIDGE auto-media-sharing=yes auto-smb-sharing=yes
/interface bridge port
add bridge=LAN_BRIDGE comment=PORT_ETH_2 interface=ether2
add bridge=LAN_BRIDGE comment=PORT_WIFI_5 interface=WiFi_SSID5
add bridge=LAN_BRIDGE comment=PORT_WIFI_2 interface=WiFi_SSID2
add bridge=LAN_BRIDGE comment=PORT_ETH_1 interface=ether1
add bridge=LAN_BRIDGE interface=WiFi_SSID3 pvid=20
add bridge=LAN_BRIDGE interface=INT_KIDS_20 pvid=20
/ip neighbor discovery-settings
set discover-interface-list=LAN
/interface bridge vlan
add bridge=LAN_BRIDGE comment=VLAN-KIDS-20 tagged=LAN_BRIDGE,WiFi_SSID3 untagged=INT_KIDS_20 vlan-ids=20
/interface list member
add comment=defconf interface=LAN_BRIDGE list=LAN
add comment=defconf interface=ether1 list=WAN
add interface=*7 list=LAN
/ip address
add address=192.168.88.1/24 comment="Management address" interface=ether2 network=192.168.88.0
add address=10.10.20.4/24 disabled=yes interface=WiFi_SSID3 network=10.10.20.0
add address=10.10.20.28/24 comment=NET-20 interface=INT_KIDS_20 network=10.10.20.0
add address=10.10.10.27/24 comment="Manual LAN_BRIDGE IP assignment" interface=LAN_BRIDGE network=10.10.10.0
/ip dhcp-client
add comment="LAN IP ADDR" disabled=yes interface=LAN_BRIDGE
/ip dhcp-server
add address-pool=default-dhcp interface=*7 name=management
/ip dhcp-server network
add address=192.168.88.0/24 comment=defconf dns-server=192.168.88.1 gateway=192.168.88.1
/ip dns
set allow-remote-requests=yes
/ip dns static
add address=192.168.88.1 comment=defconf name=router.lan type=A
/ip firewall filter
add action=accept chain=input comment="defconf: accept established,related,untracked" connection-state=established,related,untracked disabled=yes
add action=drop chain=input comment="defconf: drop invalid" connection-state=invalid disabled=yes
add action=accept chain=input comment="defconf: accept ICMP" disabled=yes protocol=icmp
add action=accept chain=input comment="defconf: accept to local loopback (for CAPsMAN)" disabled=yes dst-address=127.0.0.1
add action=drop chain=input comment="defconf: drop all not coming from LAN" disabled=yes in-interface-list=!LAN
add action=accept chain=forward comment="defconf: accept in ipsec policy" disabled=yes ipsec-policy=in,ipsec
add action=accept chain=forward comment="defconf: accept out ipsec policy" disabled=yes ipsec-policy=out,ipsec
add action=fasttrack-connection chain=forward comment="defconf: fasttrack" connection-state=established,related disabled=yes hw-offload=yes
add action=accept chain=forward comment="defconf: accept established,related, untracked" connection-state=established,related,untracked disabled=yes
add action=drop chain=forward comment="defconf: drop invalid" connection-state=invalid disabled=yes
add action=drop chain=forward comment="defconf: drop all from WAN not DSTNATed" connection-nat-state=!dstnat connection-state=new disabled=yes in-interface-list=WAN
add action=accept chain=forward comment="Accept forward from anywhere"
/ip firewall nat
add action=masquerade chain=srcnat comment="defconf: masquerade" ipsec-policy=out,none out-interface-list=WAN
/ip route
add comment="Manual route test" disabled=no distance=1 dst-address=0.0.0.0/0 gateway=10.10.10.1 routing-table=main suppress-hw-offload=no vrf-interface=LAN_BRIDGE
add comment="Test eth1" disabled=yes distance=1 dst-address=10.10.10.0/24 gateway=ether1 routing-table=main scope=30 suppress-hw-offload=no target-scope=10
add comment="Test eth1 0.0.0.0" disabled=yes distance=1 dst-address=0.0.0.0/0 gateway=ether1 routing-table=main scope=30 suppress-hw-offload=no target-scope=10
add disabled=yes distance=1 dst-address=10.10.20.0/24 gateway=LAN_BRIDGE routing-table=main scope=30 suppress-hw-offload=no target-scope=10
/ipv6 firewall address-list
add address=::/128 comment="defconf: unspecified address" list=bad_ipv6
add address=::1/128 comment="defconf: lo" list=bad_ipv6
add address=fec0::/10 comment="defconf: site-local" list=bad_ipv6
add address=::ffff:0.0.0.0/96 comment="defconf: ipv4-mapped" list=bad_ipv6
add address=::/96 comment="defconf: ipv4 compat" list=bad_ipv6
add address=100::/64 comment="defconf: discard only " list=bad_ipv6
add address=2001:db8::/32 comment="defconf: documentation" list=bad_ipv6
add address=2001:10::/28 comment="defconf: ORCHID" list=bad_ipv6
add address=3ffe::/16 comment="defconf: 6bone" list=bad_ipv6
/ipv6 firewall filter
add action=accept chain=input comment="defconf: accept established,related,untracked" connection-state=established,related,untracked
add action=drop chain=input comment="defconf: drop invalid" connection-state=invalid
add action=accept chain=input comment="defconf: accept ICMPv6" protocol=icmpv6
add action=accept chain=input comment="defconf: accept UDP traceroute" dst-port=33434-33534 protocol=udp
add action=accept chain=input comment="defconf: accept DHCPv6-Client prefix delegation." dst-port=546 protocol=udp src-address=fe80::/10
add action=accept chain=input comment="defconf: accept IKE" dst-port=500,4500 protocol=udp
add action=accept chain=input comment="defconf: accept ipsec AH" protocol=ipsec-ah
add action=accept chain=input comment="defconf: accept ipsec ESP" protocol=ipsec-esp
add action=accept chain=input comment="defconf: accept all that matches ipsec policy" ipsec-policy=in,ipsec
add action=drop chain=input comment="defconf: drop everything else not coming from LAN" in-interface-list=!LAN
add action=accept chain=forward comment="defconf: accept established,related,untracked" connection-state=established,related,untracked
add action=drop chain=forward comment="defconf: drop invalid" connection-state=invalid
add action=drop chain=forward comment="defconf: drop packets with bad src ipv6" src-address-list=bad_ipv6
add action=drop chain=forward comment="defconf: drop packets with bad dst ipv6" dst-address-list=bad_ipv6
add action=drop chain=forward comment="defconf: rfc4890 drop hop-limit=1" hop-limit=equal:1 protocol=icmpv6
add action=accept chain=forward comment="defconf: accept ICMPv6" protocol=icmpv6
add action=accept chain=forward comment="defconf: accept HIP" protocol=139
add action=accept chain=forward comment="defconf: accept IKE" dst-port=500,4500 protocol=udp
add action=accept chain=forward comment="defconf: accept ipsec AH" protocol=ipsec-ah
add action=accept chain=forward comment="defconf: accept ipsec ESP" protocol=ipsec-esp
add action=accept chain=forward comment="defconf: accept all that matches ipsec policy" ipsec-policy=in,ipsec
add action=drop chain=forward comment="defconf: drop everything else not coming from LAN" in-interface-list=!LAN
/system clock
set time-zone-name=Europe/Zurich
/system identity
set name=MikroTik-cAP-ax
/system note
set show-at-login=no
/system package update
set channel=testing
/system routerboard mode-button
set enabled=yes on-event=dark-mode
/system script
add comment=defconf dont-require-permissions=no name=dark-mode owner=*sys policy=ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon source=\
    "\r\
    \n   :if ([system leds settings get all-leds-off] = \"never\") do={\r\
    \n     /system leds settings set all-leds-off=immediate \r\
    \n   } else={\r\
    \n     /system leds settings set all-leds-off=never \r\
    \n   }\r\
    \n "
/tool mac-server
set allowed-interface-list=LAN
/tool mac-server mac-winbox
set allowed-interface-list=LAN