#
# This series of queries allocates an IP address
# (Note: If your pool_key is set to Calling-Station-Id and not NAS-Port
-# then you may wish to delete the "AND nasipaddress = '%{Nas-IP-Address}'
+# then you may wish to delete the "AND nasipaddress = '%{%{Nas-IP-Address}:-%{Nas-IPv6-Address}}'
# from the WHERE clause)
#
allocate_clear = "\
username = '', \
expiry_time = NULL \
WHERE expiry_time <= NOW() - INTERVAL 1 SECOND \
- AND nasipaddress = '%{Nas-IP-Address}'"
+ AND nasipaddress = '%{%{Nas-IP-Address}:-%{Nas-IPv6-Address}}'"
#
# The ORDER BY clause of this query tries to allocate the same IP-address
callingstationid = '', \
username = '', \
expiry_time = NULL \
- WHERE nasipaddress = '%{Nas-IP-Address}' \
+ WHERE nasipaddress = '%{%{Nas-IP-Address}:-%{Nas-IPv6-Address}}' \
AND pool_key = '${pool_key}' \
AND username = '%{User-Name}' \
AND callingstationid = '%{Calling-Station-Id}' \
UPDATE ${ippool_table} \
SET \
expiry_time = NOW() + INTERVAL ${lease_duration} SECOND \
- WHERE nasipaddress = '%{Nas-IP-Address}' \
+ WHERE nasipaddress = '%{%{Nas-IP-Address}:-%{Nas-IPv6-Address}}' \
AND pool_key = '${pool_key}' \
AND username = '%{User-Name}' \
AND callingstationid = '%{Calling-Station-Id}' \
callingstationid = '', \
username = '', \
expiry_time = NULL \
- WHERE nasipaddress = '%{Nas-IP-Address}'"
+ WHERE nasipaddress = '%{%{Nas-IP-Address}:-%{Nas-IPv6-Address}}'"
#
# This series of queries frees the IP numbers allocate to a
callingstationid = '', \
username = '', \
expiry_time = NULL \
- WHERE nasipaddress = '%{Nas-IP-Address}'"
+ WHERE nasipaddress = '%{%{Nas-IP-Address}:-%{Nas-IPv6-Address}}'"
# as your "pool_key" and your users are able to reconnect before your NAS
# has timed out their previous session. (Generally on wireless networks)
# (Note: If your pool_key is set to Calling-Station-Id and not NAS-Port
-# then you may wish to delete the "AND nasipaddress = '%{Nas-IP-Address}'
+# then you may wish to delete the "AND nasipaddress = '%{%{Nas-IP-Address}:-%{Nas-IPv6-Address}}'
# from the WHERE clause)
#
allocate_clear = "\
pool_key = 0, \
callingstationid = '', \
expiry_time = current_timestamp - INTERVAL '1' second(1) \
- WHERE nasipaddress = '%{Nas-IP-Address}' \
+ WHERE nasipaddress = '%{%{Nas-IP-Address}:-%{Nas-IPv6-Address}}' \
AND pool_key = '${pool_key}' \
AND username = '%{SQL-User-Name}' \
AND callingstationid = '%{Calling-Station-Id}'"
UPDATE ${ippool_table} \
SET \
expiry_time = current_timestamp + INTERVAL '${lease_duration}' second(1) \
- WHERE nasipaddress = '%{Nas-IP-Address}' \
+ WHERE nasipaddress = '%{%{Nas-IP-Address}:-%{Nas-IPv6-Address}}' \
AND pool_key = '${pool_key}' \
AND framedipaddress = '%{${attribute_name}}' \
AND username = '%{SQL-User-Name}' \
pool_key = 0, \
callingstationid = '', \
expiry_time = current_timestamp - INTERVAL '1' second(1) \
- WHERE nasipaddress = '%{Nas-IP-Address}'"
+ WHERE nasipaddress = '%{%{Nas-IP-Address}:-%{Nas-IPv6-Address}}'"
#
# This query frees all IP addresses allocated to a NAS when an
pool_key = 0, \
callingstationid = '', \
expiry_time = current_timestamp - INTERVAL '1' second(1) \
- WHERE nasipaddress = '%{Nas-IP-Address}'"
+ WHERE nasipaddress = '%{%{Nas-IP-Address}:-%{Nas-IPv6-Address}}'"
# as your "pool_key" and your users are able to reconnect before your NAS
# has timed out their previous session. (Generally on wireless networks)
# (Note: If your pool_key is set to Calling-Station-Id and not NAS-Port
-# then you may wish to delete the "AND nasipaddress = '%{Nas-IP-Address}'
+# then you may wish to delete the "AND nasipaddress = '%{%{Nas-IP-Address}:-%{Nas-IPv6-Address}}'
# from the WHERE clause)
#
allocate_clear = "\
pool_key = 0, \
callingstationid = '', \
expiry_time = 'now'::timestamp(0) - '1 second'::interval \
- WHERE nasipaddress = '%{Nas-IP-Address}' \
+ WHERE nasipaddress = '%{%{Nas-IP-Address}:-%{Nas-IPv6-Address}}' \
AND pool_key = '${pool_key}' \
AND username = '%{SQL-User-Name}' \
AND callingstationid = '%{Calling-Station-Id}' \
UPDATE ${ippool_table} \
SET \
expiry_time = 'now'::timestamp(0) + '${lease_duration} seconds'::interval \
- WHERE nasipaddress = '%{Nas-IP-Address}' \
+ WHERE nasipaddress = '%{%{Nas-IP-Address}:-%{Nas-IPv6-Address}}' \
AND pool_key = '${pool_key}' \
AND framedipaddress = '%{${attribute_name}}' \
AND username = '%{SQL-User-Name}' \
pool_key = 0, \
callingstationid = '', \
expiry_time = 'now'::timestamp(0) - '1 second'::interval \
- WHERE nasipaddress = '%{Nas-IP-Address}'"
+ WHERE nasipaddress = '%{%{Nas-IP-Address}:-%{Nas-IPv6-Address}}'"
#
# This query frees all IP addresses allocated to a NAS when an
pool_key = 0, \
callingstationid = '', \
expiry_time = 'now'::timestamp(0) - '1 second'::interval \
- WHERE nasipaddress = '%{Nas-IP-Address}'"
+ WHERE nasipaddress = '%{%{Nas-IP-Address}:-%{Nas-IPv6-Address}}'"
#
# This series of queries allocates an IP address
# (Note: If your pool_key is set to Calling-Station-Id and not NAS-Port
-# then you may wish to delete the "AND nasipaddress = '%{Nas-IP-Address}'
+# then you may wish to delete the "AND nasipaddress = '%{%{Nas-IP-Address}:-%{Nas-IPv6-Address}}'
# from the WHERE clause)
#
allocate_clear = "\
username = '', \
expiry_time = NULL \
WHERE expiry_time <= datetime(strftime('%%s', 'now') - 1, 'unixepoch') \
- AND nasipaddress = '%{Nas-IP-Address}'"
+ AND nasipaddress = '%{%{Nas-IP-Address}:-%{Nas-IPv6-Address}}'"
#
# The ORDER BY clause of this query tries to allocate the same IP-address
callingstationid = '', \
username = '', \
expiry_time = NULL \
- WHERE nasipaddress = '%{Nas-IP-Address}' \
+ WHERE nasipaddress = '%{%{Nas-IP-Address}:-%{Nas-IPv6-Address}}' \
AND pool_key = '${pool_key}' \
AND username = '%{User-Name}' \
AND callingstationid = '%{Calling-Station-Id}' \
UPDATE ${ippool_table} \
SET \
expiry_time = datetime(strftime('%%s', 'now') + ${lease_duration}, 'unixepoch') \
- WHERE nasipaddress = '%{Nas-IP-Address}' \
+ WHERE nasipaddress = '%{%{Nas-IP-Address}:-%{Nas-IPv6-Address}}' \
AND pool_key = '${pool_key}' \
AND username = '%{User-Name}' \
AND callingstationid = '%{Calling-Station-Id}' \
callingstationid = '', \
username = '', \
expiry_time = NULL \
- WHERE nasipaddress = '%{Nas-IP-Address}'"
+ WHERE nasipaddress = '%{%{Nas-IP-Address}:-%{Nas-IPv6-Address}}'"
#
# This series of queries frees the IP numbers allocate to a
callingstationid = '', \
username = '', \
expiry_time = NULL \
- WHERE nasipaddress = '%{Nas-IP-Address}'"
+ WHERE nasipaddress = '%{%{Nas-IP-Address}:-%{Nas-IPv6-Address}}'"