Внес Ваши изменения. Работает.
Выполнил с десяток
CALL radreply_dhcp('74:e5:43:8f:c1:17', 'accel-ppp-ipoe')
Все выдавало в рамках нужного пула.
Скажите а radupdate нужного редактировать в данном случае?
Он у меня такого вида
DROP PROCEDURE IF EXISTS `radupdate`;
DELIMITER $$
CREATE PROCEDURE `radupdate`(
IN login VARCHAR(64), IN ipa VARCHAR(16), IN properties VARCHAR(255))
BEGIN
DECLARE usr_mac VARCHAR(16);
SELECT REPLACE(login, ':', '') INTO usr_mac;
CALL set_auth(ipa, CONCAT('mod=dhcp;user=', usr_mac, ';', REPLACE(properties,':','')));
UPDATE mac_uid SET time=UNIX_TIMESTAMP() WHERE ip=INET_ATON(ipa) LIMIT 1;
END$$
DELIMITER ;
updНаверно нужно так как радиус сыпит такое
[sql] expand: call radupdate_dhcp('%{User-Name}','%{reply:Framed-IP-Address}','nas=%{NAS-IP-Address}', '%{NAS-Identifier}') -> call radupdate_dhcp('8c:1a:bf:26:a6:5d','10.194.6.231','nas=172.20.0.2', 'accel-ppp-ipoe')
rlm_sql (sql) in sql_postauth: query is call radupdate_dhcp('8c:1a:bf:26:a6:5d','10.194.6.231','nas=172.20.0.2', 'accel-ppp-ipoe')
rlm_sql (sql): Reserving sql socket id: 26
rlm_sql_mysql: MYSQL check_error: 1318 received
rlm_sql (sql) in sql_postauth: Database query error - Incorrect number of arguments for PROCEDURE nodeny.radupdate_dhcp; expected 3, got 4
rlm_sql (sql): Released sql socket id: 26
++[sql] = fail
+} # group post-auth = fail
sql.conf привел к такому виду
authorize_check_query = "call radcheck_dhcp('%{User-Name}')"
authorize_reply_query = "call radreply_dhcp('%{User-Name}', '%{NAS-Identifier}')"
postauth_query = "call radupdate_dhcp('%{User-Name}','%{reply:Framed-IP-Address}','nas=%{NAS-IP-Address}', '%{NAS-Identifier}')"
accounting_update_query = "call radupdate_dhcp('%{User-Name}','%{Framed-IP-Address}','nas=%{NAS-IP-Address}', '%{NAS-Identifier}')"