Skip to main content

Command Palette

Search for a command to run...

How to Add Gateway IP Address in Linux

Published
6 min readView as Markdown

Adding a gateway IP address in Linux is a common task for anyone managing networks or servers. Whether you’re setting up a new server or troubleshooting network issues, knowing how to configure the gateway correctly is essential. Your gateway IP acts as the path your Linux system uses to communicate outside its local network.

In this article, I’ll guide you through the process of adding a gateway IP address in Linux. We’ll cover different methods, from using command-line tools to editing configuration files. By the end, you’ll feel confident managing your Linux network settings with ease.

What Is a Gateway IP Address in Linux?

A gateway IP address is the router or device that connects your Linux system to other networks, including the internet. It acts as a forwarding point for traffic destined outside your local subnet.

  • It routes data packets from your device to external networks.
  • Without a proper gateway, your system cannot access the internet or other remote networks.
  • The gateway IP is usually the IP address of your router or firewall.

In Linux, the gateway is part of the network configuration. You can add or change it temporarily or permanently depending on your needs.

How to Check Your Current Gateway IP Address

Before adding or changing a gateway, it’s useful to know what your current gateway is. You can check this easily using terminal commands.

Open your terminal and type:

ip route show

This command displays the routing table. Look for a line starting with default via. For example:

default via 192.168.1.1 dev eth0

Here, 192.168.1.1 is the current gateway IP address, and eth0 is the network interface.

Alternatively, you can use:

route -n

This shows a numeric routing table. The gateway IP will be under the "Gateway" column for the default route (destination 0.0.0.0).

Adding a Gateway IP Address Temporarily Using Command Line

If you want to add a gateway IP address temporarily (until the next reboot), you can use the ip or route commands.

Using the ip Command

The ip command is the modern and preferred way to manage network settings.

To add a default gateway, run:

sudo ip route add default via <gateway-ip> dev <interface>

Replace <gateway-ip> with your gateway IP address and <interface> with your network interface name (like eth0 or ens33).

Example:

sudo ip route add default via 192.168.1.1 dev eth0

Using the route Command

The older route command can also add a gateway:

sudo route add default gw <gateway-ip> <interface>

Example:

sudo route add default gw 192.168.1.1 eth0

Important Notes

  • These changes are temporary and will reset after reboot.
  • Use ip route show to verify the new gateway.
  • To delete a gateway, use ip route del default or route del default.

Adding a Gateway IP Address Permanently

To keep the gateway IP address after reboot, you need to edit network configuration files. The method depends on your Linux distribution.

For Debian, Ubuntu, and Derivatives

Edit the /etc/network/interfaces file or use Netplan on newer versions.

Using /etc/network/interfaces

Open the file with a text editor:

sudo nano /etc/network/interfaces

Find your interface configuration and add the gateway line:

auto eth0
iface eth0 inet static
    address 192.168.1.100
    netmask 255.255.255.0
    gateway 192.168.1.1

Save and exit. Then restart networking:

sudo systemctl restart networking

Using Netplan (Ubuntu 18.04+)

Netplan uses YAML files in /etc/netplan/.

Open your config file, e.g., /etc/netplan/01-netcfg.yaml:

network:
  version: 2
  renderer: networkd
  ethernets:
    eth0:
      dhcp4: no
      addresses: [192.168.1.100/24]
      gateway4: 192.168.1.1
      nameservers:
        addresses: [8.8.8.8,8.8.4.4]

Apply changes with:

sudo netplan apply

For Red Hat, CentOS, Fedora

Network settings are managed via files in /etc/sysconfig/network-scripts/.

Edit the interface file, e.g., /etc/sysconfig/network-scripts/ifcfg-eth0:

sudo nano /etc/sysconfig/network-scripts/ifcfg-eth0

Add or modify the gateway line:

GATEWAY=192.168.1.1

Save and restart the network service:

sudo systemctl restart network

Or reboot the system to apply changes.

Using NetworkManager (GUI and CLI)

Many modern Linux distros use NetworkManager. You can add a gateway via:

  • GUI: Network settings > Wired or Wi-Fi > IPv4 settings > Add gateway.
  • CLI: Use nmcli commands.

Example:

sudo nmcli connection modify eth0 ipv4.gateway 192.168.1.1
sudo nmcli connection up eth0

Troubleshooting Gateway Issues

Sometimes, adding a gateway doesn’t work as expected. Here are common problems and fixes:

  • Incorrect Interface Name: Use ip link to check your interface name.
  • Conflicting Routes: Remove old default routes with ip route del default.
  • Firewall Blocking Traffic: Check firewall rules with sudo iptables -L.
  • Network Service Not Restarted: Always restart networking or reboot after changes.
  • DHCP Overwrites Settings: Disable DHCP if using static IP and gateway.

Why Is Adding a Gateway Important?

Your Linux system needs a gateway to communicate beyond its local network. Without it:

  • You cannot access the internet.
  • Remote servers and services are unreachable.
  • Network troubleshooting becomes difficult.

Adding the correct gateway ensures smooth network operations and connectivity.

Summary Table: Commands to Add Gateway IP in Linux

MethodCommand ExampleNotes
Temporary (ip command)sudo ip route add default via 192.168.1.1 dev eth0Modern, preferred method
Temporary (route command)sudo route add default gw 192.168.1.1 eth0Older method, still works
Permanent (Debian/Ubuntu)Edit /etc/network/interfaces or Netplan YAML fileRequires restart or apply
Permanent (RHEL/CentOS)Edit /etc/sysconfig/network-scripts/ifcfg-eth0Restart network service needed
NetworkManager CLIsudo nmcli connection modify eth0 ipv4.gateway 192.168.1.1For systems using NetworkManager

Conclusion

Adding a gateway IP address in Linux is straightforward once you know the right commands and configuration files. You can add a gateway temporarily using command-line tools or permanently by editing network settings based on your Linux distribution.

Remember to verify your network interface name and restart networking services after changes. With this knowledge, you’ll be able to manage your Linux network settings confidently and keep your system connected to the wider internet.


FAQs

How do I find my network interface name in Linux?

You can find your interface name by running ip link show or ifconfig -a. Look for names like eth0, ens33, or wlan0 depending on your hardware.

Can I add multiple gateways in Linux?

Yes, but typically only one default gateway is used. You can add static routes for specific networks if you need multiple paths.

Will adding a gateway affect my current internet connection?

If done correctly, adding or changing the gateway should improve connectivity. Incorrect settings might disrupt your connection temporarily.

How do I remove a gateway IP address in Linux?

Use sudo ip route del default to remove the default gateway temporarily. For permanent removal, edit the network config files and restart networking.

Is the route command deprecated in Linux?

The route command is older and less preferred. The ip command is recommended for modern Linux systems as it offers more features and better control.

More from this blog

L

LinuxBloke | Linux Tips, Tricks & Troubleshooting

672 posts