radius_put_addr() 还不支持 IPv6
解决方法是使用 IPv6 时使用 radius_put_string
(PECL radius >= 1.1.0)
radius_put_addr — 附加 IP 地址属性
radius_handle
RADIUS 资源。
type
属性类型。
addr
以字符串形式表示的 IPv4 地址,例如 10.0.0.1
。
options
属性选项的位掩码。 可用的选项包括 RADIUS_OPTION_TAGGED
和 RADIUS_OPTION_SALT
。
tag
属性标签。 除非设置了 RADIUS_OPTION_TAGGED
选项,否则会忽略此参数。
版本 | 描述 |
---|---|
PECL radius 1.3.0 | 添加了 options 和 tag 参数。 |
radius_put_addr() 还不支持 IPv6
解决方法是使用 IPv6 时使用 radius_put_string
附加 IPv6 前缀属性
$ipv6Prefix = "2001:1111:2222:3333::";
$ipv6PrefixLength = "64";
// Framed-IPv6-Prefix
radius_put_attr($res, 97, chr(0).chr($ipv6PrefixLength).inet_pton($ipv6Prefix));
// Delegated-IPv6-Prefix
radius_put_attr($res, 123, chr(0).chr($ipv6PrefixLength).inet_pton($ipv6Prefix));