Server Fault is a question and answer site for system and network administrators. Join them; it only takes a minute:

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

I can route by IP range by the route command. But is there any domain based route solution?

share|improve this question
Can you please clarify what you mean by domain based route? the term "domain" has been overloaded in the network terminology space. – pcapademic Dec 27 '09 at 6:08
Furthermore it would be useful to give a use case example of what you wish to achieve. – Dan Carley Dec 27 '09 at 13:30
up vote 7 down vote accepted

Routing is a layer 3 technique that gets your packets where they are supposed to go. Layer 3 information is almost only source IP, dest IP and fragmentation information.

Extra information such as domain name is way beyond layer 3, it's more layer 7 (the application layer). Therefore such information is not meant to be used for routing.

There are specific techniques that use information above layer 3, such as Policy Routing which uses layer 4 information (TCP/UDP ports) to route specific packets. That is as high as it goes as far as I know.

If you have control over that domain name, you could specify as specific IP that will then be routed by your routers in a specific way. If you can't do that, I'm afraid it's not going to be possible as far as I know.

share|improve this answer

You use the SRV reccord on the DNS server.

For example:

SUBDOMAIN TTL DATA (priority first) : 3600 : 10 10 1337

This will map all incoming traffic on domain to port 1337 on

As easy as that.

share|improve this answer
This applies to some very specific use cases, but does not pertain to the question, I believe. – Felix Frank Jul 16 '14 at 14:24

There is no domain based route solution. But you can use this workaround script. It gets the IP of your domain and adds a route. You can add it to the task scheduler to run on windows startup or at any specific intervals and it'll keep adding the route. It doesn't use the -p option so the route added is not permanent.

:: Get IP of Domain name
setlocal EnableDelayedExpansion


for /f "tokens=1,2 delims=[]" %%a IN ('ping -n 1 !myServer!') DO (
 if "%%b" NEQ "" set myServerIP=%%b
echo ip is %myServerIP%

route add %myServerIP% mask <gateway ip>

Hope this helps!

share|improve this answer

you can use apache or any other web server. virtual domains or reverse proxy does just that.

share|improve this answer
Virtualhosts / reverse proxying are not related to routing at all – Dennis Kaarsemaker Apr 13 '13 at 17:30
I understand that, it's the strict meaning of "routing". But when you use reverse proxying, you are routing domain requests. It's a solution. Not a layer 3 solution, but still a solution. And the question didn't mention layer 3. Anyway, it's nice to have this explanation in this thread. – daigorocub Apr 16 '13 at 10:15

You can use host records or DNS to associate a domain with an IP address. The use your existing route method.

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.