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

Add support for IPv6 ranges #6888

Open
3 tasks
gigatux opened this issue Feb 1, 2025 · 1 comment
Open
3 tasks

Add support for IPv6 ranges #6888

gigatux opened this issue Feb 1, 2025 · 1 comment

Comments

@gigatux
Copy link

gigatux commented Feb 1, 2025

Description
Allow OpenNebula to handle the assignment of IPv6 ranges, e.g. /64s, to individual VMs.

Use case
This is 2025. Even home ISPs often offer IPv6 ranges to customers, e.g. /64s or even /56s. OpenNebula only allows management of IPv6 addresses at the individual address level, i.e. /128s.

RFC6177 deprecates assigning /128s and suggests at least /56s

Interface Changes

  • We would probably need another type of IPv6 address range, e.g. IP6_SUBNETS. This would be necessary to ensure existing installs behave as expected.
  • SIZE should be based on the number of PREFIX_LENGTHs, e.g. it would be 16 if you had a /60 you wanted to split into /64s. Maybe even SIZE being the exponent in the 2^x calculation, e.g. 4 in the above example. Otherwise, SIZE would need to be some sort of awful 128-bit integer.
  • The full subnet should allocated to the VM (shown correctly in the UI, and with firewall rules created).
  • The VM’s interfaces should be correctly configured, at least with maybe the :: address or similar set up.

Additional Context
At present, we have to manually add firewall rules to customers to allow these ranges through to their VMs, and we need to keep track of ranges allocated off-system.

Progress Status

  • Code committed
  • Testing - QA
  • Documentation (Release notes - resolved issues, compatibility, known issues)
@ItzExotical
Copy link

Bumping this 🤓

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

No branches or pull requests

3 participants