Delegated-IPv6-Prefix & sqlippool
Hello folks, I am currently checking for the possibility of using the sqlippool module to assign dynamically delegated IPv6 Prefixes. I found out that there is an option in the module to activate the IPv6 support and start assigning IPv6 address as well as traditional IPv4, but this option is only handling the creation of reply attribute 'Framed-IPv6-Prefix'. From the module's code on github, I also confirm that sqlippool doesn't seem to be ready to handle Delegated-IPv6-Prefix attribute. Does anybody know if this option might be interesting to be integrated in the code ? Is there any plan to add such option ? For information we are currently assigning Delegated IPv6 prefixes to customer thanks to an entry per customer in the radreply table and are copying the job of the sqlippool in an algorithm outside of the radius server. We do have a pool of available prefixes in an external database - when a customer subscribes we are picking up a prefix and populate it in the radreply - when the customer unsubscribe we are deleting the radreply entry and make the prefix available again in our external database. Many thanks for your replies. Maxime.
On Jun 28, 2017, at 4:28 PM, maxime.gerges@ariane.network wrote:
I am currently checking for the possibility of using the sqlippool module to assign dynamically delegated IPv6 Prefixes.
I found out that there is an option in the module to activate the IPv6 support and start assigning IPv6 address as well as traditional IPv4, but this option is only handling the creation of reply attribute 'Framed-IPv6-Prefix'.
From the module's code on github, I also confirm that sqlippool doesn't seem to be ready to handle Delegated-IPv6-Prefix attribute.
Yes, it really only does IP assignment.
Does anybody know if this option might be interesting to be integrated in the code ? Is there any plan to add such option ?
We're always interested in new code and new functionality. There's no plan for us to add it, as we're busy working on the v4 re-architecture.
For information we are currently assigning Delegated IPv6 prefixes to customer thanks to an entry per customer in the radreply table and are copying the job of the sqlippool in an algorithm outside of the radius server.
That works, but is imperfect.
We do have a pool of available prefixes in an external database - when a customer subscribes we are picking up a prefix and populate it in the radreply - when the customer unsubscribe we are deleting the radreply entry and make the prefix available again in our external database.
It may be better to write a new module. Just copy the sqlippool, and make a new one which is better-suited for Delegated-IPv6-prefixes. Alan DeKok.
On 28 Jun 2017, at 17:13, Alan DeKok <aland@deployingradius.com> wrote:
On Jun 28, 2017, at 4:28 PM, maxime.gerges@ariane.network wrote:
I am currently checking for the possibility of using the sqlippool module to assign dynamically delegated IPv6 Prefixes.
I found out that there is an option in the module to activate the IPv6 support and start assigning IPv6 address as well as traditional IPv4, but this option is only handling the creation of reply attribute 'Framed-IPv6-Prefix'.
From the module's code on github, I also confirm that sqlippool doesn't seem to be ready to handle Delegated-IPv6-Prefix attribute.
Yes, it really only does IP assignment.
Does anybody know if this option might be interesting to be integrated in the code ? Is there any plan to add such option ?
We're always interested in new code and new functionality. There's no plan for us to add it, as we're busy working on the v4 re-architecture.
For information we are currently assigning Delegated IPv6 prefixes to customer thanks to an entry per customer in the radreply table and are copying the job of the sqlippool in an algorithm outside of the radius server.
That works, but is imperfect.
We do have a pool of available prefixes in an external database - when a customer subscribes we are picking up a prefix and populate it in the radreply - when the customer unsubscribe we are deleting the radreply entry and make the prefix available again in our external database.
It may be better to write a new module. Just copy the sqlippool, and make a new one which is better-suited for Delegated-IPv6-prefixes.
Though such a major change should not be merged into v3.0.x. Just making the output attribute selectable is a relatively small patch and probably much easier. They’re both v6 prefix types, so there’s no advantage in duplicating all that logic. -Arran
We do have a pool of available prefixes in an external database - when a customer subscribes we are picking up a prefix and populate it in the radreply - when the customer unsubscribe we are deleting the radreply entry and make the prefix available again in our external database.
It may be better to write a new module. Just copy the sqlippool, and make a new one which is better-suited for Delegated-IPv6-prefixes.
Though such a major change should not be merged into v3.0.x. Just making the output attribute selectable is a relatively small patch and probably much easier.
They’re both v6 prefix types, so there’s no advantage in duplicating all that logic.
Thanks both for your feedback! I will try to patch the sqlippool module to add the support of assigning IPv6 Prefix Delegation (PD). In order to design the patch I will need the following answers if possible : 1. How is the allocation of both IPv4 and IPv6 address handled ? By this I was wondering if a user has 2 VP 'Pool-Name' defined, will the sqlippool run twice ? As an example a user might have a first VP 'Pool-Name := pool_ipv4' for the IPv4 address allocation and a 'VP Pool-Name := pool_ipv6' for the IPv6 address allocation. 2. Is it even possible to have several Pool-Name VP for a user ? Maxime.
On Jun 29, 2017, at 3:07 AM, maxime.gerges@ariane.network wrote:
I will try to patch the sqlippool module to add the support of assigning IPv6 Prefix Delegation (PD). In order to design the patch I will need the following answers if possible :
Thanks.
1. How is the allocation of both IPv4 and IPv6 address handled ?
You need two pools.
By this I was wondering if a user has 2 VP 'Pool-Name' defined, will the sqlippool run twice ?
No. You have to configure two pools, and two instances of the sqlippool module.
As an example a user might have a first VP 'Pool-Name := pool_ipv4' for the IPv4 address allocation and a 'VP Pool-Name := pool_ipv6' for the IPv6 address allocation.
2. Is it even possible to have several Pool-Name VP for a user ?
Yes. The way the module is written, though, it tries to do allocation if it runs. So you will need to use unlang to determine which module to run: if (user asked for v4 ) { run v4 pool } else { run v6 pool } Alan DeKok.
participants (3)
-
Alan DeKok -
Arran Cudbard-Bell -
maxime.gerges@ariane.network