Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Are virtual servers and port forwarding the same thing?

I always thought so but my Dlink DIR-655 has both.

The only thing I can see with port forwarding is the ability to do ranges whereas virtual servers allow you to forward single external port to a different numbered port on an internal machine.

Are they the only differences?

share|improve this question
up vote 4 down vote accepted

Some routers provide a means to appoint one computer on your LAN to receive all incoming connections initiated from the outside. This is referred to using a number of terms and phrases such as "True DMZ†" or just "DMZ - although I don't recall "Virtual server" being one of them.

The term "virtual server" usually means something completely unrelated - the means of hosting one or more guest operating systems concurrently on the same single computer - usually with a host operating system but somethimes with a bare metal hypervisor.

Port forwarding allows you to direct incoming traffic to many different servers on your LAN, depending on the connection's destination port number. For example port 30122 might be forwarded to port 22 on server A, port 30222 might be forwarded to port 22 on server B.

It seems to me the manual for the D-Link DIR-655 uses the term "virtual server" for port-forwarding where the internal and external port numbers are the same. It uses "port forwarding" for port-forwarding where the external and internal port-numbers differ. So far as I know, this use of the term "virtual server" for port-forwarding isn't used generally and is likely to cause confusion with virtual servers in the context of virtualisation.

† Personally I belive that to qualify as a DMZ, the servers in the DMZ should be prevented from making connections to computers in the LAN outside the DMZ. Most low-end routers don't provide this level of protection.

share|improve this answer
That's usually called the "DMZ". – CarlF Dec 28 '10 at 20:21
@CarlF: You caught me part way through editing my answer to address that point :-) – RedGrittyBrick Dec 28 '10 at 20:26
I don't think DMZ and 'virtual server' have been muddled - D-Link DO use the term 'virtual server' for port forwarding. – Linker3000 Dec 28 '10 at 21:29
@Linker3000: Thanks, answer updated. – RedGrittyBrick Dec 28 '10 at 22:12
Billion also use the term "Virtual Server" for port forwarding. – quickly_now Dec 28 '10 at 23:04

Some routers - eg: D-Link's - use the term 'virtual server' for port forwarding where you can divert specific WAN ports to local machines with translation of port numbers.

Example: WAN (public IP) Port 9422 -> Local machine port 22

In this context, the term has nothing to do with machine virtualisation and 'virtual server' and 'port forwarding' do often mean the same thing.

If there is a differentiation between the two terms, it's usually that 'port forwarding' means that the public port and the local machine port to which it is directed have to use the same port number.

Example: WAN (public IP) Port 22 -> Local machine port 22

share|improve this answer

These description are not jiving with what I am experiencing.

On dlink virtual server allowed me to direct incoming remote desktop request to specific machines on my network. For example I have machine A, B, and C. They have LAN ip addresses of, 11, and 12 respectively. With dlink virtual machine I can set the external port to 52010 and redirect it to LAN port 3389 on machine A, and external port 52011 to 3389 on machine B, and 52012 to port 3389 on machine C.

Where port 3389 is the default port for remote desktop protocol (RDP).

I just purchased a linksys and port forwarding does not work this way. If I try to set the external port to 52010 and forward it to 3389 of machine A. I CANNOT get an RDP connection. I verified that port 52010 is open. The only way I have been able to get linksys port forwarding to work at all with RDP is I have to have a 1 to 1 relationship between the external and internal ports. That is to say if I forward anything comming in on external port 3389 to port 3389 of machine A then I can get a connection.

As a result with the linksys I can see one and only one machine over RDP using the default port. To get to my other machines I had to go into the registry and hack their RDP ports to be 3390, and 3391. This is a very sucky solution because I now have two machines with non-standard RDP ports.

I do not care for linksys's solution of hacking my registry so I will return the linksys and get another dlink that supports virtual server.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.