rlm_sqlippool

Peter Nixon listuser at peternixon.net
Sun Aug 27 17:05:18 CEST 2006


On Sat 26 Aug 2006 23:09, Chris Knipe wrote:
> Hi,
>
> I know this is new, and not yet documented, but I saw some good posts about
> it being stable, so I'm looking at implementing it at the moment... But
> alas, I'm confused and the lack of documentation is not helping.
>
> doc/rlm_sqlippool states:
> The only required fields are, pool_name and ip_address. A pool consists
> of one or more rows in the table with the same pool_name and a different
> ip_address. The is no restriction on which ip addresses/ranges may be in
> the same pool, and addresses do not need to be concurrent.
>
> Yet, raddb/sqlippool.conf, makes absolutely NO sense to me at the moment at
> all, and there is WAY more than merely a pool name and a IP address
> referenced in the queries...  I understand that there is some unique
> elements required in the table to indicate that a IP is allocated, and to
> know where the IP is allocated (and obviously to release that IP once the
> session terminates).

it is really not that complex :-) As the docs state put one or more records in 
the tabe with a pool_name and ip_address and then use the pool_name the same 
way you do with the standard ippool module. Thats it.

> Can someone perhaps please just take a moment to explain what exactly is
> going on in those queries??  I'm not referring to the SQL as such, but
> rather as to what is updated, and why.  A table structure accompanying
> those queries in sqlippool.conf may help significantly as well, as I'm
> guessing at the moment what needs to go where :(

The table structure is in the same file as all the rest of the database schema 
at doc/examples/postgresql.sql

For reference it is:

CREATE TABLE radippool (
        id                      BIGSERIAL PRIMARY KEY,
        pool_name               text NOT NULL,
        FramedIPAddress         INET,
        NASIPAddress            text NOT NULL,
        CalledStationId         VARCHAR(64),
        CallingStationId        text DEFAULT ''::text NOT NULL,
        expiry_time             TIMESTAMP(0) without time zone NOT NULL,
        username                text DEFAULT ''::text,
        pool_key                VARCHAR(30) NOT NULL
);

I have only tested this with Postgresql, although I will probably be testing 
on Oracle at some point. If you want to test it on some other database you 
are welcome. Please report the results :-)

Regards

-- 

Peter Nixon
http://www.peternixon.net/
PGP Key: http://www.peternixon.net/public.asc
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
URL: <http://lists.freeradius.org/pipermail/freeradius-users/attachments/20060827/a0a8dd52/attachment.pgp>


More information about the Freeradius-Users mailing list