This file is indexed.

/etc/freeradius/3.0/mods-available/sqlippool is in freeradius-config 3.0.16+dfsg-1ubuntu3.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
#  Configuration for the SQL based IP Pool module (rlm_sqlippool)
#
#  The database schemas are available at:
#
#       raddb/sql/ippool/<DB>/schema.sql
#
#  $Id: 6edeeaaf731d1abbaa5ad38e8b6bf6828b65fda4 $

sqlippool {
	# SQL instance to use (from sql.conf)
	#
	#  If you have multiple sql instances, such as "sql sql1 {...}",
	#  use the *instance* name here: sql1.
	sql_module_instance = "sql"

	#  This is duplicative of info available in the SQL module, but
	#  we have to list it here as we do not yet support nested
	#  reference expansions.
	dialect = "mysql"

	# SQL table to use for ippool range and lease info
	ippool_table = "radippool"

	# IP lease duration. (Leases expire even if Acct Stop packet is lost)
	lease_duration = 3600

	#
	#  As of 3.0.16, the 'ipv6 = yes' configuration is deprecated.
	#  You should use the "attribute_name" configuration item
	#  below, instead.
	#

	#
	#  The attribute to use for IP address assignment.  The
	#  default is Framed-IP-Address.  You can change this to any
	#  attribute which is IPv4 or IPv6.
	#
	#  e.g. Framed-IPv6-Prefix, or Delegated-IPv6-Prefix.
	#
	#  As of 3.0.16, all of the default queries have been updated to use
	#  this attribute_name.  So you can do IPv6 address assignment simply
	#  by putting IPv6 addresses into the pool, and changing the following
	#  line to "Framed-IPv6-Prefix"
	#
	attribute_name = Framed-IP-Address

	#
	#  Assign the IP address, even if the attribute already exists
	#
#	allow_duplicates = no

	# Attribute which should be considered unique per NAS
	#
	#  Using NAS-Port gives behaviour similar to rlm_ippool. (And ACS)
	#  Using Calling-Station-Id works for NAS that send fixed NAS-Port
	#  ONLY change this if you know what you are doing!
	pool_key = "%{NAS-Port}"
	# pool_key = "%{Calling-Station-Id}"

	################################################################
	#
	#  WARNING: MySQL (MyISAM) has certain limitations that means it can
	#           hand out the same IP address to 2 different users.
	#
	#           We suggest using an SQL DB with proper transaction
	#           support, such as PostgreSQL, or using MySQL
	#	     with InnoDB.
	#
	################################################################

	#  These messages are added to the "control" items, as
	#  Module-Success-Message.  They are not logged anywhere else,
	#  unlike previous versions.  If you want to have them logged
	#  to a file, see the "linelog" module, and create an entry
	#  which writes Module-Success-Message message.
	#
	messages {
		exists = "Existing IP: %{reply:${..attribute_name}} (did %{Called-Station-Id} cli %{Calling-Station-Id} port %{NAS-Port} user %{User-Name})"

		success = "Allocated IP: %{reply:${..attribute_name}} from %{control:Pool-Name} (did %{Called-Station-Id} cli %{Calling-Station-Id} port %{NAS-Port} user %{User-Name})"

		clear = "Released IP ${..attribute_name} (did %{Called-Station-Id} cli %{Calling-Station-Id} user %{User-Name})"

		failed = "IP Allocation FAILED from %{control:Pool-Name} (did %{Called-Station-Id} cli %{Calling-Station-Id} port %{NAS-Port} user %{User-Name})"

		nopool = "No Pool-Name defined (did %{Called-Station-Id} cli %{Calling-Station-Id} port %{NAS-Port} user %{User-Name})"
	}

	$INCLUDE ${modconfdir}/sql/ippool/${dialect}/queries.conf
}