ip - show / manipulate routing, network devices, interfaces and
tunnels
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 }
OPTIONS := { -V[ersion] |
-h[uman-readable] | -s[tatistics] |
-d[etails] | -r[esolve] | -iec |
-f[amily] { inet | inet6 | ipx |
dnet | 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 | -a[ll]
| -c[olor] | -br[ief] | -j[son] |
-p[retty] }
- -V, -Version
- Print the version of the ip utility and exit.
- -h, -human,
-human-readable
- output statistics with human readable values followed by suffix.
- -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, ipx,
dnet, 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 involved.
- -4
- shortcut for -family inet.
- -6
- shortcut for -family inet6.
- -B
- shortcut for -family bridge.
- -D
- shortcut for -family decnet.
- -I
- shortcut for -family ipx.
- -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 }
to
ip -n[etns] NETNS [ OPTIONS ]
OBJECT { COMMAND | help }
- -a, -all
- executes specified command over all objects, it depends if command
supports this option.
- -c[color][={always|auto|never}
- 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.
- -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.
- address
- - protocol (IP or IPv6) address on a device.
- addrlabel
- - label configuration for protocol address selection.
- l2tp
- - tunnel ethernet over IP (L2TPv3).
- link
- - network device.
- maddress
- - multicast address.
- monitor
- - watch for netlink messages.
- mroute
- - multicast routing cache entry.
- mrule
- - rule in multicast routing policy database.
- neighbour
- - 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.
- tcp_metrics/tcpmetrics
- - manage TCP Metrics
- token
- - manage tokenized interface identifiers.
- tunnel
- - tunnel over IP.
- tuntap
- - manage TUN/TAP 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.
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 2.
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.
ip was written by Alexey N. Kuznetsov and added in Linux
2.2.
ip-address(8), ip-addrlabel(8), ip-l2tp(8),
ip-link(8), ip-maddress(8), ip-monitor(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-xfrm(8)
IP Command reference ip-cref.ps
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.
Original Manpage by Michail Litvak
<mci@owl.openwall.com>