The Linux Kernel Logo
  • Development process
  • Submitting patches
  • Code of conduct
  • Maintainer handbook
  • All development-process docs
  • Core API
  • Driver APIs
  • Subsystems
    • Core subsystems
    • Human interfaces
    • Networking interfaces
      • Networking
        • AF_XDP
        • Bare UDP Tunnelling Module Documentation
        • batman-adv
        • SocketCAN - Controller Area Network
        • The UCAN Protocol
        • Hardware Device Drivers
        • Networking Diagnostics
        • Distributed Switch Architecture
        • Linux Devlink Documentation
        • CAIF
        • Netlink interface for ethtool
        • IEEE 802.15.4 Developer’s Guide
        • ISO 15765-2 (ISO-TP)
        • J1939 Documentation
        • Linux Networking and Network Devices APIs
        • MSG_ZEROCOPY
        • FAILOVER
        • Net DIM - Generic Network Dynamic Interrupt Moderation
        • NET_FAILOVER
        • Page Pool API
        • PHY Abstraction Layer
        • phylink
        • IP-Aliasing
        • Ethernet Bridging
        • SNMP counter
        • Checksum Offloads
        • Segmentation Offloads
        • Scaling in the Linux Networking Stack
        • Kernel TLS
        • Kernel TLS offload
        • In-Kernel TLS Handshake
        • Linux NFC subsystem
        • Netdev private dataroom for 6lowpan interfaces
        • 6pack Protocol
        • ARCnet Hardware
        • ARCnet
        • ATM
        • AX.25
        • Linux Ethernet Bonding Driver HOWTO
        • cdc_mbim - Driver for CDC MBIM Mobile Broadband modems
        • DCCP protocol
        • DCTCP (DataCenter TCP)
        • Device Memory TCP
        • DNS Resolver Module
        • Softnet Driver Issues
        • EQL Driver: Serial IP Load Balancing HOWTO
        • LC-trie implementation notes
        • Linux Socket Filtering aka Berkeley Packet Filter (BPF)
        • Generic HDLC layer
        • Generic Netlink
        • Netlink Family Specifications
          • Family conntrack netlink specification
          • Family devlink netlink specification
          • Family dpll netlink specification
          • Family ethtool netlink specification
          • Family fou netlink specification
          • Family handshake netlink specification
          • Family lockd netlink specification
          • Family mptcp_pm netlink specification
          • Family net-shaper netlink specification
          • Family netdev netlink specification
          • Family nfsd netlink specification
          • Family nftables netlink specification
          • Family nl80211 netlink specification
          • Family nlctrl netlink specification
          • Family ovs_datapath netlink specification
          • Family ovs_flow netlink specification
          • Family ovs_vport netlink specification
          • Family rt-addr netlink specification
          • Family rt-link netlink specification
          • Family rt-neigh netlink specification
          • Family rt-route netlink specification
            • Summary
            • Operations
              • getroute
              • newroute
              • delroute
            • Definitions
              • rtm-type
              • rtmsg
              • rta-cacheinfo
            • Attribute sets
              • route-attrs
                • dst (binary)
                • src (binary)
                • iif (u32)
                • oif (u32)
                • gateway (binary)
                • priority (u32)
                • prefsrc (binary)
                • metrics (nest)
                • multipath (binary)
                • protoinfo (binary)
                • flow (u32)
                • cacheinfo (binary)
                • 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)
              • metrics
                • unspec (unused)
                • 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)
                • fastopen-no-cookie (u32)
          • Family rt-rule netlink specification
          • Family tc netlink specification
          • Family tcp_metrics netlink specification
          • Family team netlink specification
        • Generic networking statistics for netlink users
        • The Linux kernel GTP tunneling module
        • Identifier Locator Addressing (ILA)
        • IOAM6 Sysfs variables
        • io_uring zero copy Rx
        • IP dynamic address hack-port v0.03
        • IPsec
        • IP Sysctl
        • IPv6
        • IPVLAN Driver HOWTO
        • IPvs-sysctl
        • Kernel Connection Multiplexor
        • L2TP
        • The Linux LAPB Module Interface
        • How to use packet injection with mac80211
        • Management Component Transport Protocol (MCTP)
        • MPLS Sysfs variables
        • Multipath TCP (MPTCP)
        • MPTCP Sysfs variables
        • HOWTO for multiqueue network device support
        • Multi-PF Netdev
        • NAPI
        • Common Networking Struct Cachelines
        • Netconsole
        • Netdev features mess and how to get out from it alive
        • Network Devices, the Kernel, and You!
        • Netfilter Sysfs variables
        • NETIF Msg Level
        • Netmem Support for Network Drivers
        • Resilient Next-hop Groups
        • Netfilter Conntrack Sysfs variables
        • Netfilter’s flowtable infrastructure
        • OPEN Alliance 10BASE-T1x MAC-PHY Serial Interface (TC6) Framework Support
        • Open vSwitch datapath developer documentation
        • Operational States
        • Packet MMAP
        • Linux Phonet protocol family
        • PHY link topology
        • HOWTO for the linux packet generator
        • PLIP: The Parallel Line Internet Protocol Device
        • PPP Generic Driver and Channel Interface
        • The proc/net/tcp and proc/net/tcp6 variables
        • Power Sourcing Equipment (PSE) Documentation
        • How to use radiotap headers
        • RDS
        • Linux wireless regulatory documentation
        • Network Function Representors
        • RxRPC Network Protocol
        • SOCKET OPTIONS
        • SECURITY
        • EXAMPLE CLIENT USAGE
        • Linux Kernel SCTP
        • LSM/SeLinux secid
        • Seg6 Sysfs variables
        • struct sk_buff
        • SMC Sysctl
        • NIC SR-IOV APIs
        • Interface statistics
        • Stream Parser (strparser)
        • Ethernet switch device driver model (switchdev)
        • Sysfs tagging
        • TC Actions - Environmental Rules
        • TC queue based filtering
        • TCP Authentication Option Linux implementation (RFC5925)
        • Thin-streams and TCP
        • Team
        • Timestamping
        • Linux Kernel TIPC
        • Transparent proxy support
        • Universal TUN/TAP device driver
        • The UDP-Lite protocol (RFC 3828)
        • Virtual Routing and Forwarding (VRF)
        • Virtual eXtensible Local Area Networking documentation
        • Linux X.25 Project
        • X.25 Device Driver Interface
        • XFRM device - offloading the IPsec computations
        • XFRM proc - /proc/net/xfrm_* files
        • XFRM
        • XFRM Syscall
        • XDP RX Metadata
        • AF_XDP TX Metadata
      • NetLabel
      • InfiniBand
      • ISDN
      • MHI
    • Storage interfaces
    • Other subsystems
  • Locking
  • Licensing rules
  • Writing documentation
  • Development tools
  • Testing guide
  • Hacking guide
  • Tracing
  • Fault injection
  • Livepatching
  • Rust
  • Administration
  • Build system
  • Reporting issues
  • Userspace tools
  • Userspace API
  • Firmware
  • Firmware and Devicetree
  • CPU architectures
  • Unsorted documentation
  • Translations
