我们使用Coova Chilli和Freeradius进行wifi身份验证。
有时,即使我们的acctstoptime不为null,我们也会在nas上看到人们保持联系。如果我仔细观察,可以看到acctupdatetime继续增加了而没有acctterminatecause。 (空白字段)
在查看了文件mysql / query.conf之后,我在临时更新中看到了这一点:
query = "\
UPDATE ${....acct_table1} \
SET \
acctupdatetime = (@acctupdatetime_old:=acctupdatetime), \
acctupdatetime = FROM_UNIXTIME(\
%{integer:Event-Timestamp}), \
acctinterval = %{integer:Event-Timestamp} - \
UNIX_TIMESTAMP(@acctupdatetime_old), \
您看到两次acctupdatetime吗?那是正常的吗?我看了其他的mod,却没有看到它的双重效果。
最佳答案
对我来说,听起来像是Acct-Session-ID重用。该标识符对于NAS来说是唯一的,并且在时间上是唯一的,但是许多供应商不遵守此要求。我已经看到这种情况发生在Cisco WLC上,STA在AP之间漫游。该会话将停止,然后在不更改Acct-Session-ID的情况下重新启动。
您可以更改查询以重新打开会话,即,如果收到临时消息,则将acctstoptime设置为NULL,但恐怕就是这样。
关于mysql - query.conf上的double acctupdateinterval(临时更新部分),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/50834739/