route traffic from 2 servers behind nat to the public IP

I want some help with routing traffic from 2 servers (one is CentOS with Virtualmin and the other is Windows 2008 R2) from behind my sbg6580 wireless router/modem to the public IP.

I do not want to use 3rd party dns services.

I do not have fixed/permanent ip.

I have a cisco switch SLM2024 (i do not know it’s in-depth use or it’s many features).

greatly appreciate any help.

BTW, I have already routed the traffic from Linux box to the public IP through DMZ of the router.

I do not know how to route traffic from other internal IPs to the public IP.

I am not using the switch at this time.

What do you mean with “route traffic from your servers to the public IP” exactly? Do you mean incoming traffic from the Internet to your router?

I mean, when I access a domain name, for example, http://c54.my.bislinks.com, It should be accessible from outside my home which is served by a server hosted on the internal IP 192.168.0.151. (In fact, this IP is actually assigned to a cloudmin server on 192.168.0.12.)

right now, all domains on IP 192.168.0.12 is accessible from outside my home, by the respective sub domain name served by CentOS server on that IP, i.e, my.bislinks.com, my.bible77.com, my.preachword.com, etc which points to my router’s external IP.

I want to be able to access other sub domains on IP 192.168.0.151 in the same way.

You need to configure “port forwarding” on your router, telling it to forward traffic to your external IP, e.g. port 80, to your Virtualmin machine in the LAN.

Essentially you did that when you configured one machine as DMZ… That basically tells the router to forward ALL ports to that machine. To use a second machine, you need to turn off DMZ again and create individual port forwardings.

BUT: Each external port can be forwarded to only ONE machine in your LAN. It’s not possible to operate two hosting machines, Virtualmin or otherwise, on the same official external ports. Your second machine would have to use different external ports. While that works for WWW (users will have to add port number to the domain, like “example.com:81”), it’s not possible for email, since mail servers always try to deliver mail to port 25.

Thanks.