So you want people on the internet to talk to your dns server, your public IP is one of the registered IPs for your nameservers for you domain.
Well just port forward 53 (dns) both udp and tcp to the private IP address of your dns server.
Just like you forwarded traffic for your web server or your mail server. BTW – if your on your own network, and you put in our webserver fqdn - and you get redirect back into your webserver. That does not actually mean outside people can get to it. That is nat reflection.. You really should validate from the outside to make sure port forwards are working.
If you PM me your domain and IP address I be happy to validate any port forwards for you - if you don't want to make them public.
BTW -- hosting your own dns not great idea with all the dns attacks around lately.. There are plenty of dns services out there that do dns for their bread and butter, etc. No real reason to host your own - and where is your secondary name server?