Page MenuHomeFreeBSD

ndp: implement delayed anycast and proxy NA
ClosedPublic

Authored by pouria on Feb 6 2026, 8:43 AM.
Tags
None
Referenced Files
Unknown Object (File)
Sat, Apr 18, 3:38 AM
Unknown Object (File)
Wed, Apr 15, 10:04 AM
Unknown Object (File)
Sat, Apr 11, 10:54 PM
Unknown Object (File)
Sat, Apr 11, 1:15 AM
Unknown Object (File)
Fri, Apr 10, 6:24 AM
Unknown Object (File)
Wed, Apr 8, 9:49 AM
Unknown Object (File)
Tue, Apr 7, 6:05 PM
Unknown Object (File)
Tue, Apr 7, 7:17 AM
Subscribers

Details

Summary

the following items are implemented:

  • proxy advertisement delay rule (RFC4861 7.2.8, last paragraph, SHOULD)
  • anycast advertisement delay rule (RFC4861 7.2.7, SHOULD)
Test Plan

set an anycast address on host A

ifconfig vtnet0 inet6 3fff::1 anycast

ping it from host B

ping -c2 3fff::1

your first response must have a random delay between 0 and 1 seconds.
repeat this process by removing the ndp cache from host B and you must see a
different response time.

ndp -d 3fff::1
ping -c2 3fff::1

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

pouria requested review of this revision.Feb 6 2026, 8:43 AM

Update by rebase to main. follow update by parent revision.

@glebius this revision is an extention of GRAND which only affects anycast and proxy ipv6 addresses.
Could you please review it c-wise?

sys/netinet6/nd6_nbr.c
1808

You got 6 and 9 reversed here I think; you probably meant RFC 4861.

Address @bms comments.
Thank you!

Rebase to main and resolve conflicts

This revision was not accepted when it landed; it landed in state Needs Review.Mar 9 2026, 7:06 PM
This revision was automatically updated to reflect the committed changes.