Will ich eine öffentlich erreichbare Domäne haben, brauche ich auch eine öffentliche Domäne. Eine domain.local kennt keiner im Internet. Deine lokale DNS Zone domain.local funktioniert nur lokal.
Damit Hostnamen DEINER Domäne vom Internet aus erreichbar sein können, muss bei öffentlichen DNS Servern der DNS Server bekannt sein, der die Zone fuer deine DNS-Zone hostet. Dein Domänen-Namen muss registriert sein.
Ein öffentlicher DNS Server delegiert also an deinen DNS Server Anfragen, die Dein DNS Server auflösen kann.
Prinzipiell sind private Server mit privaten IPs über Portforwarding erreichbar. Da wird beim NAT / PAT einfach eingestellt, alle Anfragen an Port 80 sollen zb. an Web-Server 192.168.0.10 geleitet werden.
So können auch Anfragen an Port 53 an den privaten DNS Server geleitet werden. Wozu soll das aber gut sein, wenn dein privater DNS Server die zone domain.local hostet? Diese Domäne hat keine Gültigkeit im Internet.
Mailserver schicken sich die Mails per SMTP (Port 25)zu.
Schicke ich als User zb. dir eine Mail zu, an die mailadresse admin@deinedomäne.de dann wird erstmal der DNS Server gesucht, der die Zone für deine öffentliche Zone hostet. Dieser DNS server braucht auch einen MX Eintrag, sonst kann die Mail nicht zu deinem Mailserver gelangen. Der MX Record zeigt die IP des Mailservers. Ohne öffentliche Domäne kannst du nur bei einem Provider per Pop3 oder IMAP deine Mails abholen und dann von deinem (privaten) Mailserver an die Clients verteilen, sie aber nicht direkt per SMTP empfangen.
Ansonsten schau mal hier nach
www.no-ip.com
Falls ich daneben liege, lasse ich mich gerne eines besseren belehren.