I use a CRS309-1G-8S+ to connect to my ISP via a gpon sfp. The ISP is on vlan100 and the gpon also has a management/status outside the vlan. My setup is to put my home network on 192.168.1.0/24, the gpon management on 192.168.2.0/24 and NAT the 2:
/interface vlan
add interface=bridge name=vlan-main vlan-id=10
add interface=sfp-sfpplus3 name=vlan100 vlan-id=100
/ip address
add address=192.168.1.1/24 interface=vlan-main network=192.168.1.0
add address=192.168.2.2/24 interface=sfp-sfpplus3 network=192.168.2.0
/ip firewall nat
add action=src-nat chain=srcnat dst-address=192.168.2.0/24 src-address=\
192.168.1.0/24 to-addresses=192.168.2.2
and sfp-sfplus3 is not on the bridge.
This works fine until I set l3-hw-offloading=yes in the switch, at which point the management interface drops away. I guess the hw is sending packets from 192.168.1.0/24 to 192.168.2.0/24 directly.
I have considered using the hw offloading for only fastrack connections, but the internet connection is so good as is that I didn't want to change it.
I tried adding sfp-sfpplus3 to the bridge, setting the port to accept-all with a pvid of 10, moving the vlan100 to the bridge and seting sfp-sfplus3 as tagged for 100 and untagged for 10. Unfortunately sfp-sfpplus3 would not show up in current-untagged for 10, so the sfp management interface would not be reachable. This would probably not been the best for security.
The sfp nat side is super simple, so I cannot set a default route there.
One thing that is close to working is seting the network on the sfp to 192.168.0.0/16 and deleting the nat. With that I can ping 192.168.2.1 from the router, but not from somewhere else in the network. Any suggestions on how to debug why ip forwarding is not working?