File: //usr/share/doc/ynl/rt-neigh.rst
.. LINENO 2
.. SPDX-License-Identifier: GPL-2.0
.. NOTE: This document was auto-generated.
.. _netlink-rt-neigh:
=========================================
Family ``rt-neigh`` netlink specification
=========================================
.. contents:: :depth: 3
-------
Summary
-------
IP neighbour management over rtnetlink.
----------
Operations
----------
.. LINENO 348
.. _rt-neigh-operation-newneigh:
newneigh
========
Add new neighbour entry
:fixed-header: :ref:`rt-neigh-definition-ndmsg`
:attribute-set: :ref:`rt-neigh-attribute-set-neighbour-attrs`
:do:
.. LINENO 353
**request**
:attributes: [``dst``, ``lladdr``, ``probes``, ``vlan``, ``port``, ``vni``, ``ifindex``, ``master``, ``protocol``, ``nh-id``, ``flags-ext``, ``fdb-ext-attrs``]
.. LINENO 369
.. _rt-neigh-operation-delneigh:
delneigh
========
Remove an existing neighbour entry
:fixed-header: :ref:`rt-neigh-definition-ndmsg`
:attribute-set: :ref:`rt-neigh-attribute-set-neighbour-attrs`
:do:
.. LINENO 374
**request**
:attributes: [``dst``, ``ifindex``]
.. LINENO 380
.. _rt-neigh-operation-delneigh-ntf:
delneigh-ntf
============
Notify a neighbour deletion
:value: 29
:notify: getneigh
:fixed-header: :ref:`rt-neigh-definition-ndmsg`
.. LINENO 386
.. _rt-neigh-operation-getneigh:
getneigh
========
Get or dump neighbour entries
:fixed-header: :ref:`rt-neigh-definition-ndmsg`
:attribute-set: :ref:`rt-neigh-attribute-set-neighbour-attrs`
:do:
.. LINENO 391
**request**
:attributes: [``dst``]
**reply**
:attributes: [``dst``, ``lladdr``, ``probes``, ``vlan``, ``port``, ``vni``, ``ifindex``, ``master``, ``protocol``, ``nh-id``, ``flags-ext``, ``fdb-ext-attrs``]
:dump:
.. LINENO 399
**request**
:attributes: [``ifindex``, ``master``]
**reply**
:attributes: [``dst``, ``lladdr``, ``probes``, ``vlan``, ``port``, ``vni``, ``ifindex``, ``master``, ``protocol``, ``nh-id``, ``flags-ext``, ``fdb-ext-attrs``]
.. LINENO 407
.. _rt-neigh-operation-newneigh-ntf:
newneigh-ntf
============
Notify a neighbour creation
:value: 28
:notify: getneigh
:fixed-header: :ref:`rt-neigh-definition-ndmsg`
.. LINENO 413
.. _rt-neigh-operation-getneightbl:
getneightbl
===========
Get or dump neighbour tables
:fixed-header: :ref:`rt-neigh-definition-ndtmsg`
:attribute-set: :ref:`rt-neigh-attribute-set-ndt-attrs`
:dump:
.. LINENO 418
**request**
**reply**
:attributes: [``name``, ``thresh1``, ``thresh2``, ``thresh3``, ``config``, ``parms``, ``stats``, ``gc-interval``]
.. LINENO 432
.. _rt-neigh-operation-setneightbl:
setneightbl
===========
Set neighbour tables
:fixed-header: :ref:`rt-neigh-definition-ndtmsg`
:attribute-set: :ref:`rt-neigh-attribute-set-ndt-attrs`
:do:
.. LINENO 437
**request**
:attributes: [``name``, ``thresh1``, ``thresh2``, ``thresh3``, ``parms``, ``gc-interval``]
----------------
Multicast groups
----------------
- rtnlgrp-neigh
-----------
Definitions
-----------
.. LINENO 12
.. _rt-neigh-definition-ndmsg:
ndmsg
=====
:type: struct
:members:
:ndm-family (``u8``):
:ndm-pad (``pad``):
:ndm-ifindex (``s32``):
:ndm-state (``u16``):
:ndm-flags (``u8``):
:ndm-type (``u8``):
.. LINENO 38
.. _rt-neigh-definition-ndtmsg:
ndtmsg
======
:type: struct
:members:
:family (``u8``):
.. LINENO 49
.. _rt-neigh-definition-nud-state:
nud-state
=========
:type: flags
:enum-name: None
:entries:
- ``incomplete``
- ``reachable``
- ``stale``
- ``delay``
- ``probe``
- ``failed``
- ``noarp``
- ``permanent``
.. LINENO 62
.. _rt-neigh-definition-ntf-flags:
ntf-flags
=========
:type: flags
:enum-name: None
:entries:
- ``use``
- ``self``
- ``master``
- ``proxy``
- ``ext-learned``
- ``offloaded``
- ``sticky``
- ``router``
.. LINENO 75
.. _rt-neigh-definition-ntf-ext-flags:
ntf-ext-flags
=============
:type: flags
:enum-name: None
:entries:
- ``managed``
- ``locked``
.. LINENO 82
.. _rt-neigh-definition-rtm-type:
rtm-type
========
:type: enum
:enum-name: None
:entries:
- ``unspec``
- ``unicast``
- ``local``
- ``broadcast``
- ``anycast``
- ``multicast``
- ``blackhole``
- ``unreachable``
- ``prohibit``
- ``throw``
- ``nat``
- ``xresolve``
.. LINENO 99
.. _rt-neigh-definition-nda-cacheinfo:
nda-cacheinfo
=============
:type: struct
:members:
:confirmed (``u32``):
:used (``u32``):
:updated (``u32``):
:refcnt (``u32``):
.. LINENO 115
.. _rt-neigh-definition-ndt-config:
ndt-config
==========
:type: struct
:members:
:key-len (``u16``):
:entry-size (``u16``):
:entries (``u32``):
:last-flush (``u32``):
:last-rand (``u32``):
:hash-rnd (``u32``):
:hash-mask (``u32``):
:hash-chain-gc (``u32``):
:proxy-qlen (``u32``):
.. LINENO 146
.. _rt-neigh-definition-ndt-stats:
ndt-stats
=========
:type: struct
:members:
:allocs (``u64``):
:destroys (``u64``):
:hash-grows (``u64``):
:res-failed (``u64``):
:lookups (``u64``):
:hits (``u64``):
:rcv-probes-mcast (``u64``):
:rcv-probes-ucast (``u64``):
:periodic-gc-runs (``u64``):
:forced-gc-runs (``u64``):
:table-fulls (``u64``):
--------------
Attribute sets
--------------
.. _rt-neigh-attribute-set-neighbour-attrs:
neighbour-attrs
===============
.. LINENO 189
unspec (``binary``)
~~~~~~~~~~~~~~~~~~~
:value: 0
.. LINENO 193
dst (``binary``)
~~~~~~~~~~~~~~~~
:display-hint: ipv4
.. LINENO 197
lladdr (``binary``)
~~~~~~~~~~~~~~~~~~~
:display-hint: mac
.. LINENO 201
cacheinfo (``binary``)
~~~~~~~~~~~~~~~~~~~~~~
:struct: :ref:`rt-neigh-definition-nda-cacheinfo`
.. LINENO 205
probes (``u32``)
~~~~~~~~~~~~~~~~
.. LINENO 208
vlan (``u16``)
~~~~~~~~~~~~~~
.. LINENO 211
port (``u16``)
~~~~~~~~~~~~~~
.. LINENO 214
vni (``u32``)
~~~~~~~~~~~~~
.. LINENO 217
ifindex (``u32``)
~~~~~~~~~~~~~~~~~
.. LINENO 220
master (``u32``)
~~~~~~~~~~~~~~~~
.. LINENO 223
link-netnsid (``s32``)
~~~~~~~~~~~~~~~~~~~~~~
.. LINENO 226
src-vni (``u32``)
~~~~~~~~~~~~~~~~~
.. LINENO 229
protocol (``u8``)
~~~~~~~~~~~~~~~~~
.. LINENO 232
nh-id (``u32``)
~~~~~~~~~~~~~~~
.. LINENO 235
fdb-ext-attrs (``binary``)
~~~~~~~~~~~~~~~~~~~~~~~~~~
.. LINENO 238
flags-ext (``u32``)
~~~~~~~~~~~~~~~~~~~
:enum: :ref:`rt-neigh-definition-ntf-ext-flags`
.. LINENO 242
ndm-state-mask (``u16``)
~~~~~~~~~~~~~~~~~~~~~~~~
.. LINENO 245
ndm-flags-mask (``u8``)
~~~~~~~~~~~~~~~~~~~~~~~
.. _rt-neigh-attribute-set-ndt-attrs:
ndt-attrs
=========
.. LINENO 252
name (``string``)
~~~~~~~~~~~~~~~~~
.. LINENO 255
thresh1 (``u32``)
~~~~~~~~~~~~~~~~~
.. LINENO 258
thresh2 (``u32``)
~~~~~~~~~~~~~~~~~
.. LINENO 261
thresh3 (``u32``)
~~~~~~~~~~~~~~~~~
.. LINENO 264
config (``binary``)
~~~~~~~~~~~~~~~~~~~
:struct: :ref:`rt-neigh-definition-ndt-config`
.. LINENO 268
parms (``nest``)
~~~~~~~~~~~~~~~~
:nested-attributes: :ref:`rt-neigh-attribute-set-ndtpa-attrs`
.. LINENO 272
stats (``binary``)
~~~~~~~~~~~~~~~~~~
:struct: :ref:`rt-neigh-definition-ndt-stats`
.. LINENO 276
gc-interval (``u64``)
~~~~~~~~~~~~~~~~~~~~~
.. LINENO 279
pad (``pad``)
~~~~~~~~~~~~~
.. _rt-neigh-attribute-set-ndtpa-attrs:
ndtpa-attrs
===========
.. LINENO 286
ifindex (``u32``)
~~~~~~~~~~~~~~~~~
.. LINENO 289
refcnt (``u32``)
~~~~~~~~~~~~~~~~
.. LINENO 292
reachable-time (``u64``)
~~~~~~~~~~~~~~~~~~~~~~~~
.. LINENO 295
base-reachable-time (``u64``)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.. LINENO 298
retrans-time (``u64``)
~~~~~~~~~~~~~~~~~~~~~~
.. LINENO 301
gc-staletime (``u64``)
~~~~~~~~~~~~~~~~~~~~~~
.. LINENO 304
delay-probe-time (``u64``)
~~~~~~~~~~~~~~~~~~~~~~~~~~
.. LINENO 307
queue-len (``u32``)
~~~~~~~~~~~~~~~~~~~
.. LINENO 310
app-probes (``u32``)
~~~~~~~~~~~~~~~~~~~~
.. LINENO 313
ucast-probes (``u32``)
~~~~~~~~~~~~~~~~~~~~~~
.. LINENO 316
mcast-probes (``u32``)
~~~~~~~~~~~~~~~~~~~~~~
.. LINENO 319
anycast-delay (``u64``)
~~~~~~~~~~~~~~~~~~~~~~~
.. LINENO 322
proxy-delay (``u64``)
~~~~~~~~~~~~~~~~~~~~~
.. LINENO 325
proxy-qlen (``u32``)
~~~~~~~~~~~~~~~~~~~~
.. LINENO 328
locktime (``u64``)
~~~~~~~~~~~~~~~~~~
.. LINENO 331
queue-lenbytes (``u32``)
~~~~~~~~~~~~~~~~~~~~~~~~
.. LINENO 334
mcast-reprobes (``u32``)
~~~~~~~~~~~~~~~~~~~~~~~~
.. LINENO 337
pad (``pad``)
~~~~~~~~~~~~~
.. LINENO 340
interval-probe-time-ms (``u64``)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~