Im still having trouble with this problem, I switched the pool key to NAS port, the expiry time is 24 hours, and it seems after 24 hours, it wipes all the existing entries from the database, again re-assigning IP's that are already in use, these IPs could be used indefinitely by some customers assuming they don't disconnect, I guess the sqlippool.conf seems to think that the stop packets are lost..? I can make an attempt at upgrading to 2.0 but Im concerned with downtime if I cant get the new version up quick enough, how much do the configuration files need to be changed for the new version? Peter Nixon wrote:
On Tue 03 Jul 2007, Dave wrote:
Hugh Messenger wrote:
Dave <dave@optionsdsl.ca> said:
I use the sqlippool setup for handling IP pools, and it works well, except I want to rid of the expiry time, (maximum timeout=0). right now its setting for 24 hours, and then it cleans itself out, and then freeradius starts handing out already assigned/used IP addresses. Im not sure where to put the maximum timeout=0 value when using sqlippool.
That shouldn't happen, regardless of the expiry time. The expiry_time value in the radippool entries is derived from the 'lease-duraction' set in sqlippool.conf. But the expiry_time should only affect clearing unique sessions which have gotten "stuck" (like for lost 'stop' packets). It shouldn't just start handing out in-use IP's based on expiry time.
What do you have $pool-key set to in sqlippool.conf? And are you sure whatever value you are using (usually either NAS-Port or Calling-Station-Id) is a unique value from the NAS?
I have pool-key = "%{Calling-Station-Id}", which I just realized is not always unique, (NAS is returning MAC address for Calling station ID, which if passing thru one of my bridge devices always returns the MAC address of the ethernet bridge)
Yep. That would cause havoc. Use pool-key = "%{NAS-Port}" unless you have a very good reason not to!
What flavor of db do you have - postgres or mysql? They use different configs, and depending where you got the query file from, you may have an earlier broken version (especially if you are using MySQL).
What version of freeradius are you running?
Im using mysql, and I believe I have a working version of sqlippool.conf, Ill paste it here. Freeradius 1.1.6
-snip-
Hugh recently spent quite some effort sending and testing patches for rlm_sqlippool with MySQL. They are in cvs head as of a few days ago. As always, I recommend sqlippool users run 2.0preX or cvs head as we have made a lot of changed since 1.1.x which have not been backported.
Cheers