You need two sets of DNS records on two different servers. External records (hosted on an external DNS server) to point to your public IP and a local (internal to your LAN) DNS server with records pointing to the LAN IP of your server, it's known as
Split DNS (or Split Horizon DNS) and you'll need to set-up a local DNS server.