The Linux Kernel
  • Kernel subsystem documentation
  • Networking
  • Netlink Family Specifications
  • Family rt-route netlink specification
  • View page source

Family rt-route netlink specification¶

Contents

  • Family rt-route netlink specification

    • Summary

    • Operations

      • getroute

      • newroute

      • delroute

    • Definitions

      • rtm-type

      • rtmsg

      • rta-cacheinfo

    • Attribute sets

      • route-attrs

      • metrics

Summary¶

Route configuration over rtnetlink.

Operations¶

getroute¶

Dump route information.

attribute-set:

route-attrs

fixed-header:

rtmsg

do:
request
attributes:

[rtm-family, src, rtm-src-len, dst, rtm-dst-len, iif, oif, ip-proto, sport, dport, mark, uid, flowlabel]

reply
attributes:

[rtm-family, rtm-dst-len, rtm-src-len, rtm-tos, rtm-table, rtm-protocol, rtm-scope, rtm-type, rtm-flags, 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]

dump:
request
attributes:

[rtm-family]

reply
attributes:

[rtm-family, rtm-dst-len, rtm-src-len, rtm-tos, rtm-table, rtm-protocol, rtm-scope, rtm-type, rtm-flags, 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¶

Create a new route

attribute-set:

route-attrs

fixed-header:

rtmsg

do:
request
attributes:

[rtm-family, rtm-dst-len, rtm-src-len, rtm-tos, rtm-table, rtm-protocol, rtm-scope, rtm-type, rtm-flags, 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:

route-attrs

fixed-header:

rtmsg

do:
request
attributes:

[rtm-family, rtm-dst-len, rtm-src-len, rtm-tos, rtm-table, rtm-protocol, rtm-scope, rtm-type, rtm-flags, 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]

Definitions¶

rtm-type¶

name-prefix:

rtn-

type:

enum

entries:
  • unspec

  • unicast

  • local

  • broadcast

  • anycast

  • multicast

  • blackhole

  • unreachable

  • prohibit

  • throw

  • nat

  • xresolve

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):

rta-cacheinfo¶

type:

struct

members:
rta-clntref (u32):

rta-lastuse (u32):

rta-expires (u32):

rta-error (u32):

rta-used (u32):

Attribute sets¶

route-attrs¶

dst (binary)¶

display-hint:

ipv4

src (binary)¶

display-hint:

ipv4

iif (u32)¶

oif (u32)¶

gateway (binary)¶

display-hint:

ipv4

priority (u32)¶

prefsrc (binary)¶

display-hint:

ipv4

metrics (nest)¶

nested-attributes:

metrics

multipath (binary)¶

protoinfo (binary)¶

flow (u32)¶

cacheinfo (binary)¶

struct:

rta-cacheinfo

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

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)¶

fastopen-no-cookie (u32)¶

Previous Next

© Copyright The kernel development community.

Built with Sphinx using a theme provided by Read the Docs.