Specify route to an interface in Windows cmd

I have a computer with 2 network interfaces. One interface is connected to LAN network with IP 192.168.0.254, and the other is connected to a recorder server (192.168.0.233). 192.168.0.10 is the gateway for the LAN. When I try to ping to 192.168.0.6, Windows first tries a route to the interface without network (192.168.0.233); I want to add a route to 192.168.0.6/255.255.255.0 specifing I want to use the interface 192.168.0.254 when I try to ping 192.168.0.6. I have tried:

route add 192.168.0.6 mask 255.255.255.0 192.168.0.10 if 13

Here is a print of my interfaces:

screenshot 1

When I add the static route to the table, it doesn't show the specified interface, only associate it to the gateway.

screenshot 2

Is it correct?


Solution 1:

To specify the interface in windows route command, you are supposed to use 'IF'... Uppercase letters, not lowercase.

Also, where you are specifying you want to add a route to a single IP 192.168.0.6, you need to use a subnet mask of 255.255.255.255.

The subnet mask of 255.255.255.255 specifies a single host. A subnet mask of 255.255.255.0 specifies 192.168.0.X where X=1-254

So, your command should be:

route add 192.168.0.6 mask 255.255.255.255 192.168.0.10 IF 13

Looking again at your question, the best solution for you may be to use your LAN side like a normal 192.168.0.X network... But for the recorder server, I would recommend specifying a different network: Recorder server IP of 192.168.10.233, and then your second network interface should be 192.168.10.2. This will eliminate the need to manually configure routes, and may simplify everything for you.

Solution 2:

This should work: 

route add 192.168.0.6 mask 255.255.255.0 192.168.0.254

If you want persistence:

route -p add 192.168.0.6 mask 255.255.255.0 192.168.0.254

Not sure what the "if" was for, but try this for cost:

route add 192.168.0.6 mask 255.255.255.0 192.168.0.254 metric 13