Borked performance when using tailscale, even in local network

I am running a subnet router on my homelab. Using which I expect to connect to all my other services in my home lab.

I have an Opnsense firewall with vlans. Tailscale subnet router runs on x.x.20.123. Some servers are on the same VLAN x.x.20.0/24. Some are on other vlan, x.x.25.0/24. (Everything on Proxmox VMs)

I have advertised x.x.0.0/16 on my subnet router.

Now, info on my connection from my workstation (installed tailscale on this also) with vlan (mac), x.x.15.12 (local) & 100.x.x.x (tailscale) to one of my sever on x.x.20.145:

tailscale ping mediaone.lan
pong from tailscaleone (100.x.x.x ) via <Tailscale router local ip>:41641 in 1ms

tailscale status shows no info for connected mac, gives an tailscale ip
active for tailscale router

iperf3 between my worksation mac gets borked to 5-8 Mbps. (Gigabit without tailscale)

I can view files on my local network. But the connection is so poor that it’s not even able to generate thumbnails, or play a video file. And it drops a lot.

Please let me know how can I debug this? What could maybe be wrong?

Also, this might be reason behind my previous post: Reverse proxy behind subnet router