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 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 345operations: 346 enum-model: directional 347 name-prefix: rtm- 348 list: 349 - 350 name: newneigh 351 doc: Add new neighbour entry 352 fixed-header: ndmsg 353 attribute-set: neighbour-attrs 354 do: 355 request: 356 value: 28 357 attributes: &neighbour-all 358 - dst 359 - lladdr 360 - probes 361 - vlan 362 - port 363 - vni 364 - ifindex 365 - master 366 - protocol 367 - nh-id 368 - flags-ext 369 - fdb-ext-attrs 370 - 371 name: delneigh 372 doc: Remove an existing neighbour entry 373 fixed-header: ndmsg 374 attribute-set: neighbour-attrs 375 do: 376 request: 377 value: 29 378 attributes: 379 - dst 380 - ifindex 381 - 382 name: delneigh-ntf 383 doc: Notify a neighbour deletion 384 value: 29 385 notify: getneigh 386 fixed-header: ndmsg 387 - 388 name: getneigh 389 doc: Get or dump neighbour entries 390 fixed-header: ndmsg 391 attribute-set: neighbour-attrs 392 do: 393 request: 394 value: 30 395 attributes: 396 - dst 397 reply: 398 value: 28 399 attributes: *neighbour-all 400 dump: 401 request: 402 attributes: 403 - ifindex 404 - master 405 reply: 406 value: 28 407 attributes: *neighbour-all 408 - 409 name: newneigh-ntf 410 doc: Notify a neighbour creation 411 value: 28 412 notify: getneigh 413 fixed-header: ndmsg 414 - 415 name: getneightbl 416 doc: Get or dump neighbour tables 417 fixed-header: ndtmsg 418 attribute-set: ndt-attrs 419 dump: 420 request: 421 value: 66 422 reply: 423 value: 64 424 attributes: 425 - name 426 - thresh1 427 - thresh2 428 - thresh3 429 - config 430 - parms 431 - stats 432 - gc-interval 433 - 434 name: setneightbl 435 doc: Set neighbour tables 436 fixed-header: ndtmsg 437 attribute-set: ndt-attrs 438 do: 439 request: 440 value: 67 441 attributes: 442 - name 443 - thresh1 444 - thresh2 445 - thresh3 446 - parms 447 - gc-interval 448 449mcast-groups: 450 list: 451 - 452 name: rtnlgrp-neigh 453 value: 3 454