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.
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)¶
encap (binary)¶
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