Centos 6.x で FreeRadius サーバーを構成し、mysql データベースで認証が正常に機能します。しかし、sqlcounter を使用して、mysql データベースからユーザーを使用して事前に合計帯域幅を確認することはできません。
私は次のように sqlcount を作成します。
sqlcounter wifi_Limit{
count-attribute = Acct-Input-Octets
counter-name = Mikrotik-Total-Limit
check-name = Mikrotik-Total-Limit
reply-name = Session-Timeout
sqlmod-inst = sql
key = User-Name
reset = never
query = "SELECT ((SUM(AcctInputOctets)+SUM(AcctOutputOctets))) FROM radacct WHERE UserName='%{%k}'"
}
また、次のように「サイトで利用可能なデフォルト」authorize{} に wifi_limite を挿入します。
poyrazwifi_Limit{
reject = 1
}
if(reject){
reject
}
そして、次のように radcheck に「Mikrotik-Total-Limit」属性を挿入します。
insert into radcheck(username,attribute,op,value) values('test','Mikrotik-Total-Limit',':=','999999')
現在、この構成は、ユーザーが総帯域幅「999999」を使用した後、pppoe 接続を手動で切断した後、このユーザーが再度ログインできなくなった場合に正常に機能します。
しかし、総帯域幅「999999」を使用すると、ユーザーを自動的に切断するのが好きです。
この問題を解決する方法を教えてください。ありがとうございました