I need to run the command
route add -p 22.214.171.124 mask 255.255.255.0 208.00.000.000
on a linux server. what is the unix equivalent?
Super User is a question and answer site for computer enthusiasts and power users. It only takes a minute to sign up.Sign up to join this community
They are very similar.
To add a route for a network – in this example, 192.168.20.0 mask 255.255.255.0
sudo route add -net 192.168.20.0/24 gw 10.0.0.1
sudo route add -net 192.168.20.0 netmask 255.255.255.0 gw 10.0.0.1
To add a route for a host
sudo route add -host 192.168.20.20 gw 10.0.0.1
If you run
route add with no options it will give you the list of options that you can use. e.g., metrics, interface, and some others.
Also the man page will help.
One way to make the route be persistent is to add it every time the machine is started. This has same result as
-p flag on Windows.
This can be done using
@reboot /sbin/route add -net 126.96.36.199 netmask 255.255.255.0 gw 188.8.131.52
dev eth0 can be used at the end of command if there is need to specify port to be used.
This works at least on Ubuntu 14.04 and probably on most modern implimentations of Cron.
To add the route every time the interface is brought up, and remove it every time it goes down, a suitable command can be added to the interface's stanza in
/etc/network/interfaces (for Debian). Here's one of mine (this makes local broadcasts go to the local network rather than to the ISP on my NAT gateway):
iface eth1 inet static address 192.168.0.2 netmask 255.255.255.0 pre-up iptables-restore </etc/iptables.rules up route add 255.255.255.255 eth1 down route del 255.255.255.255
This can be easily adapted to your OS and needs.