1# SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause) 2--- 3name: rt-neigh 4protocol: netlink-raw 5uapi-header: linux/rtnetlink.h 6protonum: 0 7 8doc: >- 9 IP neighbour management over rtnetlink. 10 11definitions: 12 - 13 name: ndmsg 14 type: struct 15 members: 16 - 17 name: ndm-family 18 type: u8 19 - 20 name: ndm-pad 21 type: pad 22 len: 3 23 - 24 name: ndm-ifindex 25 type: s32 26 - 27 name: ndm-state 28 type: u16 29 enum: nud-state 30 - 31 name: ndm-flags 32 type: u8 33 enum: ntf-flags 34 - 35 name: ndm-type 36 type: u8 37 enum: rtm-type 38 - 39 name: ndtmsg 40 type: struct 41 members: 42 - 43 name: family 44 type: u8 45 - 46 name: pad 47 type: pad 48 len: 3 49 - 50 name: nud-state 51 type: flags 52 enum-name: 53 entries: 54 - incomplete 55 - reachable 56 - stale 57 - delay 58 - probe 59 - failed 60 - noarp 61 - permanent 62 - 63 name: ntf-flags 64 type: flags 65 enum-name: 66 entries: 67 - use 68 - self 69 - master 70 - proxy 71 - ext-learned 72 - offloaded 73 - sticky 74 - router 75 - 76 name: ntf-ext-flags 77 type: flags 78 enum-name: 79 entries: 80 - managed 81 - locked 82 - ext-validated 83 - 84 name: rtm-type 85 type: enum 86 enum-name: 87 entries: 88 - unspec 89 - unicast 90 - local 91 - broadcast 92 - anycast 93 - multicast 94 - blackhole 95 - unreachable 96 - prohibit 97 - throw 98 - nat 99 - xresolve 100 - 101 name: nda-cacheinfo 102 type: struct 103 members: 104 - 105 name: confirmed 106 type: u32 107 - 108 name: used 109 type: u32 110 - 111 name: updated 112 type: u32 113 - 114 name: refcnt 115 type: u32 116 - 117 name: ndt-config 118 type: struct 119 members: 120 - 121 name: key-len 122 type: u16 123 - 124 name: entry-size 125 type: u16 126 - 127 name: entries 128 type: u32 129 - 130 name: last-flush 131 type: u32 132 - 133 name: last-rand 134 type: u32 135 - 136 name: hash-rnd 137 type: u32 138 - 139 name: hash-mask 140 type: u32 141 - 142 name: hash-chain-gc 143 type: u32 144 - 145 name: proxy-qlen 146 type: u32 147 - 148 name: ndt-stats 149 type: struct 150 members: 151 - 152 name: allocs 153 type: u64 154 - 155 name: destroys 156 type: u64 157 - 158 name: hash-grows 159 type: u64 160 - 161 name: res-failed 162 type: u64 163 - 164 name: lookups 165 type: u64 166 - 167 name: hits 168 type: u64 169 - 170 name: rcv-probes-mcast 171 type: u64 172 - 173 name: rcv-probes-ucast 174 type: u64 175 - 176 name: periodic-gc-runs 177 type: u64 178 - 179 name: forced-gc-runs 180 type: u64 181 - 182 name: table-fulls 183 type: u64 184 185attribute-sets: 186 - 187 name: neighbour-attrs 188 name-prefix: nda- 189 attributes: 190 - 191 name: unspec 192 type: binary 193 value: 0 194 - 195 name: dst 196 type: binary 197 display-hint: ipv4-or-v6 198 - 199 name: lladdr 200 type: binary 201 display-hint: mac 202 - 203 name: cacheinfo 204 type: binary 205 struct: nda-cacheinfo 206 - 207 name: probes 208 type: u32 209 - 210 name: vlan 211 type: u16 212 - 213 name: port 214 type: u16 215 - 216 name: vni 217 type: u32 218 - 219 name: ifindex 220 type: u32 221 - 222 name: master 223 type: u32 224 - 225 name: link-netnsid 226 type: s32 227 - 228 name: src-vni 229 type: u32 230 - 231 name: protocol 232 type: u8 233 - 234 name: nh-id 235 type: u32 236 - 237 name: fdb-ext-attrs 238 type: binary 239 - 240 name: flags-ext 241 type: u32 242 enum: ntf-ext-flags 243 - 244 name: ndm-state-mask 245 type: u16 246 - 247 name: ndm-flags-mask 248 type: u8 249 - 250 name: ndt-attrs 251 name-prefix: ndta- 252 attributes: 253 - 254 name: name 255 type: string 256 - 257 name: thresh1 258 type: u32 259 - 260 name: thresh2 261 type: u32 262 - 263 name: thresh3 264 type: u32 265 - 266 name: config 267 type: binary 268 struct: ndt-config 269 - 270 name: parms 271 type: nest 272 nested-attributes: ndtpa-attrs 273 - 274 name: stats 275 type: binary 276 struct: ndt-stats 277 - 278 name: gc-interval 279 type: u64 280 - 281 name: pad 282 type: pad 283 - 284 name: ndtpa-attrs 285 name-prefix: ndtpa- 286 attributes: 287 - 288 name: ifindex 289 type: u32 290 - 291 name: refcnt 292 type: u32 293 - 294 name: reachable-time 295 type: u64 296 - 297 name: base-reachable-time 298 type: u64 299 - 300 name: retrans-time 301 type: u64 302 - 303 name: gc-staletime 304 type: u64 305 - 306 name: delay-probe-time 307 type: u64 308 - 309 name: queue-len 310 type: u32 311 - 312 name: app-probes 313 type: u32 314 - 315 name: ucast-probes 316 type: u32 317 - 318 name: mcast-probes 319 type: u32 320 - 321 name: anycast-delay 322 type: u64 323 - 324 name: proxy-delay 325 type: u64 326 - 327 name: proxy-qlen 328 type: u32 329 - 330 name: locktime 331 type: u64 332 - 333 name: queue-lenbytes 334 type: u32 335 - 336 name: mcast-reprobes 337 type: u32 338 - 339 name: pad 340 type: pad 341 - 342 name: interval-probe-time-ms 343 type: u64 344 checks: 345 min: 1 346 max: 86400000 347 348operations: 349 enum-model: directional 350 name-prefix: rtm- 351 list: 352 - 353 name: newneigh 354 doc: Add new neighbour entry 355 fixed-header: ndmsg 356 attribute-set: neighbour-attrs 357 do: 358 request: 359 value: 28 360 attributes: &neighbour-all 361 - dst 362 - lladdr 363 - probes 364 - vlan 365 - port 366 - vni 367 - ifindex 368 - master 369 - protocol 370 - nh-id 371 - flags-ext 372 - fdb-ext-attrs 373 - 374 name: delneigh 375 doc: Remove an existing neighbour entry 376 fixed-header: ndmsg 377 attribute-set: neighbour-attrs 378 do: 379 request: 380 value: 29 381 attributes: 382 - dst 383 - ifindex 384 - 385 name: delneigh-ntf 386 doc: Notify a neighbour deletion 387 value: 29 388 notify: getneigh 389 fixed-header: ndmsg 390 - 391 name: getneigh 392 doc: Get or dump neighbour entries 393 fixed-header: ndmsg 394 attribute-set: neighbour-attrs 395 do: 396 request: 397 value: 30 398 attributes: 399 - dst 400 reply: 401 value: 28 402 attributes: *neighbour-all 403 dump: 404 request: 405 attributes: 406 - ifindex 407 - master 408 reply: 409 value: 28 410 attributes: *neighbour-all 411 - 412 name: newneigh-ntf 413 doc: Notify a neighbour creation 414 value: 28 415 notify: getneigh 416 fixed-header: ndmsg 417 - 418 name: getneightbl 419 doc: Get or dump neighbour tables 420 fixed-header: ndtmsg 421 attribute-set: ndt-attrs 422 dump: 423 request: 424 value: 66 425 reply: 426 value: 64 427 attributes: 428 - name 429 - thresh1 430 - thresh2 431 - thresh3 432 - config 433 - parms 434 - stats 435 - gc-interval 436 - 437 name: setneightbl 438 doc: Set neighbour tables 439 fixed-header: ndtmsg 440 attribute-set: ndt-attrs 441 do: 442 request: 443 value: 67 444 attributes: 445 - name 446 - thresh1 447 - thresh2 448 - thresh3 449 - parms 450 - gc-interval 451 452mcast-groups: 453 list: 454 - 455 name: rtnlgrp-neigh 456 value: 3 457