1 .TH IP 8 "17 January 2002" "iproute2" "Linux"
3 ip \- show / manipulate routing, devices, policy routing and tunnels
10 .RI "[ " OPTIONS " ] " OBJECT " { " COMMAND " | "
16 .BR link " | " addr " | " addrlabel " | " route " | " rule " | " neigh " | "\
17 tunnel " | " maddr " | " mroute " | " monitor " }"
22 \fB\-V\fR[\fIersion\fR] |
23 \fB\-s\fR[\fItatistics\fR] |
24 \fB\-r\fR[\fIesolve\fR] |
25 \fB\-f\fR[\fIamily\fR] {
26 .BR inet " | " inet6 " | " ipx " | " dnet " | " link " } | "
27 \fB\-o\fR[\fIneline\fR] }
30 .BI "ip link add link " DEVICE
50 .BR vlan " | " maclan " | " can " ]"
53 .BI "ip link delete " DEVICE
61 .RB "} { " up " | " down " | " arp " { " on " | " off " } |"
63 .BR promisc " { " on " | " off " } |"
65 .BR allmulticast " { " on " | " off " } |"
67 .BR dynamic " { " on " | " off " } |"
69 .BR multicast " { " on " | " off " } |"
109 .RI "[ " DEVICE " | "
114 .BR "ip addr" " { " add " | " del " } "
115 .IB IFADDR " dev " STRING
118 .BR "ip addr" " { " show " | " flush " } [ " dev
123 .IR PREFIX " ] [ " FLAG-LIST " ] [ "
128 .IR IFADDR " := " PREFIX " | " ADDR
142 .RB "[ " host " | " link " | " global " | "
146 .IR FLAG-LIST " := [ " FLAG-LIST " ] " FLAG
150 .RB "[ " permanent " | " dynamic " | " secondary " | " primary " | "\
151 tentative " | " deprecated " | " dadfailed " | " temporary " ]"
154 .BR "ip addrlabel" " { " add " | " del " } " prefix
162 .BR "ip addrlabel" " { " list " | " flush " }"
166 .BR list " | " flush " } "
174 .BR "ip route restore"
179 .BI from " ADDRESS " iif " STRING"
186 .BR "ip route" " { " add " | " del " | " change " | " append " | "\
187 replace " | " monitor " } "
208 .IR ROUTE " := " NODE_SPEC " [ " INFO_SPEC " ]"
211 .IR NODE_SPEC " := [ " TYPE " ] " PREFIX " ["
224 .IR INFO_SPEC " := " "NH OPTIONS FLAGS" " ["
235 .IR NUMBER " ] " NHFLAGS
238 .IR OPTIONS " := " FLAGS " [ "
264 .BR unicast " | " local " | " broadcast " | " multicast " | "\
265 throw " | " unreachable " | " prohibit " | " blackhole " | " nat " ]"
268 .IR TABLE_ID " := [ "
269 .BR local "| " main " | " default " | " all " |"
274 .BR host " | " link " | " global " |"
279 .BR onlink " | " pervasive " ]"
283 .BR kernel " | " boot " | " static " |"
288 .RB " [ " list " | " add " | " del " | " flush " ]"
292 .IR SELECTOR " := [ "
300 .IR FWMARK[/MASK] " ] [ "
314 .BR prohibit " | " reject " | " unreachable " ] [ " realms
315 .RI "[" SRCREALM "/]" DSTREALM " ]"
318 .IR TABLE_ID " := [ "
319 .BR local " | " main " | " default " |"
323 .BR "ip neigh" " { " add " | " del " | " change " | " replace " } { "
327 .BR nud " { " permanent " | " noarp " | " stale " | " reachable " } ] | " proxy
333 .BR "ip neigh" " { " show " | " flush " } [ " to
341 .BR "ip tunnel" " { " add " | " change " | " del " | " show " | " prl " }"
351 .RB "[ [" i "|" o "]" seq " ] [ [" i "|" o "]" key
353 .RB "[" i "|" o "]" csum " ] ]"
372 .RB "[ [" no "]" pmtudisc " ]"
375 .RB "[ " "dscp inherit" " ]"
379 .RB " { " ipip " | " gre " | " sit " | " isatap " | " ip6ip6 " | " ipip6 " | " any " }"
382 .IR ADDR " := { " IP_ADDRESS " |"
386 .IR TOS " := { " NUMBER " |"
396 .IR TTL " := { " 1 ".." 255 " | "
400 .IR KEY " := { " DOTTED_QUAD " | " NUMBER " }"
403 .IR TIME " := " NUMBER "[s|ms]"
406 .BR "ip maddr" " [ " add " | " del " ]"
407 .IB MULTIADDR " dev " STRING
410 .BR "ip maddr show" " [ " dev
414 .BR "ip mroute show" " ["
422 .BR "ip monitor" " [ " all " |"
423 .IR LISTofOBJECTS " ]"
427 .IR XFRM_OBJECT " { " COMMAND " }"
430 .IR XFRM_OBJECT " := { " state " | " policy " | " monitor " } "
433 .BR "ip xfrm state " { " add " | " update " } "
443 .RB " [ " replay-window
457 .BR "ip xfrm state allocspi "
471 .BR "ip xfrm state" " { " delete " | " get " } "
475 .BR "ip xfrm state" " { " deleteall " | " list " } [ "
486 .BR "ip xfrm state flush" " [ " proto
490 .BR "ip xfrm state count"
504 .IR XFRM_PROTO " := "
505 .RB " [ " esp " | " ah " | " comp " | " route2 " | " hao " ] "
509 .RB " [ " transport " | " tunnel " | " ro " | " beet " ] "
510 .B (default=transport)
514 .RI " [ " FLAG-LIST " ] " FLAG
518 .RB " [ " noecn " | " decap-dscp " | " wildrecv " ] "
521 .IR ENCAP " := " ENCAP-TYPE " " SPORT " " DPORT " " OADDR
524 .IR ENCAP-TYPE " := "
530 .IR ALGO-LIST " := [ "
531 .IR ALGO-LIST " ] | [ "
542 .RB " [ " enc " | " auth " | " comp " ] "
547 .IR ADDR "[/" PLEN "]"
549 .IR ADDR "[/" PLEN "]"
550 .RI " [ " UPSPEC " ] "
572 .IR LIMIT-LIST " := [ " LIMIT-LIST " ] |"
578 .RB " [ [" time-soft "|" time-hard "|" time-use-soft "|" time-use-hard "]"
580 .RB "[ ["byte-soft "|" byte-hard "]"
583 .RB " [ ["packet-soft "|" packet-hard "]"
587 .BR "ip xfrm policy" " { " add " | " update " } " " dir "
600 .RI " [ " LIMIT-LIST " ] [ "
604 .BR "ip xfrm policy" " { " delete " | " get " } " " dir "
605 .IR DIR " [ " SELECTOR " | "
614 .BR "ip xfrm policy" " { " deleteall " | " list " } "
627 .B "ip xfrm policy flush"
636 .RB " [ " main " | " sub " ] "
641 .RB " [ " in " | " out " | " fwd " ] "
646 .IR ADDR "[/" PLEN "]"
648 .IR ADDR "[/" PLEN] " [ " UPSPEC
671 .RB " [ " allow " | " block " ]"
675 .IR LIMIT-LIST " := "
677 .IR LIMIT-LIST " ] | "
683 .RB " [ [" time-soft "|" time-hard "|" time-use-soft "|" time-use-hard "]"
685 .RB " [ [" byte-soft "|" byte-hard "]"
688 .RB "[" packet-soft "|" packet-hard "]"
694 .IR TMPL-LIST " ] | "
720 .IR XFRM_PROTO " := "
721 .RB " [ " esp " | " ah " | " comp " | " route2 " | " hao " ] "
725 .RB " [ " transport " | " tunnel " | " beet " ] "
726 .B (default=transport)
730 .RB " [ " required " | " use " ] "
731 .B (default=required)
734 .BR "ip xfrm monitor" " [ " all " | "
735 .IR LISTofOBJECTS " ] "
743 .BR "\-V" , " -Version"
744 print the version of the
749 .BR "\-s" , " \-stats", " \-statistics"
750 output more information. If the option
751 appears twice or more, the amount of information increases.
752 As a rule, the information is statistics or some time values.
755 .BR "\-l" , " \-loops"
756 Specify maximum number of loops the 'ip addr flush' logic
757 will attempt before giving up. The default is 10.
758 Zero (0) means loop until all addresses are removed.
761 .BR "\-f" , " \-family"
762 followed by protocol family identifier:
763 .BR "inet" , " inet6"
766 ,enforce the protocol family to use. If the option is not present,
767 the protocol family is guessed from other arguments. If the rest
768 of the command line does not give enough information to guess the
771 falls back to the default one, usually
776 is a special family identifier meaning that no networking protocol
787 .BR "\-family inet6" .
792 .BR "\-family link" .
795 .BR "\-o" , " \-oneline"
796 output each record on a single line, replacing line feeds
799 character. This is convenient when you want to count records
807 .BR "\-r" , " \-resolve"
808 use the system's name resolver to print DNS names instead of
811 .SH IP - COMMAND SYNTAX
822 - protocol (IP or IPv6) address on a device.
826 - label configuration for protocol address selection.
830 - ARP or NDISC cache entry.
834 - routing table entry.
838 - rule in routing policy database.
846 - multicast routing cache entry.
854 - framework for IPsec protocol.
857 The names of all objects may be written in full or
858 abbreviated form, f.e.
868 Specifies the action to perform on the object.
869 The set of possible actions depends on the object type.
870 As a rule, it is possible to
871 .BR "add" , " delete"
876 ) objects, but some objects do not allow all of these operations
877 or have some additional commands. The
879 command is available for all objects. It prints
880 out a list of available commands and argument syntax conventions.
882 If no command is given, some default command is assumed.
885 or, if the objects of this class cannot be listed,
888 .SH ip link - network device configuration
891 is a network device and the corresponding commands
892 display and change the state of devices.
894 .SS ip link add - add virtual link
898 specifies the physical device to act operate on.
901 specifies the name of the new virtual device.
904 specifies the type of the new device.
910 - 802.1q tagged virrtual LAN interface
913 - virtual interface base on link layer address (MAC)
916 - Controller Area Network interface
919 .SS ip link delete - delete virtual link
921 specifies the virtual device to act operate on.
923 specifies the type of the device.
928 specifies the physical device to act operate on.
930 .SS ip link set - change device attributes
935 specifies network device to operate on. When configuring SR-IOV Virtual Fuction
936 (VF) devices, this keyword should specify the associated Physical Function (PF)
942 has a dual role: If both group and dev are present, then move the device to the
943 specified group. If only a group is specified, then the command operates on
944 all devices in that group.
948 change the state of the device to
954 .BR "arp on " or " arp off"
960 .BR "multicast on " or " multicast off"
966 .BR "dynamic on " or " dynamic off"
973 change the name of the device. This operation is not
974 recommended if the device is running or has some addresses
978 .BI txqueuelen " NUMBER"
981 change the transmit queue length of the device.
990 .BI address " LLADDRESS"
991 change the station address of the interface.
994 .BI broadcast " LLADDRESS"
998 .BI peer " LLADDRESS"
999 change the link layer broadcast address or the peer address when
1005 move the device to the network namespace associated with the process
1010 give the device a symbolic name for easy reference.
1014 specify the group the device belongs to.
1015 The available groups are listed in file
1016 .BR "/etc/iproute2/group" .
1020 specify a Virtual Function device to be configured. The associated PF device
1021 must be specified using the
1026 .BI mac " LLADDRESS"
1027 - change the station address for the specified VF. The
1029 parameter must be specified.
1033 - change the assigned VLAN for the specified VF. When specified, all traffic
1034 sent from the VF will be tagged with the specified VLAN ID. Incoming traffic
1035 will be filtered for the specified VLAN ID, and will have all VLAN tags
1036 stripped before being passed to the VF. Setting this parameter to 0 disables
1037 VLAN tagging and filtering. The
1039 parameter must be specified.
1043 - assign VLAN QOS (priority) bits for the VLAN tag. When specified, all VLAN
1044 tags transmitted by the VF will include the specified priority bits in the
1045 VLAN tag. If not specified, the value is assumed to be 0. Both the
1049 parameters must be specified. Setting both
1053 as 0 disables VLAN tagging and filtering for the VF.
1057 - change the allowed transmit bandwidth, in Mbps, for the specified VF.
1058 Setting this parameter to 0 disables rate limiting. The
1060 parameter must be specified.
1064 .BI master " DEVICE"
1065 set master device of the device (enslave device).
1069 unset master device of the device (release device).
1073 If multiple parameter changes are requested,
1075 aborts immediately after any of the changes have failed.
1076 This is the only case when
1078 can move the system to an unpredictable state. The solution
1079 is to avoid changing several parameters with one
1083 .SS ip link show - display device attributes
1086 .BI dev " NAME " (default)
1088 specifies the network device to show.
1089 If this argument is omitted all devices in the default group are listed.
1094 specifies what group of devices to show.
1098 only display running interfaces.
1100 .SH ip address - protocol address management.
1104 is a protocol (IP or IPv6) address attached
1105 to a network device. Each device must have at least one address
1106 to use the corresponding protocol. It is possible to have several
1107 different addresses attached to one device. These addresses are not
1108 discriminated, so that the term
1110 is not quite appropriate for them and we do not use it in this document.
1114 command displays addresses and their properties, adds new addresses
1115 and deletes old ones.
1117 .SS ip address add - add new protocol address.
1121 the name of the device to add the address to.
1124 .BI local " ADDRESS " (default)
1125 the address of the interface. The format of the address depends
1126 on the protocol. It is a dotted quad for IP and a sequence of
1127 hexadecimal halfwords separated by colons for IPv6. The
1129 may be followed by a slash and a decimal number which encodes
1130 the network prefix length.
1134 the address of the remote endpoint for pointopoint interfaces.
1137 may be followed by a slash and a decimal number, encoding the network
1138 prefix length. If a peer address is specified, the local address
1139 cannot have a prefix length. The network prefix is associated
1140 with the peer rather than with the local address.
1143 .BI broadcast " ADDRESS"
1144 the broadcast address on the interface.
1146 It is possible to use the special symbols
1150 instead of the broadcast address. In this case, the broadcast address
1151 is derived by setting/resetting the host bits of the interface prefix.
1155 Each address may be tagged with a label string.
1156 In order to preserve compatibility with Linux-2.0 net aliases,
1157 this string must coincide with the name of the device or must be prefixed
1158 with the device name followed by colon.
1161 .BI scope " SCOPE_VALUE"
1162 the scope of the area where this address is valid.
1163 The available scopes are listed in file
1164 .BR "/etc/iproute2/rt_scopes" .
1165 Predefined scope values are:
1169 - the address is globally valid.
1172 - (IPv6 only) the address is site local, i.e. it is
1173 valid inside this site.
1176 - the address is link local, i.e. it is valid only on this device.
1179 - the address is valid only inside this host.
1182 .SS ip address delete - delete protocol address
1184 coincide with the arguments of
1186 The device name is a required argument. The rest are optional.
1187 If no arguments are given, the first address is deleted.
1189 .SS ip address show - look at protocol addresses
1192 .BI dev " NAME " (default)
1196 .BI scope " SCOPE_VAL"
1197 only list addresses with this scope.
1201 only list addresses matching this prefix.
1204 .BI label " PATTERN"
1205 only list addresses with labels matching the
1208 is a usual shell style pattern.
1211 .BR dynamic " and " permanent
1212 (IPv6 only) only list addresses installed due to stateless
1213 address configuration or only list permanent (not dynamic)
1218 (IPv6 only) only list addresses which have not yet passed duplicate
1223 (IPv6 only) only list deprecated addresses.
1227 (IPv6 only) only list addresses which have failed duplicate
1232 (IPv6 only) only list temporary addresses.
1235 .BR primary " and " secondary
1236 only list primary (or secondary) addresses.
1238 .SS ip address flush - flush protocol addresses
1239 This command flushes the protocol addresses selected by some criteria.
1242 This command has the same arguments as
1244 The difference is that it does not run when no arguments are given.
1248 This command (and other
1250 commands described below) is pretty dangerous. If you make a mistake,
1251 it will not forgive it, but will cruelly purge all the addresses.
1256 option, the command becomes verbose. It prints out the number of deleted
1257 addresses and the number of rounds made to flush the address list. If
1258 this option is given twice,
1260 also dumps all the deleted addresses in the format described in the
1261 previous subsection.
1263 .SH ip addrlabel - protocol address label management.
1265 IPv6 address label is used for address selection
1266 described in RFC 3484. Precedence is managed by userspace,
1267 and only label is stored in kernel.
1269 .SS ip addrlabel add - add an address label
1270 the command adds an address label entry to the kernel.
1272 .BI prefix " PREFIX"
1275 the outgoing interface.
1278 the label for the prefix.
1279 0xffffffff is reserved.
1280 .SS ip addrlabel del - delete an address label
1281 the command deletes an address label entry in the kernel.
1283 coincide with the arguments of
1285 but label is not required.
1286 .SS ip addrlabel list - list address labels
1287 the command show contents of address labels.
1288 .SS ip addrlabel flush - flush address labels
1289 the command flushes the contents of address labels and it does not restore default settings.
1290 .SH ip neighbour - neighbour/arp tables management.
1293 objects establish bindings between protocol addresses and
1294 link layer addresses for hosts sharing the same link.
1295 Neighbour entries are organized into tables. The IPv4 neighbour table
1296 is known by another name - the ARP table.
1299 The corresponding commands display neighbour bindings
1300 and their properties, add new neighbour entries and delete old ones.
1302 .SS ip neighbour add - add a new neighbour entry
1303 .SS ip neighbour change - change an existing entry
1304 .SS ip neighbour replace - add a new entry or change an existing one
1306 These commands create new neighbour records or update existing ones.
1309 .BI to " ADDRESS " (default)
1310 the protocol address of the neighbour. It is either an IPv4 or IPv6 address.
1314 the interface to which this neighbour is attached.
1317 .BI lladdr " LLADDRESS"
1318 the link layer address of the neighbour.
1324 .BI nud " NUD_STATE"
1325 the state of the neighbour entry.
1327 is an abbreviation for 'Neighbour Unreachability Detection'.
1328 The state can take one of the following values:
1332 - the neighbour entry is valid forever and can be only
1333 be removed administratively.
1337 - the neighbour entry is valid. No attempts to validate
1338 this entry will be made but it can be removed when its lifetime expires.
1342 - the neighbour entry is valid until the reachability
1347 - the neighbour entry is valid but suspicious.
1350 does not change the neighbour state if it was valid and the address
1351 is not changed by this command.
1354 .SS ip neighbour delete - delete a neighbour entry
1355 This command invalidates a neighbour entry.
1358 The arguments are the same as with
1359 .BR "ip neigh add" ,
1368 Attempts to delete or manually change a
1370 entry created by the kernel may result in unpredictable behaviour.
1371 Particularly, the kernel may try to resolve this address even
1374 interface or if the address is multicast or broadcast.
1376 .SS ip neighbour show - list neighbour entries
1378 This commands displays neighbour tables.
1381 .BI to " ADDRESS " (default)
1382 the prefix selecting the neighbours to list.
1386 only list the neighbours attached to this device.
1390 only list neighbours which are not currently in use.
1393 .BI nud " NUD_STATE"
1394 only list neighbour entries in this state.
1396 takes values listed below or the special value
1398 which means all states. This option may occur more than once.
1399 If this option is absent,
1401 lists all entries except for
1406 .SS ip neighbour flush - flush neighbour entries
1407 This command flushes neighbour tables, selecting
1408 entries to flush by some criteria.
1411 This command has the same arguments as
1413 The differences are that it does not run when no arguments are given,
1414 and that the default neighbour states to be flushed do not include
1422 option, the command becomes verbose. It prints out the number of
1423 deleted neighbours and the number of rounds made to flush the
1424 neighbour table. If the option is given
1427 also dumps all the deleted neighbours.
1429 .SH ip route - routing table management
1430 Manipulate route entries in the kernel routing tables keep
1431 information about paths to other networked nodes.
1437 - the route entry describes real paths to the destinations covered
1438 by the route prefix.
1442 - these destinations are unreachable. Packets are discarded and the
1446 The local senders get an
1452 - these destinations are unreachable. Packets are discarded silently.
1453 The local senders get an
1459 - these destinations are unreachable. Packets are discarded and the
1461 .I communication administratively prohibited
1462 is generated. The local senders get an
1468 - the destinations are assigned to this host. The packets are looped
1469 back and delivered locally.
1473 - the destinations are broadcast addresses. The packets are sent as
1478 - a special control route used together with policy rules. If such a
1479 route is selected, lookup in this table is terminated pretending that
1480 no route was found. Without policy routing it is equivalent to the
1481 absence of the route in the routing table. The packets are dropped
1482 and the ICMP message
1484 is generated. The local senders get an
1490 - a special NAT route. Destinations covered by the prefix
1491 are considered to be dummy (or external) addresses which require translation
1492 to real (or internal) ones before forwarding. The addresses to translate to
1493 are selected with the attribute
1495 Route NAT is no longer supported in Linux 2.6.
1501 .RI "- " "not implemented"
1502 the destinations are
1504 addresses assigned to this host. They are mainly equivalent
1507 with one difference: such addresses are invalid when used
1508 as the source address of any packet.
1512 - a special type used for multicast routing. It is not present in
1513 normal routing tables.
1518 Linux-2.x can pack routes into several routing tables identified
1519 by a number in the range from 1 to 2^31 or by name from the file
1520 .B /etc/iproute2/rt_tables
1521 By default all normal routes are inserted into the
1523 table (ID 254) and the kernel only uses this table when calculating routes.
1524 Values (0, 253, 254, and 255) are reserved for built-in use.
1527 Actually, one other table always exists, which is invisible but
1528 even more important. It is the
1530 table (ID 255). This table
1531 consists of routes for local and broadcast addresses. The kernel maintains
1532 this table automatically and the administrator usually need not modify it
1535 The multiple routing tables enter the game when
1539 .SS ip route add - add new route
1540 .SS ip route change - change route
1541 .SS ip route replace - change or add new one
1544 .BI to " TYPE PREFIX " (default)
1545 the destination prefix of the route. If
1555 is an IP or IPv6 address optionally followed by a slash and the
1556 prefix length. If the length of the prefix is missing,
1558 assumes a full-length host route. There is also a special
1561 - which is equivalent to IP
1570 the Type Of Service (TOS) key. This key has no associated mask and
1571 the longest match is understood as: First, compare the TOS
1572 of the route and of the packet. If they are not equal, then the packet
1573 may still match a route with a zero TOS.
1575 is either an 8 bit hexadecimal number or an identifier
1577 .BR "/etc/iproute2/rt_dsfield" .
1580 .BI metric " NUMBER"
1582 .BI preference " NUMBER"
1583 the preference value of the route.
1585 is an arbitrary 32bit number.
1588 .BI table " TABLEID"
1589 the table to add this route to.
1591 may be a number or a string from the file
1592 .BR "/etc/iproute2/rt_tables" .
1593 If this parameter is omitted,
1597 table, with the exception of
1598 .BR local " , " broadcast " and " nat
1599 routes, which are put into the
1605 the output device name.
1609 the address of the nexthop router. Actually, the sense of this field
1610 depends on the route type. For normal
1612 routes it is either the true next hop router or, if it is a direct
1613 route installed in BSD compatibility mode, it can be a local address
1614 of the interface. For NAT routes it is the first address of the block
1615 of translated IP destinations.
1619 the source address to prefer when sending to the destinations
1620 covered by the route prefix.
1623 .BI realm " REALMID"
1624 the realm to which this route is assigned.
1626 may be a number or a string from the file
1627 .BR "/etc/iproute2/rt_realms" .
1632 .BI "mtu lock" " MTU"
1633 the MTU along the path to the destination. If the modifier
1635 is not used, the MTU may be updated by the kernel due to
1636 Path MTU Discovery. If the modifier
1638 is used, no path MTU discovery will be tried, all packets
1639 will be sent without the DF bit in IPv4 case or fragmented
1643 .BI window " NUMBER"
1644 the maximal window for TCP to advertise to these destinations,
1645 measured in bytes. It limits maximal data bursts that our TCP
1646 peers are allowed to send to us.
1650 the initial RTT ('Round Trip Time') estimate. If no suffix is
1651 specified the units are raw values passed directly to the
1652 routing code to maintain compatibility with previous releases.
1653 Otherwise if a suffix of s, sec or secs is used to specify
1654 seconds and ms, msec or msecs to specify milliseconds.
1658 .BI rttvar " TIME " "(2.3.15+ only)"
1659 the initial RTT variance estimate. Values are specified as with
1664 .BI rto_min " TIME " "(2.6.23+ only)"
1665 the minimum TCP Retransmission TimeOut to use when communicating with this
1666 destination. Values are specified as with
1671 .BI ssthresh " NUMBER " "(2.3.15+ only)"
1672 an estimate for the initial slow start threshold.
1675 .BI cwnd " NUMBER " "(2.3.15+ only)"
1676 the clamp for congestion window. It is ignored if the
1681 .BI initcwnd " NUMBER " "(2.5.70+ only)"
1682 the initial congestion window size for connections to this destination.
1683 Actual window size is this value multiplied by the MSS
1684 (``Maximal Segment Size'') for same connection. The default is
1685 zero, meaning to use the values specified in RFC2414.
1688 .BI initrwnd " NUMBER " "(2.6.33+ only)"
1689 the initial receive window size for connections to this destination.
1690 Actual window size is this value multiplied by the MSS of the connection.
1691 The default value is zero, meaning to use Slow Start value.
1694 .BI advmss " NUMBER " "(2.3.15+ only)"
1695 the MSS ('Maximal Segment Size') to advertise to these
1696 destinations when establishing TCP connections. If it is not given,
1697 Linux uses a default value calculated from the first hop device MTU.
1698 (If the path to these destination is asymmetric, this guess may be wrong.)
1701 .BI reordering " NUMBER " "(2.3.15+ only)"
1702 Maximal reordering on the path to this destination.
1703 If it is not given, Linux uses the value selected with
1706 .BR "net/ipv4/tcp_reordering" .
1709 .BI nexthop " NEXTHOP"
1710 the nexthop of a multipath route.
1712 is a complex value with its own syntax similar to the top level
1717 - is the nexthop router.
1721 - is the output device.
1724 .BI weight " NUMBER"
1725 - is a weight for this element of a multipath
1726 route reflecting its relative bandwidth or quality.
1730 .BI scope " SCOPE_VAL"
1731 the scope of the destinations covered by the route prefix.
1733 may be a number or a string from the file
1734 .BR "/etc/iproute2/rt_scopes" .
1735 If this parameter is omitted,
1744 .BR unicast " and " broadcast
1746 .BR host " for " local
1750 .BI protocol " RTPROTO"
1751 the routing protocol identifier of this route.
1753 may be a number or a string from the file
1754 .BR "/etc/iproute2/rt_protos" .
1755 If the routing protocol ID is not given,
1756 .B ip assumes protocol
1758 (i.e. it assumes the route was added by someone who doesn't
1759 understand what they are doing). Several protocol values have
1760 a fixed interpretation.
1765 - the route was installed due to an ICMP redirect.
1769 - the route was installed by the kernel during autoconfiguration.
1773 - the route was installed during the bootup sequence.
1774 If a routing daemon starts, it will purge all of them.
1778 - the route was installed by the administrator
1779 to override dynamic routing. Routing daemon will respect them
1780 and, probably, even advertise them to its peers.
1784 - the route was installed by Router Discovery protocol.
1788 The rest of the values are not reserved and the administrator is free
1789 to assign (or not to assign) protocol tags.
1793 pretend that the nexthop is directly attached to this link,
1794 even if it does not match any interface prefix.
1796 .SS ip route delete - delete route
1799 has the same arguments as
1800 .BR "ip route add" ,
1801 but their semantics are a bit different.
1804 .RB "(" to ", " tos ", " preference " and " table ")"
1805 select the route to delete. If optional attributes are present,
1807 verifies that they coincide with the attributes of the route to delete.
1808 If no route with the given key and attributes was found,
1812 .SS ip route show - list routes
1813 the command displays the contents of the routing tables or the route(s)
1814 selected by some criteria.
1817 .BI to " SELECTOR " (default)
1818 only select routes from the given range of destinations.
1820 consists of an optional modifier
1821 .RB "(" root ", " match " or " exact ")"
1824 selects routes with prefixes not shorter than
1828 selects the entire routing table.
1830 selects routes with prefixes not longer than
1833 .BI match " 10.0/16"
1836 .IR 10/8 " and " 0/0 ,
1837 but it does not select
1838 .IR 10.1/16 " and " 10.0.0/24 .
1843 selects routes with this exact prefix. If neither of these options
1848 i.e. it lists the entire table.
1853 only select routes with the given TOS.
1856 .BI table " TABLEID"
1857 show the routes from this table(s). The default setting is to show
1860 may either be the ID of a real table or one of the special values:
1864 - list all of the tables.
1867 - dump the routing cache.
1874 list cloned routes i.e. routes which were dynamically forked from
1875 other routes because some route attribute (f.e. MTU) was updated.
1876 Actually, it is equivalent to
1877 .BR "table cache" "."
1880 .BI from " SELECTOR"
1881 the same syntax as for
1883 but it binds the source address range rather than destinations.
1886 option only works with cloned routes.
1889 .BI protocol " RTPROTO"
1890 only list routes of this protocol.
1893 .BI scope " SCOPE_VAL"
1894 only list routes with this scope.
1898 only list routes of this type.
1902 only list routes going via this device.
1906 only list routes going via the nexthop routers selected by
1911 only list routes with preferred source addresses selected
1916 .BI realm " REALMID"
1918 .BI realms " FROMREALM/TOREALM"
1919 only list routes with these realms.
1921 .SS ip route flush - flush routing tables
1922 this command flushes routes selected by some criteria.
1925 The arguments have the same syntax and semantics as the arguments of
1926 .BR "ip route show" ,
1927 but routing tables are not listed but purged. The only difference is
1930 dumps all the IP main routing table but
1932 prints the helper page.
1937 option, the command becomes verbose. It prints out the number of
1938 deleted routes and the number of rounds made to flush the routing
1939 table. If the option is given
1942 also dumps all the deleted routes in the format described in the
1943 previous subsection.
1945 .SS ip route get - get a single route
1946 this command gets a single route to a destination and prints its
1947 contents exactly as the kernel sees it.
1950 .BI to " ADDRESS " (default)
1951 the destination address.
1961 the Type Of Service.
1965 the device from which this packet is expected to arrive.
1969 force the output device on which this packet will be routed.
1973 if no source address
1974 .RB "(option " from ")"
1975 was given, relookup the route with the source set to the preferred
1976 address received from the first lookup.
1977 If policy routing is used, it may be a different route.
1980 Note that this operation is not equivalent to
1981 .BR "ip route show" .
1983 shows existing routes.
1985 resolves them and creates new clones if necessary. Essentially,
1987 is equivalent to sending a packet along this path.
1990 argument is not given, the kernel creates a route
1991 to output packets towards the requested destination.
1992 This is equivalent to pinging the destination
1994 .BR "ip route ls cache" ,
1995 however, no packets are actually sent. With the
1997 argument, the kernel pretends that a packet arrived from this interface
1998 and searches for a path to forward the packet.
2000 .SS ip route save - save routing table information to stdout
2001 this command behaves like
2003 except that the output is raw data suitable for passing to
2004 .BR "ip route restore" .
2006 .SS ip route restore - restore routing table information from stdin
2007 this command expects to read a data stream as returned from
2008 .BR "ip route save" .
2009 It will attempt to restore the routing table information exactly as
2010 it was at the time of the save, so any translation of information
2011 in the stream (such as device indexes) must be done first. Any existing
2012 routes are left unchanged. Any routes specified in the data stream that
2013 already exist in the table will be ignored.
2015 .SH ip rule - routing policy database management
2018 in the routing policy database control the route selection algorithm.
2021 Classic routing algorithms used in the Internet make routing decisions
2022 based only on the destination address of packets (and in theory,
2023 but not in practice, on the TOS field).
2026 In some circumstances we want to route packets differently depending not only
2027 on destination addresses, but also on other packet fields: source address,
2028 IP protocol, transport protocol ports or even packet payload.
2029 This task is called 'policy routing'.
2032 To solve this task, the conventional destination based routing table, ordered
2033 according to the longest match rule, is replaced with a 'routing policy
2034 database' (or RPDB), which selects routes by executing some set of rules.
2037 Each policy routing rule consists of a
2040 .B action predicate.
2041 The RPDB is scanned in the order of increasing priority. The selector
2042 of each rule is applied to {source address, destination address, incoming
2043 interface, tos, fwmark} and, if the selector matches the packet,
2044 the action is performed. The action predicate may return with success.
2045 In this case, it will either give a route or failure indication
2046 and the RPDB lookup is terminated. Otherwise, the RPDB program
2047 continues on the next rule.
2050 Semantically, natural action is to select the nexthop and the output device.
2053 At startup time the kernel configures the default RPDB consisting of three
2058 Priority: 0, Selector: match anything, Action: lookup routing
2064 table is a special routing table containing
2065 high priority control routes for local and broadcast addresses.
2067 Rule 0 is special. It cannot be deleted or overridden.
2071 Priority: 32766, Selector: match anything, Action: lookup routing
2077 table is the normal routing table containing all non-policy
2078 routes. This rule may be deleted and/or overridden with other
2079 ones by the administrator.
2083 Priority: 32767, Selector: match anything, Action: lookup routing
2089 table is empty. It is reserved for some post-processing if no previous
2090 default rules selected the packet.
2091 This rule may also be deleted.
2094 Each RPDB entry has additional
2095 attributes. F.e. each rule has a pointer to some routing
2096 table. NAT and masquerading rules have an attribute to select new IP
2097 address to translate/masquerade. Besides that, rules have some
2098 optional attributes, which routes have, namely
2100 These values do not override those contained in the routing tables. They
2101 are only used if the route did not select any attributes.
2104 The RPDB may contain rules of the following types:
2108 - the rule prescribes to return the route found
2109 in the routing table referenced by the rule.
2112 - the rule prescribes to silently drop the packet.
2115 - the rule prescribes to generate a 'Network is unreachable' error.
2118 - the rule prescribes to generate 'Communication is administratively
2122 - the rule prescribes to translate the source address
2123 of the IP packet into some other value.
2126 .SS ip rule add - insert a new rule
2127 .SS ip rule delete - delete a rule
2130 .BI type " TYPE " (default)
2131 the type of this rule. The list of valid types was given in the previous
2136 select the source prefix to match.
2140 select the destination prefix to match.
2144 select the incoming device to match. If the interface is loopback,
2145 the rule only matches packets originating from this host. This means
2146 that you may create separate routing tables for forwarded and local
2147 packets and, hence, completely segregate them.
2151 select the outgoing device to match. The outgoing interface is only
2152 available for packets originating from local sockets that are bound to
2159 select the TOS value to match.
2168 .BI priority " PREFERENCE"
2169 the priority of this rule. Each rule should have an explicitly
2173 The options preference and order are synonyms with priority.
2176 .BI table " TABLEID"
2177 the routing table identifier to lookup if the rule selector matches.
2178 It is also possible to use lookup instead of table.
2181 .BI realms " FROM/TO"
2182 Realms to select if the rule matched and the routing table lookup
2185 is only used if the route did not select any realm.
2189 The base of the IP address block to translate (for source addresses).
2192 may be either the start of the block of NAT addresses (selected by NAT
2193 routes) or a local host address (or even zero).
2194 In the last case the router does not translate the packets, but
2195 masquerades them to this address.
2196 Using map-to instead of nat means the same thing.
2199 Changes to the RPDB made with these commands do not become active
2200 immediately. It is assumed that after a script finishes a batch of
2201 updates, it flushes the routing cache with
2202 .BR "ip route flush cache" .
2204 .SS ip rule flush - also dumps all the deleted rules.
2205 This command has no arguments.
2207 .SS ip rule show - list rules
2208 This command has no arguments.
2209 The options list or lst are synonyms with show.
2211 .SH ip maddress - multicast addresses management
2214 objects are multicast addresses.
2216 .SS ip maddress show - list multicast addresses
2219 .BI dev " NAME " (default)
2222 .SS ip maddress add - add a multicast address
2223 .SS ip maddress delete - delete a multicast address
2224 these commands attach/detach a static link layer multicast address
2225 to listen on the interface.
2226 Note that it is impossible to join protocol multicast groups
2227 statically. This command only manages link layer addresses.
2230 .BI address " LLADDRESS " (default)
2231 the link layer multicast address.
2235 the device to join/leave this multicast address.
2237 .SH ip mroute - multicast routing cache management
2239 objects are multicast routing cache entries created by a user level
2240 mrouting daemon (f.e.
2246 Due to the limitations of the current interface to the multicast routing
2247 engine, it is impossible to change
2249 objects administratively, so we may only display them. This limitation
2250 will be removed in the future.
2252 .SS ip mroute show - list mroute cache entries
2255 .BI to " PREFIX " (default)
2256 the prefix selecting the destination multicast addresses to list.
2260 the interface on which multicast packets are received.
2264 the prefix selecting the IP source addresses of the multicast route.
2266 .SH ip tunnel - tunnel configuration
2268 objects are tunnels, encapsulating packets in IP packets and then
2269 sending them over the IP infrastructure.
2270 The encapulating (or outer) address family is specified by the
2272 option. The default is IPv4.
2274 .SS ip tunnel add - add a new tunnel
2275 .SS ip tunnel change - change an existing tunnel
2276 .SS ip tunnel delete - destroy a tunnel
2279 .BI name " NAME " (default)
2280 select the tunnel device name.
2284 set the tunnel mode. Available modes depend on the encapsulating address family.
2286 Modes for IPv4 encapsulation available:
2287 .BR ipip ", " sit ", " isatap " and " gre "."
2289 Modes for IPv6 encapsulation available:
2290 .BR ip6ip6 ", " ipip6 " and " any "."
2293 .BI remote " ADDRESS"
2294 set the remote endpoint of the tunnel.
2297 .BI local " ADDRESS"
2298 set the fixed local address for tunneled packets.
2299 It must be an address on another interface of this host.
2305 on tunneled packets.
2307 is a number in the range 1--255. 0 is a special value
2308 meaning that packets inherit the TTL value.
2309 The default value for IPv4 tunnels is:
2311 The default value for IPv6 tunnels is:
2321 set a fixed TOS (or traffic class in IPv6)
2323 on tunneled packets.
2324 The default value is:
2329 bind the tunnel to the device
2331 so that tunneled packets will only be routed via this device and will
2332 not be able to escape to another device when the route to endpoint
2337 disable Path MTU Discovery on this tunnel.
2338 It is enabled by default. Note that a fixed ttl is incompatible
2339 with this option: tunnelling with a fixed ttl always makes pmtu
2348 .RB ( " only GRE tunnels " )
2349 use keyed GRE with key
2351 is either a number or an IP address-like dotted quad.
2354 parameter sets the key to use in both directions.
2356 .BR ikey " and " okey
2357 parameters set different keys for input and output.
2360 .BR csum ", " icsum ", " ocsum
2361 .RB ( " only GRE tunnels " )
2362 generate/require checksums for tunneled packets.
2365 flag calculates checksums for outgoing packets.
2368 flag requires that all input packets have the correct
2371 flag is equivalent to the combination
2375 .BR seq ", " iseq ", " oseq
2376 .RB ( " only GRE tunnels " )
2380 flag enables sequencing of outgoing packets.
2383 flag requires that all input packets are serialized.
2386 flag is equivalent to the combination
2388 .B It isn't work. Don't use it.
2392 .RB ( " only IPv6 tunnels " )
2393 Inherit DS field between inner and outer header.
2396 .BI encaplim " ELIM"
2397 .RB ( " only IPv6 tunnels " )
2398 set a fixed encapsulation limit. Default is 4.
2401 .BI flowlabel " FLOWLABEL"
2402 .RB ( " only IPv6 tunnels " )
2403 set a fixed flowlabel.
2405 .SS ip tunnel prl - potential router list (ISATAP only)
2409 mandatory device name.
2412 .BI prl-default " ADDR"
2414 .BI prl-nodefault " ADDR"
2416 .BI prl-delete " ADDR"
2417 .RB "Add or delete " ADDR
2418 as a potential router or default router.
2420 .SS ip tunnel show - list tunnels
2421 This command has no arguments.
2423 .SH ip monitor and rtmon - state monitoring
2427 utility can monitor the state of devices, addresses
2428 and routes continuously. This option has a slightly different format.
2431 command is the first in the command line and then the object list follows:
2433 .BR "ip monitor" " [ " all " |"
2434 .IR LISTofOBJECTS " ]"
2437 is the list of object types that we want to monitor.
2439 .BR link ", " address " and " route "."
2444 opens RTNETLINK, listens on it and dumps state changes in the format
2445 described in previous sections.
2448 If a file name is given, it does not listen on RTNETLINK,
2449 but opens the file containing RTNETLINK messages saved in binary format
2450 and dumps them. Such a history file can be generated with the
2452 utility. This utility has a command line syntax similar to
2456 should be started before the first network configuration command
2457 is issued. F.e. if you insert:
2460 rtmon file /var/log/rtmon.log
2463 in a startup script, you will be able to view the full history
2467 Certainly, it is possible to start
2470 It prepends the history with the state snapshot dumped at the moment
2473 .SH ip xfrm - setting xfrm
2474 xfrm is an IP framework, which can transform format of the datagrams,
2476 i.e. encrypt the packets with some algorithm. xfrm policy and xfrm state
2477 are associated through templates
2479 This framework is used as a part of IPsec protocol.
2481 .SS ip xfrm state add - add new state into xfrm
2483 .SS ip xfrm state update - update existing xfrm state
2485 .SS ip xfrm state allocspi - allocate SPI value
2489 is set as default to
2491 but it could be set to
2492 .BR tunnel "," ro " or " beet "."
2496 contains one or more flags.
2501 .BR noecn ", " decap-dscp " or " wildrecv "."
2505 encapsulation is set to encapsulation type
2506 .IR ENCAP-TYPE ", source port " SPORT ", destination port " DPORT " and " OADDR "."
2511 .BR espinudp " or " espinudp-nonike "."
2515 contains one or more algorithms
2517 which depend on the type of algorithm set by
2519 Valid algorithms are:
2520 .BR enc ", " auth " or " comp "."
2522 .SS ip xfrm policy add - add a new policy
2524 .SS ip xfrm policy update - update an existing policy
2526 .SS ip xfrm policy delete - delete existing policy
2528 .SS ip xfrm policy get - get existing policy
2530 .SS ip xfrm policy deleteall - delete all existing xfrm policy
2532 .SS ip xfrm policy list - print out the list of xfrm policy
2534 .SS ip xfrm policy flush - flush policies
2537 policies or only those specified with
2542 directory could be one of these:
2543 .BR "inp", " out " or " fwd".
2547 selects for which addresses will be set up the policy. The selector
2548 is defined by source and destination address.
2552 is defined by source port
2560 as dotted-quad or number.
2564 specify network device.
2568 the number of indexed policy.
2572 type is set as default on
2578 .BI action " ACTION "
2579 is set as default on
2581 It could be switch on
2585 .BI priority " PRIORITY "
2586 priority is a number. Default priority is set on zero.
2590 limits are set in seconds, bytes or numbers of packets.
2594 template list is based on
2596 .BR mode ", " reqid " and " level ". "
2600 is specified by source address, destination address,
2608 .BR esp ", " ah ", " comp ", " route2 " or " hao "."
2612 is set as default on
2614 but it could be set on
2615 .BR tunnel " or " beet "."
2619 is set as default on
2621 and the other choice is
2627 .BR sport " and " dport " (for UDP/TCP), "
2628 .BR type " and " code " (for ICMP; as number) or "
2629 .BR key " (for GRE; as dotted-quad or number)."
2632 .SS ip xfrm monitor - is used for listing all objects or defined group of them.
2635 can monitor the policies for all objects or defined group of them.
2639 was written by Alexey N. Kuznetsov and added in Linux 2.2.
2643 .RB "IP Command reference " ip-cref.ps
2645 .RB "IP tunnels " ip-cref.ps
2647 .RB "User documentation at " http://lartc.org/ ", but please direct bugreports and patches to: " <netdev@vger.kernel.org>
2650 Original Manpage by Michail Litvak <mci@owl.openwall.com>