ip-nexthop - Man Page
nexthop object management
Synopsis
ip [ ip-OPTIONS ] nexthop { COMMAND | help }
ip nexthop { show | flush } SELECTOR
ip nexthop { add | replace } id ID NH
ip nexthop { get | del } id ID
ip nexthop bucket list BUCKET_SELECTOR
ip nexthop bucket get id ID index INDEX
SELECTOR := [ id ID ] [ dev DEV ] [ vrf NAME ] [ master DEV ] [ groups ] [ fdb ]
BUCKET_SELECTOR := SELECTOR | [ nhid ID ]
NH := { blackhole | [ via ADDRESS ] [ dev DEV ] [ onlink ] [ encap ENCAP ] [ fdb ] | group GROUP [ hw_stats { on | off } ] [ fdb ] [ type TYPE [ TYPE_ARGS ] ] }
ENCAP := [ ENCAP_MPLS ]
ENCAP_MPLS := mpls [ LABEL ] [ ttl TTL ]
GROUP := id[,weight[/...]
TYPE := { mpath | resilient }
TYPE_ARGS := [ RESILIENT_ARGS ]
RESILIENT_ARGS := [ buckets BUCKETS ] [ idle_timer IDLE ] [ unbalanced_timer UNBALANCED ]
Description
ip nexthop is used to manipulate entries in the kernel's nexthop tables.
- ip nexthop add id ID
add new nexthop entry
- ip nexthop replace id ID
change the configuration of a nexthop or add new one
- via [ FAMILY ] ADDRESS
the address of the nexthop router, in the address family FAMILY. Address family must match address family of nexthop instance.
- dev NAME
is the output device.
- onlink
pretend that the nexthop is directly attached to this link, even if it does not match any interface prefix.
- encap ENCAPTYPE ENCAPHDR
attach tunnel encapsulation attributes to this route.
ENCAPTYPE is a string specifying the supported encapsulation type. Namely:
mpls - encapsulation type MPLS
ENCAPHDR is a set of encapsulation attributes specific to the ENCAPTYPE.
mpls MPLSLABEL - mpls label stack with labels separated by /
ttl TTL - TTL to use for MPLS header or 0 to inherit from IP header
- group GROUP [ type TYPE [ TYPE_ARGS ] ]
create a nexthop group. Group specification is id with an optional weight (id,weight) and a '/' as a separator between entries.
TYPE is a string specifying the nexthop group type. Namely:
mpath - Multipath nexthop group backed by the hash-threshold algorithm. The default when the type is unspecified.
resilient - Resilient nexthop group. Group is resilient to addition and deletion of nexthops.
TYPE_ARGS is a set of attributes specific to the TYPE.
resilient buckets BUCKETS - Number of nexthop buckets. Cannot be changed for an existing group
idle_timer IDLE - Time in seconds in which a nexthop bucket does not see traffic and is therefore considered idle. Default is 120 seconds
unbalanced_timer UNBALANCED - Time in seconds in which a nexthop group is unbalanced and is therefore considered unbalanced. The kernel will try to rebalance unbalanced groups, which might result in some flows being reset. A value of 0 means that no rebalancing will take place. Default is 0 seconds
- blackhole
create a blackhole nexthop
- fdb
nexthop and nexthop groups for use with layer-2 fdb entries. A fdb nexthop group can only have fdb nexthops. Example: Used to represent a vxlan remote vtep ip. layer-2 vxlan fdb entry pointing to an ecmp nexthop group containing multiple remote vtep ips.
- ip nexthop delete id ID
delete nexthop with given id.
- ip nexthop show
show the contents of the nexthop table or the nexthops selected by some criteria.
- dev DEV
show the nexthops using the given device.
- vrf NAME
show the nexthops using devices associated with the vrf name
- master DEV
show the nexthops using devices enslaved to given master device
- groups
show only nexthop groups
- fdb
show only fdb nexthops and nexthop groups
- ip nexthop flush
flushes nexthops selected by some criteria. Criteria options are the same as show.
- ip nexthop get id ID
get a single nexthop by id
- ip nexthop bucket show
show the contents of the nexthop bucket table or the nexthop buckets selected by some criteria.
- id ID
show the nexthop buckets that belong to a nexthop group with a given id
- nhid ID
show the nexthop buckets that hold a nexthop with a given id
- dev DEV
show the nexthop buckets using the given device
- vrf NAME
show the nexthop buckets using devices associated with the vrf name
- master DEV
show the nexthop buckets using devices enslaved to given master device
- ip nexthop bucket get id ID index INDEX
get a single nexthop bucket by nexthop group id and bucket index
Examples
- ip nexthop ls
Show all nexthop entries in the kernel.
- ip nexthop add id 1 via 192.168.1.1 dev eth0
Adds an IPv4 nexthop with id 1 using the gateway 192.168.1.1 out device eth0.
- ip nexthop add id 2 encap mpls 200/300 via 10.1.1.1 dev eth0
Adds an IPv4 nexthop with mpls encapsulation attributes attached to it.
- ip nexthop add id 3 group 1/2
Adds a nexthop with id 3. The nexthop is a group using nexthops with ids 1 and 2 at equal weight.
- ip nexthop add id 4 group 1,5/2,11
Adds a nexthop with id 4. The nexthop is a group using nexthops with ids 1 and 2 with nexthop 1 at weight 5 and nexthop 2 at weight 11.
- ip nexthop add id 5 via 192.168.1.2 fdb
Adds a fdb nexthop with id 5.
- ip nexthop add id 7 group 5/6 fdb
Adds a fdb nexthop group with id 7. A fdb nexthop group can only have fdb nexthops.
- ip nexthop add id 10 group 1/2 type resilient buckets 32
Add a resilient nexthop group with id 10 and 32 nexthop buckets.
See Also
Author
Original Manpage by David Ahern <dsahern@kernel.org>