Family rt-route netlink specification¶
Summary¶
Route configuration over rtnetlink.
Operations¶
getroute¶
Dump route information.
- attribute-set:
- do:
- request
- attributes:
[
src,dst,iif,oif,ip-proto,sport,dport,mark,uid,flowlabel]
- reply
- attributes:
[
dst,src,iif,oif,gateway,priority,prefsrc,metrics,multipath,flow,cacheinfo,table,mark,mfc-stats,via,newdst,pref,encap-type,encap,expires,pad,uid,ttl-propagate,ip-proto,sport,dport,nh-id,flowlabel,del-reason]
- dump:
- request
- attributes:
[]
- reply
- attributes:
[
dst,src,iif,oif,gateway,priority,prefsrc,metrics,multipath,flow,cacheinfo,table,mark,mfc-stats,via,newdst,pref,encap-type,encap,expires,pad,uid,ttl-propagate,ip-proto,sport,dport,nh-id,flowlabel,del-reason]
newroute¶
Create a new route
- attribute-set:
- do:
- request
- attributes:
[
dst,src,iif,oif,gateway,priority,prefsrc,metrics,multipath,flow,cacheinfo,table,mark,mfc-stats,via,newdst,pref,encap-type,encap,expires,pad,uid,ttl-propagate,ip-proto,sport,dport,nh-id,flowlabel]
delroute¶
Delete an existing route
- attribute-set:
- do:
- request
- attributes:
[
dst,src,iif,oif,gateway,priority,prefsrc,metrics,multipath,flow,cacheinfo,table,mark,mfc-stats,via,newdst,pref,encap-type,encap,expires,pad,uid,ttl-propagate,ip-proto,sport,dport,nh-id,flowlabel]
newroute-ntf¶
Notification about a created route.
- value:
24
- notify:
getroute
delroute-ntf¶
Notification about a deleted route.
- value:
25
- notify:
getroute
Multicast groups¶
rtnlgrp-ipv4-route
rtnlgrp-ipv6-route
Definitions¶
rtm-type¶
- name-prefix:
rtn-
- enum-name:
None
- type:
enum
- entries:
unspecunicastlocalbroadcastanycastmulticastblackholeunreachableprohibitthrownatxresolve
rtmsg¶
- type:
struct
- members:
- rtm-family (
u8): - rtm-dst-len (
u8): - rtm-src-len (
u8): - rtm-tos (
u8): - rtm-table (
u8): - rtm-protocol (
u8): - rtm-scope (
u8): - rtm-type (
u8): - rtm-flags (
u32):
- rtm-family (
rta-cacheinfo¶
- type:
struct
- members:
- rta-clntref (
u32): - rta-lastuse (
u32): - rta-expires (
u32): - rta-error (
u32): - rta-used (
u32):
- rta-clntref (
del-reason¶
- type:
enum
- name-prefix:
rt-del-reason-
- enum-name:
rt-del-reason
- doc:
Why the kernel deleted a route. New causes may be appended. The value space is family-agnostic, a value is never reinterpreted per address family.
- entries:
- unspec:
The deletion path does not record a cause.
- expired:
The RTF_EXPIRES lifetime ran out and the route was garbage collected.
- ra-withdrawn:
A Router Advertisement withdrew the route with a zero lifetime.
encap-type¶
- type:
enum
- name-prefix:
lwtunnel-encap-
- enum-name:
None
- entries:
nonemplsipilaip6seg6bpfseg6-localrplioam6xfrm
seg6-local-actions¶
- type:
enum
- name-prefix:
seg6-local-action-
- enum-name:
None
- entries:
unspecendend-xend-tend-dx2end-dx6end-dx4end-dt6end-dt4end-b6end-b6-encapend-bmend-send-asend-amend-bpfend-dt46
seg6-local-flv-ops¶
- type:
enum
- name-prefix:
seg6-local-flv-op-
- enum-name:
None
- entries:
- unspec:
- psp:
- usp:
- usd:
- next-csid:
Attribute sets¶
route-attrs¶
dst (binary)¶
- display-hint:
ipv4-or-v6
src (binary)¶
- display-hint:
ipv4-or-v6
iif (u32)¶
oif (u32)¶
gateway (binary)¶
- display-hint:
ipv4-or-v6
priority (u32)¶
prefsrc (binary)¶
- display-hint:
ipv4-or-v6
metrics (nest)¶
- nested-attributes:
multipath (binary)¶
protoinfo (binary)¶
flow (u32)¶
cacheinfo (binary)¶
- struct:
session (binary)¶
mp-algo (binary)¶
table (u32)¶
mark (u32)¶
mfc-stats (binary)¶
via (binary)¶
newdst (binary)¶
pref (u8)¶
encap-type (u16)¶
- enum:
encap (sub-message)¶
- sub-message:
- selector:
encap-type
expires (u32)¶
pad (binary)¶
uid (u32)¶
ttl-propagate (u8)¶
ip-proto (u8)¶
sport (u16)¶
dport (u16)¶
nh-id (u32)¶
flowlabel (u32)¶
- byte-order:
big-endian
- display-hint:
hex
del-reason (u32)¶
- enum:
- doc:
Emitted only on RTM_DELROUTE notifications, and only when the deletion path records a cause. An absent attribute means either an older kernel or a deletion path that does not record its cause, consumers must treat absent and unspec identically. Currently only IPv6 deletion paths record a cause. The attribute is notification-only, the kernel rejects it in requests.
metrics¶
unspec (unused)¶
- value:
0
lock (u32)¶
mtu (u32)¶
window (u32)¶
rtt (u32)¶
rttvar (u32)¶
ssthresh (u32)¶
cwnd (u32)¶
advmss (u32)¶
reordering (u32)¶
hoplimit (u32)¶
initcwnd (u32)¶
features (u32)¶
rto-min (u32)¶
initrwnd (u32)¶
quickack (u32)¶
cc-algo (string)¶
mpls-iptunnel¶
dst (binary)¶
ttl (u8)¶
lwtunnel-ip¶
id (u64)¶
- byte-order:
big-endian
dst (u32)¶
- byte-order:
big-endian
- display-hint:
ipv4
src (u32)¶
- byte-order:
big-endian
- display-hint:
ipv4
ttl (u8)¶
tos (u8)¶
flags (u16)¶
- byte-order:
big-endian
pad (pad)¶
opts (nest)¶
- nested-attributes:
ila-attrs¶
locator (u64)¶
- byte-order:
big-endian
identifier (u64)¶
locator-match (u64)¶
- byte-order:
big-endian
ifindex (s32)¶
dir (u32)¶
pad (pad)¶
csum-mode (u8)¶
ident-type (u8)¶
hook-type (u8)¶
lwtunnel-ip6¶
id (u64)¶
- byte-order:
big-endian
dst (binary)¶
- display-hint:
ipv6
src (binary)¶
- display-hint:
ipv6
hoplimit (u8)¶
tc (u8)¶
flags (u16)¶
- byte-order:
big-endian
pad (pad)¶
opts (nest)¶
- nested-attributes:
seg6-iptunnel¶
srh (binary)¶
src (binary)¶
- display-hint:
ipv6
table (u32)¶
lwt-bpf¶
in (nest)¶
- nested-attributes:
out (nest)¶
- nested-attributes:
xmit (nest)¶
- nested-attributes:
xmit-headroom (u32)¶
seg6-local¶
action (u32)¶
- enum:
srh (binary)¶
table (u32)¶
nh4 (u32)¶
- byte-order:
big-endian
- display-hint:
ipv4
nh6 (binary)¶
- display-hint:
ipv6
iif (u32)¶
oif (u32)¶
bpf (nest)¶
- nested-attributes:
vrftable (u32)¶
counters (nest)¶
- nested-attributes:
flavors (nest)¶
- nested-attributes:
rpl-iptunnel¶
srh (binary)¶
ioam6-iptunnel¶
mode (u8)¶
dst (binary)¶
- display-hint:
ipv6
trace (binary)¶
freq-k (u32)¶
freq-n (u32)¶
src (binary)¶
- display-hint:
ipv6
lwt-xfrm¶
if-id (u32)¶
link (u32)¶
lwtunnel-ip-opts¶
geneve (binary)¶
vxlan (nest)¶
- nested-attributes:
erspan (nest)¶
- nested-attributes:
lwtunnel-ip-opt-vxlan¶
gbp (u32)¶
lwtunnel-ip-opt-erspan¶
ver (u8)¶
index (u32)¶
- byte-order:
big-endian
dir (u8)¶
hwid (u8)¶
lwt-bpf-prog¶
fd (u32)¶
name (string)¶
seg6-local-bpf¶
prog (u32)¶
prog-name (string)¶
seg6-local-cnt¶
pad (pad)¶
packets (u64)¶
bytes (u64)¶
errors (u64)¶
seg6-local-flv¶
operation (u32)¶
- enum:
- enum-as-flags:
True
lcblock-bits (u8)¶
lcnode-fn-bits (u8)¶
Sub-messages¶
encap-data¶
- mpls
- attribute-set:
- ip
- attribute-set:
- ila
- attribute-set:
- ip6
- attribute-set:
- seg6
- attribute-set:
- bpf
- attribute-set:
- seg6-local
- attribute-set:
- rpl
- attribute-set:
- ioam6
- attribute-set:
- xfrm
- attribute-set: