Clients ask some name server, OPNsense redirects the packet to your designated resolver. If that system is also connected to LAN, it will answer the client directly.The client will ignore the answer because it's from a server it did not ask in the first place.So you must NAT your client addresses somehow, so the replies go back to OPNsense which will then answer the client with a correct source address.