Any network we are trying to reach is accessed via the default gateway only, if it is not implicitly overwritten by another static route definition. Let's have a look at a routing table on a Red Hat 7 system:
From the above we can see that any packets to reach a destination network IP 192.168.0.0/24 (meaning anything on the network 192.168.0.X with a subnet mask of 255.255.255.0) should travel via interface em1 with IP address 192.168.0.204, and any other destination network not implicitly defined should use default gateway 192.168.0.1.# ip route show default via 192.168.0.1 dev em1 proto static metric 100 192.168.0.0/24 dev em1 proto kernel scope link src 192.168.0.204 metric 100 192.168.1.0/24 dev em2 proto kernel scope link src 192.168.1.32
Sometimes you'll require a static route. Static routes are for traffic that must not, or should not, go through the default gateway. Routing is often handled by devices on the network dedicated to routing (although any device can be configured to perform routing). Therefore, it is often not necessary to configure static routes on RHEL servers or clients. Exceptions include traffic that must pass through an encrypted VPN tunnel, or traffic that should take a specific route for reasons of cost or security or bandwidth. The default gateway is for any and all traffic which is not destined for the local network and for which no preferred route is specified in the routing table. The default gateway is traditionally a dedicated network router.
To add a new static route means to define yet another destination network as well as specify via which IP address and interface the packet should travel through in order to reach its destination. Usually this comes in handy when you have a second interface on the system that can be used to reach other networks (other than the networks that can be reached through the default gateway). In the example above that's interface em2.
For example, let's add a static route to destination network 192.168.2.0/24 via the 192.168.1.32 IP address and em2 network interface.
There are 2 ways of accomplishing this: By either using the "ip route add" command, which will define the route, but it will be lost upon reboot. Or by creating a route configuration file in the /etc/sysconfig/network-scripts/ directory.
First, the "ip route add" command:
To add a static route to a network, in other words, representing a range of IP addresses, issue this command as root:
Where 192.168.2.0 is the IP address of the destination network in dotted decimal notation and /24 is the network prefix, which is equal to a subnet mask of 255.255.255.0. The network prefix is the number of enabled bits in the subnet mask. If you now rerun the "ip route show" command, you'll see that the route has been added.# ip route add 192.168.2.0/24 via 192.168.1.32 dev em2
192.168.2.0/24 via 192.168.1.32 dev em2 proto static metric 1If you ever need to delete the route, you can use the same command, but just replace "add" with "delete".
Static route configuration can be stored per-interface in a /etc/syconfig/network-scripts/route-interface file. For example, fstatic routes for the em2 interface would be stored in the /etc/sysconfig/network-scripts/route-em2 file, for example:
Once done, restart your network service (or restart the server):# cat /etc/sysconfig/network-scripts/route-em2 192.168.2.0/24 via 192.168.1.32 dev em2
# systemctl restart network
If you found this useful, here's more on the same topic(s) in our blog:
- Setting up a bonded network interface on RHEL 7
- Installing VNC server
- AIX: Delete multiple default gateways
- Install GNOME GUI on RHEL 7 Linux Server
- RHEL: Recovering a corrupt file system in emergency mode
UNIX Health Check delivers software to scan Linux and AIX systems for potential issues. Run our software on your system, and receive a report in just a few minutes. UNIX Health Check is an automated check list. It will report on perfomance, capacity, stability and security issues. It will alert on configurations that can be improved per best practices, or items that should be improved per audit guidelines. A report will be generated in the format you wish, and the report includes the issues discovered and information on how to solve the issues as well.
Interested in learning more?
Interested in learning more?