More explanation needed.
I have a Windows Server 2008 R2 server that controls the DNS for my domain name. I have a network setup with one external IP and a few servers behind a router.
What I want to do is have it so that if I do to www.mydomain.com, the DNS server will realize that I have chosen to go to the subdomain WWW for which the httpd is hosted on UbuntuBox1. I then go to secret.mydomain.com and the DNS server notices that I want to go to the httpd on UbuntuBox2. Using straight DNS it would make it so that if I route these subdomains to the internal IPs, external clients will just get a dns query telling them to go to their own local network (considering that is the nature of dns). What I want is for it to realize which server I want to go to based on the dns query, and then route the traffic internally in my network (like a really smart router possibly).
Is this possible, and if so, how do I go about doing it?
PS Please don't just say to use web related trick, I need an all purposes/all port kind of solution that if I were to host two minecraft servers (just an example) on the same IP then I would be able to have them on the default port and redirect only using subdomains (mc1.mydomain.com, mc2.mydomain.com).