First Session-Timeout response error

Ivan Kalik tnt at kalik.net
Tue Jun 30 00:08:32 CEST 2009


> after looking for a solution in different forums and on this mailing
> list without any success I decide to post my problem here.
> I'm having trouble to get the good Session-Timeout at the first request.
> Example: one user with Max-All-Session:=900 try to connect:
>
> root at server:~# radtest jalmjdm nqbnmwcp 127.0.0.1 1812 secret
> Sending Access-Request of id 197 to 127.0.0.1 port 1812
> 	User-Name = "jalmjdm"
> 	User-Password = "nqbnmwcp"
> 	NAS-IP-Address = 127.0.1.1
> 	NAS-Port = 1812
> rad_recv: Access-Accept packet from host 127.0.0.1 port 1812, id=197,
> length=78
> 	WISPr-Redirection-URL = "http://www.google.ca"
> 	WISPr-Bandwidth-Max-Up = 128000
> 	WISPr-Bandwidth-Max-Down = 512000
> 	Session-Timeout = 2537321

Post the debug for such request.

> But the next request give the good answer:
> root at server:~# radtest jalmjdm nqbnmwcp 127.0.0.1 1812 secret
> Sending Access-Request of id 174 to 127.0.0.1 port 1812
> 	User-Name = "jalmjdm"
> 	User-Password = "nqbnmwcp"
> 	NAS-IP-Address = 127.0.1.1
> 	NAS-Port = 1812
> rad_recv: Access-Accept packet from host 127.0.0.1 port 1812, id=174,
> length=78
> 	WISPr-Redirection-URL = "http://www.google.ca"
> 	WISPr-Bandwidth-Max-Up = 128000
> 	WISPr-Bandwidth-Max-Down = 512000
> 	Session-Timeout = 886

It might be of use to see debug of this too.

> I heard about a conflict problem with authorize parameters but I
> haven't figured out how to fix it. Here is my config:
>
> sqlcounter noresetcounter {
>                    counter-name = Max-All-Session-Time
>                    check-name = "Max-All-Session"
>                    sqlmod-inst = sql
>                    key = User-Name
>                    reset = never
>                    query = "SELECT SUM(AcctSessionTime) FROM radacct
> WHERE UserName='%{%k}'"
> }
>
> #############AUHTORIZE SECTION####################
> instantiate {
>          #
>          # Allows the execution of external scripts.
>          # The entire command line (and output) must fit into 253 bytes.
>          #
>          # e.g. Framed-Pool = `%{exec:/bin/echo foo}`
>          exec
>          #
>          #
>          #  The expression module doesn't do authorization,
>          #  authentication, or accounting.  It only does dynamic
>          #  translation, of the form:
>          #
>          #       Session-Timeout = `%{expr:2 + 3}`
>
>          #  So the module needs to be instantiated, but CANNOT be
>          #  listed in any other section.  See 'doc/rlm_expr' for
>          expr
>          noresetcounter
>          expiration
>          logintime
> }
>
> authorize {
>          preprocess
>          suffix
>          chap
>          mschap
>          sql
>          files
>          noresetcounter
>          hourlycounter
>          dailycounter
>          monthlycounter
>          weeklycounter
>          yearlycounter
>
>          totaloctetyearlycounter
>          totaloctetmonthlycounter
>          totaloctethourlycounter
>          totaloctetdaylycounter
>
>          outputyearlycounter
>          outputmonthlycounter
>          outputhourlycounter
>          outputdaylycounter
>
>          inputyearlycounter
>          inputmonthlycounter
>          inputhourlycounter
>          inputdaylycounter
> }

You actually use *all* these counters?

Ivan Kalik
Kalik Informatika ISP




More information about the Freeradius-Users mailing list