Reference articles on history, science, culture and more
Encyclopedia

Route (command)

Computer operating system command

Image credit is listed at the end of this article.

In computing, route is a command used to view and manipulate the IP routing table in Unix-like and Microsoft Windows operating systems and also in IBM OS/2 and ReactOS. Manual manipulation of the routing table is characteristic of static routing.

01Implementations

Unix and Unix-like

The route command originated in 4.2BSD. It is not part of any UNIX standard, but the BSD interface is widely implemented.

Linux contains a version of the route originally written by Fred N. van Kempen, later merged with netstat's codebase (another command originating in 4.2BSD). It implements an extended syntax compared to the BSD version. In Linux distributions based on 2.2.x Linux kernels, the ifconfig and route commands are operated together to connect a computer to a network, and to define routes between computer networks. Distributions based on later kernels have deprecated ifconfig and route, replacing them with iproute2.

On macOS, the route utility is present but largely nonfunctional. Displaying the routing table is instead performed via netstat -nr.

Syntax

The BSD syntax is:

route [-dnqtv] {add|del|flush|get|monitor} [[modifiers] args]

The Linux syntax is:

route [-nNvee] [-FC] [<AF>] # List kernel routing tables route [-v] [-FC] {add|del|flush} ... # Modify routing table for AF. route {-h|--help} [<AF>] # Detailed usage syntax for specified AF. route {-V|--version} # Display version/author and exit.

In other words, the basic route add and route del commands are portable.

Example

user@linux:~$ route -n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 192.168.101.0 192.168.102.102 255.255.255.0 UG 0 0 0 eth0 192.168.102.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0 192.168.103.0 192.168.102.102 255.255.255.0 UG 0 0 0 eth0 192.168.12.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0 0.0.0.0 192.168.12.1 0.0.0.0 UG 0 0 0 eth0

Microsoft Windows

The command is only available if the TCP/IP protocol is installed as a component in the properties of a network adapter.

Syntax

The command-syntax is:

route [-f] [-p] [-4|-6] [Command [Destination] [mask Netmask] [Gateway] [[metric Metric]] [[if Interface]]

Parameters

  • -f: Clears the routing table
  • -p: The route is added to the Windows Registry and is used to initialize the IP routing table whenever the TCP/IP protocol is started (only when used with the add command)
  • Command: The command to run (add, change, delete, print)
  • -4: Force using IPv4
  • -6: Force using IPv6
  • Destination: Network destination of the route
  • mask Netmask: The netmask (subnet mask) associated with the network destination
  • Gateway: The forwarding or next hop IP address over which the set of addresses defined by the network destination and subnet mask are reachable
  • metric Metric: Integer cost metric (ranging from 1 to 9999) for the route
  • if Interface: The index of the interface over which the destination is reachable
  • /?: Command help

The -p parameter is only supported on Windows NT 4.0, Windows 2000, Windows Millennium Edition, and Windows XP. It is not supported on Windows 95 or Windows 98.

IBM OS/2

Syntax

The command-syntax is:

route [-nqv] [COMMAND] [[MODIFIERS] args]

Parameters

  • -n: Bypasses translating IP addresses to symbolic host names
  • -q: Suppresses all output
  • -v: Verbose
  • COMMAND: The command to run (add, delete, change, get, monitor, flush)
  • -net: <dest> is a network address
  • -host: <dest> is host name or address (default)
  • -netmask: the mask of the route
  • <dest>: IP address or host name of the destination
  • <gateway>: IP address or host name of the next-hop router

ReactOS

ReactOS is an open-source Windows clone. The route implementation will eventually cover all options supported by Windows, but the current (as of 2025) version does not. It instead implements a subset of the options, a "poor man's route":

Syntax

Print the route table:

route print

Add a route:

route add <target> [mask <mask>] <gw> [metric <m>]

Delete a route:

route delete <target> <gw>
Watch videos about Route (command)Explainers and documentaries on YouTube (opens in a new tab)

Sources and credits

This article is adapted from the Wikipedia article Route (command), written by its contributors and licensed under CC BY-SA 4.0. Fathomly has changed the layout, removed citation markers, navigation and maintenance notices, and adjusted punctuation. This adapted version is shared under the same license. For references, see the original article.

Images, from Wikimedia Commons:

Fathomly is not affiliated with or endorsed by the Wikimedia Foundation. Spotted a problem? Tell us.