zvi
zvi

Reputation: 4746

Windows routes - add many lines to routes table at once

I have to add many lines (rules) to the routes table in Windows. The regular way is to add it with:

route add 10.0.0.0 mask 240.0.0.0 192.168.0.1 

However, if I want to add many lines at once (belive me I have a good reason to do it) - how can I do it quickly (running "route add" is slow)?

I tried running it in some threads and it still slow.

Upvotes: 0

Views: 873

Answers (1)

zvi
zvi

Reputation: 4746

Option 1:

You can use this MS tool: netsh

Netsh is a command-line scripting utility that allows you to, either locally or remotely, display or modify the network configuration of a computer that is currently running.

Build a file with all the lines you want to add, like this:

[For more information on "add route" command and its parameters, see here].

# ----------------------------------
# IPv4 Configuration
# ---------------------------------- 
pushd interface ipv4

add route prefix=10.0.0.0/4 interface="Ethernet" nexthop=192.168.0.1 metric=1 publish=Yes 
add route prefix=240.0.0.0/4 interface="Ethernet" nexthop=192.168.0.1 metric=1 publish=Yes     

[and so on...]

popd
# End of IPv4 configuration

Save it in a *.dat file, and run this command:

netsh exec file.dat

Option 2:

[As Harry Johnston commented]: You can use CreateIpForwardEntry function to add route (example code in the link).

The CreateIpForwardEntry function creates a route in the local computer's IPv4 routing table.

Upvotes: 3

Related Questions