Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

I see that the code for SLAAC for IPV6 is empty. Is there a plan to support SLAAC? #1234

Open
Elsa-is-My-Muse opened this issue Mar 18, 2025 · 2 comments

Comments

@Elsa-is-My-Muse
Copy link

Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

Describe the solution you'd like
A clear and concise description of what you want to happen.

Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.

Additional context
Add any other context or screenshots about the feature request here.

@htibosch
Copy link
Contributor

htibosch commented Mar 18, 2025

What makes you thing that SLAAC processing is not included?

    #if ( ipconfigUSE_RA != 0 )

/**
 * @brief Work on the RA/SLAAC processing.
 * @param[in] xDoReset: When true, the state-machine will be reset and initialised.
 * @param[in] pxEndPoint: The end-point for which the RA/SLAAC process should be done..
 */
        void vRAProcess( BaseType_t xDoReset,
                         NetworkEndPoint_t * pxEndPoint );
    #endif /* ( ipconfigUSE_RA != 0 ) */

In FreeRTOS+TCP, DHCP is implemented for both IPv4 and IPv6.

For IPv6, beside DHCP, there is also "RA", or router advertising. The complete name should be "RA/SLAAC".

To summarise it (roughly):
An IPv6 enabled router advertises itself and the properties of the IPv6 network.
Note that IPv6 network often has a ton of available IP addresses.
When using "RA/SLAAC", a starting device chooses a random IP-address, and it will try it out using Duplicate Address Detection. When the IP-address is in use, it will receive a reply.
After probing a certain number of times, using fixed timeouts, it will decide to keep using the IP-address.
After a cold- or warm reboot, the device will choose a new random IP/address.

For more information, see for instance: wikipedia

@htibosch
Copy link
Contributor

Hello @Elsa-is-My-Muse, I assume that the issue is solved by now?
Thanks

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants