ip(8) — Linux manual page


IP(8)                               Linux                              IP(8)

NAME         top

       ip  - show / manipulate routing, network devices, interfaces and tun‐

SYNOPSIS         top

       ip [ OPTIONS ] OBJECT { COMMAND | help }

       ip [ -force ] -batch filename

       OBJECT := { link | address | addrlabel | route | rule | neigh |
               ntable | tunnel | tuntap | maddress | mroute | mrule |
               monitor | xfrm | netns | l2tp | tcp_metrics | token | macsec
               | vrf | mptcp }

       OPTIONS := { -V[ersion] | -h[uman-readable] | -s[tatistics] |
               -d[etails] | -r[esolve] | -iec | -f[amily] { inet | inet6 |
               link } | -4 | -6 | -I | -D | -B | -0 | -l[oops] { maximum-
               addr-flush-attempts } | -o[neline] | -rc[vbuf] [size] |
               -t[imestamp] | -ts[hort] | -n[etns] name | -N[umeric] |
               -a[ll] | -c[olor] | -br[ief] | -j[son] | -p[retty] }

OPTIONS         top

       -V, -Version
              Print the version of the ip utility and exit.

       -h, -human, -human-readable
              output statistics with human readable values followed by

       -b, -batch <FILENAME>
              Read commands from provided file or standard input and invoke
              them.  First failure will cause termination of ip.

       -force Don't terminate ip on errors in batch mode.  If there were any
              errors during execution of the commands, the application
              return code will be non zero.

       -s, -stats, -statistics
              Output more information. If the option appears twice or more,
              the amount of information increases.  As a rule, the
              information is statistics or some time values.

       -d, -details
              Output more detailed information.

       -l, -loops <COUNT>
              Specify maximum number of loops the 'ip address flush' logic
              will attempt before giving up. The default is 10.  Zero (0)
              means loop until all addresses are removed.

       -f, -family <FAMILY>
              Specifies the protocol family to use. The protocol family
              identifier can be one of inet, inet6, bridge, mpls or link.
              If this option is not present, the protocol family is guessed
              from other arguments. If the rest of the command line does not
              give enough information to guess the family, ip falls back to
              the default one, usually inet or any.  link is a special
              family identifier meaning that no networking protocol is

       -4     shortcut for -family inet.

       -6     shortcut for -family inet6.

       -B     shortcut for -family bridge.

       -M     shortcut for -family mpls.

       -0     shortcut for -family link.

       -o, -oneline
              output each record on a single line, replacing line feeds with
              the '\' character. This is convenient when you want to count
              records with wc(1) or to grep(1) the output.

       -r, -resolve
              use the system's name resolver to print DNS names instead of
              host addresses.

       -n, -netns <NETNS>
              switches ip to the specified network namespace NETNS.
              Actually it just simplifies executing of:

              ip netns exec NETNS ip [ OPTIONS ] OBJECT { COMMAND | help }


              ip -n[etns] NETNS [ OPTIONS ] OBJECT { COMMAND | help }

       -N, -Numeric
              Print the number of protocol, scope, dsfield, etc directly
              instead of converting it to human readable name.

       -a, -all
              executes specified command over all objects, it depends if
              command supports this option.

              Configure color output. If parameter is omitted or always,
              color output is enabled regardless of stdout state. If
              parameter is auto, stdout is checked to be a terminal before
              enabling color output. If parameter is never, color output is
              disabled. If specified multiple times, the last one takes
              precedence. This flag is ignored if -json is also given.

              Used color palette can be influenced by COLORFGBG environment
              variable (see ENVIRONMENT).

       -t, -timestamp
              display current time when using monitor option.

       -ts, -tshort
              Like -timestamp, but use shorter format.

       -rc, -rcvbuf<SIZE>
              Set the netlink socket receive buffer size, defaults to 1MB.

       -iec   print human readable rates in IEC units (e.g. 1Ki = 1024).

       -br, -brief
              Print only basic information in a tabular format for better
              readability. This option is currently only supported by ip
              addr show and ip link show commands.

       -j, -json
              Output results in JavaScript Object Notation (JSON).

       -p, -pretty
              The default JSON format is compact and more efficient to parse
              but hard for most users to read.  This flag adds indentation
              for readability.

