My home network I’m also using as a bit of a homelab and have enjoyed using the MikroTik router RB5009UG+S+in I picked up based on this community’s recommendation.
I’m a little more knowledgable on networking than your average Joe, but I’m just a consumer - far less knowledgeable than most of you network experts here!
Here’s the background and issue:
I’ve got a Dual-WAN Failover w/ recursive routing setup that seems to be working correctly.
However, I’m not sure if a recent RouterOS update or me tinkering has seemed to mess up both my NTP Client from picking up the ntp.org servers (stuck in status waiting), and IPv6 seems to not be working correctly. (ping6 www.google.com reports no route to host)
I’d appreciate a config check and any advice you have on fixing and fine-tuning!
# 2025-03-08 15:53:09 by RouterOS 7.18.1
# software id = KT01-24H7
#
# model = RB5009UG+S+
# serial number = XXXXXXXXXX
/interface bridge
add admin-mac=XXXXXXXXXXXXXXXXX auto-mac=no comment=defconf name=bridge
/interface list
add comment=defconf name=WAN
add comment=defconf name=LAN
/ip kid-control
add fri=6h-21h30m mon=6h-21h30m name=Caleb sat=7h-21h30m sun=7h-21h30m thu=\
6h-21h30m tue=6h-21h30m wed=6h-21h30m
add fri=5h45m-23h mon=5h45m-22h30m name=Elyse sat=6h-23h sun=6h-22h30m thu=\
5h45m-22h30m tue=5h45m-22h30m wed=5h45m-22h30m
/ip pool
add name=dhcp_pool1 ranges=192.168.99.220-192.168.99.254
add name="Dahua Pool" ranges=192.168.1.2-192.168.1.254
/ip dhcp-server
add address-pool=dhcp_pool1 interface=bridge name=dhcp1
/ipv6 pool
add name=ipv6-xfinity prefix=::/60 prefix-length=64
add name=ipv6-hotspot prefix=2607:fb90::/64 prefix-length=64
/system logging action
set 3 remote=192.168.99.16
/interface bridge port
add bridge=bridge comment=defconf interface=ether3
add bridge=bridge comment=defconf interface=ether4
add bridge=bridge comment=defconf interface=ether5
add bridge=bridge comment=defconf interface=ether6
add bridge=bridge comment=defconf interface=ether7
add bridge=bridge comment=defconf interface=ether8
add bridge=bridge comment=defconf interface=sfp-sfpplus1
/ip firewall connection tracking
set udp-timeout=10s
/ip neighbor discovery-settings
set discover-interface-list=LAN
/ipv6 settings
set forward=no
/interface list member
add comment=defconf interface=bridge list=LAN
add comment="Primary WAN" interface=ether1 list=WAN
add comment="Failover WAN" interface=ether2 list=WAN
/interface ovpn-server server
add mac-address=XXXXXXXXXXXXXXXXXXX name=ovpn-server1
/ip address
add address=192.168.99.1/24 interface=bridge network=192.168.99.0
/ip dhcp-client
add add-default-route=no comment="Primary WAN - Xfinity" interface=ether1 \
use-peer-dns=no use-peer-ntp=no
add add-default-route=no comment="Hotspot Backup WAN" interface=ether2 \
use-peer-dns=no use-peer-ntp=no
/ip dhcp-server network
add address=192.168.99.0/24 dns-server=192.168.99.5,192.168.99.6 gateway=\
192.168.99.1 netmask=24
/ip dns
set allow-remote-requests=yes servers=192.168.99.5,192.168.99.6,0.0.0.0
/ip dns static
add address=192.168.88.1 comment=defconf name=router.lan type=A
/ip firewall filter
add action=jump chain=forward comment="jump to kid-control rules" \
jump-target=kid-control
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 ICMP" protocol=icmp
add action=accept chain=input comment=\
"defconf: accept to local loopback (for CAPsMAN)" dst-address=127.0.0.1
add action=drop chain=input comment="defconf: drop all not coming from LAN" \
in-interface-list=!LAN
add action=accept chain=forward comment="defconf: accept in ipsec policy" \
ipsec-policy=in,ipsec
add action=accept chain=forward comment="defconf: accept out ipsec policy" \
ipsec-policy=out,ipsec
add action=fasttrack-connection chain=forward comment="defconf: fasttrack" \
connection-state=established,related hw-offload=yes
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 all from WAN not DSTNATed" connection-nat-state=!dstnat \
connection-state=new in-interface-list=WAN
/ip firewall nat
add action=masquerade chain=srcnat comment="WAN1: masquerade" ipsec-policy=\
out,none out-interface=ether1
add action=masquerade chain=srcnat comment="WAN2: masquerade" out-interface=\
ether2
add action=dst-nat chain=dstnat comment="HyperBackup Vault" dst-port=\
6281,5007,5008 in-interface=ether1 protocol=tcp to-addresses=\
192.168.99.16 to-ports=5000-6281
add action=dst-nat chain=dstnat comment=FTP dst-port=21,5002,5003,55536-55899 \
in-interface=ether1 log=yes protocol=tcp to-addresses=192.168.99.17
/ip ipsec profile
set [ find default=yes ] dpd-interval=2m dpd-maximum-failures=5
/ip kid-control device
add mac-address=XXXXXXXXXXXXXXXXX name="Elyse iPhone 15" user=Elyse
add mac-address=XXXXXXXXXXXXXXXXX name="Elyse Chromebook" user=Elyse
add mac-address=XXXXXXXXXXXXXXXXXX name="Caleb Acer Chromebook" user=Caleb
add mac-address=XXXXXXXXXXXXXX name="Dell 530 Desktop" user=Elyse
add mac-address=XXXXXXXXXXXXXXXX name="Caleb's iPad" user=Caleb
add mac-address=XXXXXXXXXXXXXXXXXX name="Caleb new Dell Chromebook" user=Caleb
/ip route
add comment="Monitor External Host Via ISP-1" disabled=no distance=1 \
dst-address=208.67.222.123/32 gateway=76.XXX.XXX.X routing-table=main \
scope=10 suppress-hw-offload=no
add comment="Monitor External Host Via ISP-2" disabled=no distance=1 \
dst-address=208.67.220.123/32 gateway=192.168.1.1 routing-table=main \
scope=10 suppress-hw-offload=no
add check-gateway=ping comment="Default Route - Main" disabled=no distance=1 \
dst-address=0.0.0.0/0 gateway=208.67.222.123 routing-table=main \
suppress-hw-offload=no target-scope=11
add check-gateway=ping comment="Default Route - Backup" disabled=no distance=\
2 dst-address=0.0.0.0/0 gateway=208.67.220.123 routing-table=main \
suppress-hw-offload=no target-scope=11
/ipv6 address
add advertise=no from-pool=ipv6-dhcp-pool interface=bridge
add address=::1 from-pool=ipv6-dhcp-pool interface=bridge
/ipv6 dhcp-client
add add-default-route=yes comment=WAN1 interface=ether1 pool-name=\
ipv6-xfinity request=prefix use-peer-dns=no
add add-default-route=yes comment=WAN2 interface=ether2 pool-name=\
ipv6-hotspot request=prefix use-peer-dns=no
/ipv6 dhcp-server
add interface=bridge name=ipv6-dhcp-server prefix-pool=ipv6-dhcp
/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
/ipv6 firewall nat
add action=masquerade chain=srcnat out-interface=ether1
add action=masquerade chain=srcnat out-interface=ether2
/ipv6 nd
set [ find default=yes ] disabled=yes dns=\
fdaf:XXXX:XXXX:XXXX:XXXX:XXXX:XXXX:XXXX:XXXX \
hop-limit=64 interface=bridge ra-preference=low
/system clock
set time-zone-name=EST5EDT
/system identity
set name="MikroTik RB5009UG+S+in"
/system logging
set 2 topics=warning,!radvd
add action=remote topics=critical,warning,info,!radvd
/system note
set show-at-login=no
/system ntp client
set enabled=yes
/system ntp client servers
add address=0.us.pool.ntp.org
add address=1.us.pool.ntp.org
add address=2.us.pool.ntp.org
add address=3.us.pool.ntp.org
/tool mac-server
set allowed-interface-list=LAN
/tool mac-server mac-winbox
set allowed-interface-list=LAN
/tool sniffer
set filter-interface=ether1,ether4 streaming-enabled=yes streaming-server=\
192.168.99.150