Skip to content

Commit eac8406

Browse files
committed
regenerate and fix links
1 parent 31ee759 commit eac8406

File tree

2 files changed

+49
-37
lines changed

2 files changed

+49
-37
lines changed

doc/antora/modules/reference/pages/raddb/dictionary.adoc

Lines changed: 48 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,9 @@ edited by local administrators. It will be loaded
1111

1212
NOTE: We recommend using local variables inside of "unlang"
1313
sections instead of defining attributes in this file. See
14-
the xref:reference:index.adoc[reference documentation]
14+
the xref:index.adoc[reference documentation]
1515
for more information on
16-
xref:reference:unlang/local.adoc[local variables].
16+
xref:unlang/local.adoc[local variables].
1717

1818

1919
This file exists for two purposes:
@@ -81,37 +81,43 @@ required, or add your own.
8181

8282

8383

84-
## v3 Compatible names.
84+
## v3 Compatibility and Migration
8585

86-
All of the attributes have been renamed from v3. This change was
87-
necessary in order to support new functionality in v4. The
88-
unfortunate side effect of this change is that all of the names in
89-
SQL, LDAP, and the "files" module are incompatible with v4.
86+
By default, the server does NOT load the v3 names. While this
87+
behavior is done to simplify the server configuration, it can also
88+
make migration more difficult.
9089

91-
We recognize that is is difficult to change every entry in a
92-
database, especially when there's no clear mapping between the
93-
"old" and "new" names. This renaming is made more complex because
94-
the "new" names need to be grouped and arranged in ways that the
95-
old ones were not.
90+
If your system is using Vendor-Specific attributes from a
91+
particular vendor, you can list those dictionaries below. The
92+
server will then load the version 3 names, which makes migration
93+
much simpler.
9694

97-
The "old" names were all in flat lists, so that User-Name appeared
98-
next to Cisco-AVPAir. This organization was simple enough to work
99-
for 20 years, but its time has come. The new names are
100-
hierarchical, so that the organization is nested by definition.
95+
For v4, all of the attributes have been renamed from v3. This
96+
change was necessary in order to support new functionality. The
97+
unfortunate side effect of this change is that all of the names
98+
used by v3 in tje SQL, LDAP, and "files" module are incompatible
99+
with v4.
101100

102-
For v4, the Cisco-AVPair attribute is called "AVPair", and it lives
103-
inside of the "Cisco" namespace, which in turn lives inside of the
104-
"Vendor-Specific" namespace. So the new name for Cisco-AVPair is
105-
Vendor-Specific.Cisco.AVPair.
101+
The problem with v3 was that names were all in flat lists, so that
102+
User-Name appeared in the same to Cisco-AVPAir. This organization
103+
was simple enough to work for 25 years, but its time has come. The
104+
new names are hierarchical, which means they are organized into a
105+
tree-like structure.
106106

107-
This process continues for many thousands of vendor-specific
108-
attributes.
107+
For v4, the Cisco-AVPair attribute is now called "AVPair". It
108+
lives inside of the "Cisco" namespace, which in turn lives inside
109+
of the "Vendor-Specific" namespace. So the new name for
110+
`Cisco-AVPair` is `Vendor-Specific.Cisco.AVPair`.
109111

110-
Happily, it is possible to (mostly) use the old names with v4.
111-
There are limitations, but it will mostly work. The main reason
112-
for enabling the old names is to try out v4 with a database that is
113-
also used by v3. This lets you test that v4 works, without going
114-
through a complex "upgrade everything" process.
112+
These changes have been made for many hundreds of dictionary files,
113+
and many thousands of Vendor-Specific attributes.
114+
115+
In the interest of compatibility, is possible to use the old names
116+
with v4. There are limitations, but it will generally work. The
117+
main reason for enabling the old names is to try out v4 with a
118+
database that is also used by v3. This lets you test that v4
119+
works, without going through a complex "upgrade everything"
120+
process.
115121

116122
The old v3 names are in "alias" dictionaries, in the `${dictdir}`
117123
directory. To find out where this directory is on your local
@@ -120,14 +126,14 @@ command-line option, and it will tell you where the dictionary
120126
files are located.
121127

122128
The v3 names are in `${dictdir}/radius/alias/VENDOR.txt` where
123-
_VENDOR_ is the name of the vendor, which is taken from the `VENDOR`
124-
definition in the v3 dictionaries.
129+
_VENDOR_ is the name taken from the v3 `dictionary.VENDOR`.
125130

126-
You will need to add a `$INCLUDE` line for each vendor-specific
127-
dictionary which is used by your local system. The default v4
128-
dictionaries do not enable all of v3 compatibility names.
131+
You will need to edit the text below to add a `$INCLUDE` line for
132+
each vendor-specific dictionary which is used by your local system.
133+
The default v4 dictionaries do not enable all of v3 compatibility
134+
names.
129135

130-
Yes, we recognize that this process is a bit of work. However, we
136+
We recognize that this process is a bit of work. However, we
131137
wish to encourage everyone using v4 to upgrade to using the new v4
132138
features. Our experience shows that if we automatically enable
133139
"compatibility functions", then those compatibility functions will
@@ -136,8 +142,13 @@ upgrades and ongoing support. Easy upgrades will mean complex
136142
ongoing support. Complex upgrades make ongoing support easier, but
137143
also make it less likely that people will upgrade.
138144

145+
Note that if you over-write the "v3/dictionary.VENDOR" files with a
146+
copy of the v3 dictionary, then it won't work. Migrations across
147+
major version numbers means that the configuration files are *not*
148+
100% compatible. This includes the dictionaries!
139149

140150
All of the v3 compatibility names are in the RADIUS namespace.
151+
There are no aliases for DHCPv4.
141152

142153

143154

@@ -147,7 +158,8 @@ All of the v3 compatibility names are in the RADIUS namespace.
147158
#DEFINE My-Local-String string
148159
#DEFINE My-Local-IPAddr ipaddr
149160
#DEFINE My-Local-Integer integer
150-
BEGIN-PROTOCOL RADIUS
151-
$INCLUDE ${dictdir}/radius/alias/microsoft.txt
152-
END-PROTOCOL RADIUS
161+
#BEGIN-PROTOCOL RADIUS
162+
#$INCLUDE ${dictdir}/radius/v3/dictionary.cisco
163+
#$INCLUDE ${dictdir}/radius/v3/dictionary.aruba
164+
#END-PROTOCOL RADIUS
153165
```

raddb/dictionary

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
# sections instead of defining attributes in this file. See
1717
# the xref:reference:index.adoc[reference documentation]
1818
# for more information on
19-
# xref:reference:unlang/local.adoc[local variables].
19+
# xref:unlang/local.adoc[local variables].
2020
#
2121
#
2222
# This file exists for two purposes:

0 commit comments

Comments
 (0)