IP - COMMAND SYNTAX         top

              - protocol (IP or IPv6) address on a device.

              - label configuration for protocol address selection.

       l2tp   - tunnel ethernet over IP (L2TPv3).

       link   - network device.

              - multicast address.

              - watch for netlink messages.

       mptcp  - manage MPTCP path manager.

       mroute - multicast routing cache entry.

       mrule  - rule in multicast routing policy database.

              - manage ARP or NDISC cache entries.

       netns  - manage network namespaces.

       ntable - manage the neighbor cache's operation.

       route  - routing table entry.

       rule   - rule in routing policy database.

              - manage TCP Metrics

       token  - manage tokenized interface identifiers.

       tunnel - tunnel over IP.

       tuntap - manage TUN/TAP devices.

       vrf    - manage virtual routing and forwarding devices.

       xfrm   - manage IPSec policies.

       The names of all objects may be written in full or abbreviated form,
       for example address can be abbreviated as addr or just a.

       Specifies the action to perform on the object.  The set of possible
       actions depends on the object type.  As a rule, it is possible to
       add, delete and show (or list ) objects, but some objects do not
       allow all of these operations or have some additional commands. The
       help command is available for all objects. It prints out a list of
       available commands and argument syntax conventions.

       If no command is given, some default command is assumed.  Usually it
       is list or, if the objects of this class cannot be listed, help.

ENVIRONMENT         top

              If set, it's value is used for detection whether background is
              dark or light and use contrast colors for it.

              COLORFGBG environment variable usually contains either two or
              three values separated by semicolons; we want the last value
              in either case.  If this value is 0-6 or 8, chose colors
              suitable for dark background:

              COLORFGBG=";0" ip -c a

EXIT STATUS         top

       Exit status is 0 if command was successful, and 1 if there is a
       syntax error.  If an error was reported by the kernel exit status is

EXAMPLES         top

       ip addr
           Shows addresses assigned to all network interfaces.

       ip neigh
           Shows the current neighbour table in kernel.

       ip link set x up
           Bring up interface x.

       ip link set x down
           Bring down interface x.

       ip route
           Show table routes.

HISTORY         top

       ip was written by Alexey N. Kuznetsov and added in Linux 2.2.

SEE ALSO         top

       ip-address(8), ip-addrlabel(8), ip-l2tp(8), ip-link(8),
       ip-maddress(8), ip-monitor(8), ip-mptcp(8), ip-mroute(8),
       ip-neighbour(8), ip-netns(8), ip-ntable(8), ip-route(8), ip-rule(8),
       ip-tcp_metrics(8), ip-token(8), ip-tunnel(8), ip-vrf(8), ip-xfrm(8)
       IP Command reference ip-cref.ps

REPORTING BUGS         top

       Report any bugs to the Network Developers mailing list
       <netdev@vger.kernel.org> where the development and maintenance is
       primarily done.  You do not have to be subscribed to the list to send
       a message there.

AUTHOR         top

       Original Manpage by Michail Litvak <mci@owl.openwall.com>

COLOPHON         top

       This page is part of the iproute2 (utilities for controlling TCP/IP
       networking and traffic) project.  Information about the project can
       be found at 
       If you have a bug report for this manual page, send it to
       netdev@vger.kernel.org, shemminger@osdl.org.  This page was obtained
       from the project's upstream Git repository
       ⟨https://git.kernel.org/pub/scm/network/iproute2/iproute2.git⟩ on
       2020-11-01.  (At that time, the date of the most recent commit that
       was found in the repository was 2020-10-28.)  If you discover any
       rendering problems in this HTML version of the page, or you believe
       there is a better or more up-to-date source for the page, or you have
       corrections or improvements to the information in this COLOPHON
       (which is not part of the original manual page), send a mail to

iproute2                         20 Dec 2011                           IP(8)

Pages that refer to this page: networkctl(1)pmdanetcheck(1)veth(4)bpf-helpers(7)BPF-HELPERS(7)ip(7)network_namespaces(7)arptables(8)arptables-nft(8)bfifo(8)bridge(8)ctstat(8)ebtables(8)ebtables-nft(8)genl(8)ifstat(8)ip-address(8)ip-addrlabel(8)ip-fou(8)ip-gue(8)ip-l2tp(8)ip-link(8)ip-maddress(8)ip-monitor(8)ip-mroute(8)ip-neighbour(8)ip-netconf(8)ip-netns(8)ip-nexthop(8)ip-ntable(8)ip-route(8)ip-rule(8)ip-tcp_metrics(8)ip-token(8)ip-tunnel(8)ip-vrf(8)lnstat(8)netstat(8)pfifo(8)pfifo_fast(8)ping(8)rdma-dev(8)route(8)routef(8)routel(8)rtmon(8)rtpr(8)rtstat(8)ss(8)tc-bfifo(8)tc-pfifo(8)tc-pfifo_fast(8)wg(8)wg-quick(8)