my nas client is pptp and ppp, how can i set pptp to send updates every 5 minutes?<br><br><div class="gmail_quote">On Tue, Jun 1, 2010 at 7:13 PM, Marinko Tarlac <span dir="ltr"><<a href="mailto:mangia81@gmail.com">mangia81@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">Here we go again<br>
<br>
1. add datetime column at the end of radacct table (name it for example last_update_column)<br>
2. edit queries in dialup.conf (for 2.x FR) or sql.conf (for 1.x FR) so every update will update this column to (for example update radacct set ........, last_update_column = NOW() ).<br>
<br>
Now you will have the correct time when was the last update for specific session.<br>
<br>
3. write php, perl, shell or any other script which you can start with cron and check if there is any active sessions (acctstoptime = null or acctstoptime = 0) which last update was X minutes ago.<br>
<br>
For example, X can be 11 minutes and you can set up your NAS to send updates every 5 minutes. This means that you can have at least 2 updates before you close session with cron script. <br>
This is not the only way to solve this problem but it works with all FR version, and it doesn't depend on your NAS(es). Also, this isn't ideal solution because if your NAS goes off and on again before you received stop packets, all users will need to wait X minutes before they can connect again. (there are no updates so last_update_column will be unchanged and the cron script will close all sessions after X minutes)<br>

<br>
<br>
Spacelee wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
sorry, does the <a href="http://radcheck.pl" target="_blank">radcheck.pl</a> <<a href="http://radcheck.pl" target="_blank">http://radcheck.pl</a>> included in freeradius now? does you mean /usr/sbin/checkrad ?<div class="im">
<br>
<br>
<br>
and i search the keywords "Simultaneous mysql radius down" , but found no results i need.<br>
<br></div>
2010/6/1 Anton <<a href="mailto:warm@stack.ru" target="_blank">warm@stack.ru</a> <mailto:<a href="mailto:warm@stack.ru" target="_blank">warm@stack.ru</a>>><div class="im"><br>
<br>
    It should be done by NAS. For example PPPoE and PPTP have lcp<br>
    packets, If no response for some time from<br>
    client to NAS then NAS decides that session is down and sends<br>
    acct-stop packet to radius server. Radius<br>
    server sets the corresponding record to SQL session table.<br>
<br>
    Or there is another method: depending on NAS type radiusd can<br>
    connect to NAS and check activity of user<br>
    session directly on NAS - this is more reliable source of<br></div>
    information. See <a href="http://radcheck.pl" target="_blank">radcheck.pl</a> <<a href="http://radcheck.pl" target="_blank">http://radcheck.pl</a>>.<div class="im"><br>
<br>
<br>
    On Tue, 1 Jun 2010 16:24:54 +0700<br></div><div><div></div><div class="h5">
    Spacelee <<a href="mailto:fjctlzy@gmail.com" target="_blank">fjctlzy@gmail.com</a> <mailto:<a href="mailto:fjctlzy@gmail.com" target="_blank">fjctlzy@gmail.com</a>>> wrote:<br>
<br>
    ><br>
    > i want to limit user's behavior, such as a username can login<br>
    only once at the same time...<br>
    ><br>
    > 1、modifiy default and inner-tunnel in<br>
    ><br>
    > #  Session database, used for checking Simultaneous-Use. Either<br>
    the radutmp<br>
    > #  or rlm_sql module can handle this.<br>
    > #  The rlm_sql module is *much* faster<br>
    > session {<br>
    >         #radutmp<br>
    ><br>
    >         #  See "Simultaneous Use Checking Querie" in sql.conf<br>
    >         sql<br>
    ><br>
    > }<br>
    > 2、modify dialup.conf in etc/raddb/sql/mysql<br>
    ><br>
    > # Uncomment simul_count_query to enable simultaneous use checking<br>
    ><br>
    > simul_count_query = "SELECT COUNT(*) \<br>
    >                             FROM ${acct_table1} \<br>
    >                             WHERE username = '%{SQL-User-Name}' \<br>
    >                              AND acctstoptime IS NULL"<br>
    ><br>
    > 3、add a entry to the table radgorucheck<br>
    > INSERT INTO `radgroupcheck` ( `id` , `GroupName` , `Attribute` ,<br>
    `op` , `Value` )<br>
    > VALUES (<br>
    > NULL , ’user’, ’Simultaneous-Use’, ’:=’, ’1’<br>
    > );<br>
    ><br>
    > 4. update the user "test"  to the group "user"<br>
    ><br>
    ><br>
    > i finally tried successfully, but if , i say if the radius<br>
    server was down suddenly or the user logout<br>
    > improperly(such as he poweroff the computer directly). then the<br>
    record will still be record in the table as<br>
    > he was still online ...so we need to modify the record, but how<br>
    to ? can freeradius judge it by itself, or<br>
    > how to judge the user if offline ?<br>
    ><br>
    > --<br>
    > Spacelee<br>
    ><br>
    ><br>
    ><br>
    > --<br>
    > Spacelee<br>
<br>
<br>
    --<br>
    Anton [WARM-RIPE]<br>
    Stack ltd division head<br>
    tel. 8 (3822) 555-797<br>
<br>
<br>
    -<br>
    List info/subscribe/unsubscribe? See<br>
    <a href="http://www.freeradius.org/list/users.html" target="_blank">http://www.freeradius.org/list/users.html</a><br>
<br>
<br>
<br>
<br>
-- <br>
Spacelee<br></div></div>
------------------------------------------------------------------------<div class="im"><br>
<br>
-<br>
List info/subscribe/unsubscribe? See <a href="http://www.freeradius.org/list/users.html" target="_blank">http://www.freeradius.org/list/users.html</a><br>
</div></blockquote><div><div></div><div class="h5">
<br>
-<br>
List info/subscribe/unsubscribe? See <a href="http://www.freeradius.org/list/users.html" target="_blank">http://www.freeradius.org/list/users.html</a></div></div></blockquote></div><br><br clear="all"><br>-- <br>Spacelee<br>