似乎缺少有关如何在 FreeRADIUS 中使用 python 模块的文档。
我想使用 python 来解释一个 MAC 地址(在 %{Calling-Station-ID} 中)并返回一个 IP 地址。
在我的sites-enabled/default
我有:
accounting {
...
python
update request {
Framed-IP-Address := "%{python:/path/python-script -m %{Calling-Station-ID}}"
}
这将返回:
WARNING: Unknown module "python" in string expansion "%"
为 FreeRADIUS 创建 python 模块的正确方法是什么?
编辑:
我发现我可以这样做:
Framed-IP-Address := `/usr/bin/python /path/python-script -m "%{Calling-Station-Id}"`
这将返回以下内容:
+- entering group accounting {...}
expand: "%{Calling-Station-Id}" -> "XX-XX-XX-XX-XX-XX"
Exec-Program output: None
Exec-Program-Wait: plaintext: None
Exec-Program: returned: 0
ERROR: Failed parsing value "None" for attribute Framed-IP-Address: Failed to find IP address for None
++[reply] returns fail
正确的方法是不带引号:
在我上面的例子中,我引用了
%{Calling-Station-Id}
.