How to add a Static Route (persistent) in Sun Solaris

To add a Static Route in Sun Solaris operating system, you can use the route command. This will dynamically update the Kernel IP Routing table. However, when a server is restarted, these routes will be lost. To prevent this from happening, add a startup script S76static-routes with all the route commands for the static route that needs to persist. This will ensure that the route gets added at boot time.

To use the route command,


# route add [net|host] <Addr> netmask <Mask> [GatewayAddr|-interface ] <metric>


Add a network

# route add net netmask 1

same as

# route add 1

Add a host

# route add host netmask 1

same as

# route add 1

To route the traffic through an interface instead of an IP Gateway

# route add -interface hme0

To check that the roots are added to Kernel IP Routing table,

# netstat -rn

Routing Table: IPv4
Destination           Gateway           Flags  Ref   Use   Interface
——————– ——————– —– —– —— ———        U         1    273  hme0           U         1      0   hme0
default              UG        1    196

Static Routes at boot time

To make the routes available at boot time so the next time when the server reboots, the routes are still available. Add a startup script named as


and add the required route commands as above.

Change the permissions for the file so that the file is executable by root.

# chmod 744 /etc/rc2.d/S76static-routes

This should help.

15 thoughts on “How to add a Static Route (persistent) in Sun Solaris”

  1. We can also give the route entry in /etc/defaultrouter so that this is called after reboot, no need of any specific startup scripts.

  2. This is very useful stuff..Please let me know haw to add a swap file on solaris when it’s start up..

  3. Darned if I can understand Solaris route command. I have a server with 4 ethenet ports e1000g0-g1000g3.

    I connected the lan over gateway1 to port0.
    route add Works. I can ping servers on then vlan.

    I connected the lan over gateway2 to port1.
    route add Does not work. Tries to go over 144.

    I connected port 3 to a tape drive ( using port 3 ( works. no entry in table.

    I try adding port 4 ( to hub and server 192.168.1,2 to hub (non-managed).

    route add

    Does NOT work! It tries to connect over But I never told it to! This is not in the table.

    It is supposed to connect using, but it does not.

    What is going on here. Why doesn’t it do what I told it to?

  4. I think the reason it won’t work is because you are using port 4 and you only have 4 0-3 and you haven’t used 2. Try that.

Leave a Comment

Your email address will not be published.