Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
ISC Open Source Projects
Kea
Commits
2a0e4226
Commit
2a0e4226
authored
May 25, 2018
by
Marcin Siodelski
Browse files
[5632] Updated User's Guide saying that HA_ is builtin.
parent
12279475
Changes
2
Hide whitespace changes
Inline
Side-by-side
doc/guide/classify.xml
View file @
2a0e4226
...
...
@@ -183,6 +183,15 @@
packet will belong to class
"
VENDOR_CLASS_docsis3.0
"
.
</para>
<para>
The
"
HA_
"
prefix is used by the High Availability
hooks library to designate certain servers to process DHCP packets
as a result of load balancing. The class name is constructed by
prepending the
"
HA_
"
prefix to the name of the server
which should process the DHCP packet. This server will use appropriate
pool or subnet to allocate IP addresses (and/or prefixes) from, based on
the client classes assigned. The details can be found in
<xref
linkend=
"high-availability-library"
/>
.
</para>
<para>
Other examples are: the ALL class which all incoming packets
belong to, and the KNOWN class assigned when host reservations exist
for the particular client. By convention, builtin classes' names
...
...
@@ -190,7 +199,7 @@
</para>
<para>
Currently recognized builtin class names are ALL and KNOWN
and prefixes VENDOR_CLASS_, AFTER_
and
EXTERNAL_. The AFTER_ prefix
and prefixes VENDOR_CLASS_, AFTER_
,
EXTERNAL_
and HA_
. The AFTER_ prefix
is a provision for a not yet written hook, the EXTERNAL_ prefix
can be freely used: builtin classes are implicitly defined so
never raise warnings if they do not appear in the configuration.
...
...
doc/guide/hooks-ha.xml
View file @
2a0e4226
...
...
@@ -667,16 +667,6 @@
"Dhcp4": {
"client-classes": [
{
// No test expression for this class. Incoming packets will be
// assigned to that class dynamically by the HA Hook library.
"name": "HA_server1"
},
{
// No test expression for this class. Incoming packets will be
// assigned to that class dynamically by the HA Hook library.
"name": "HA_server2"
},
{
"name": "phones",
"test": "substring(option[60].hex,0,6) == 'Aastra'",
...
...
@@ -765,17 +755,14 @@
four pools. Two pools are dedicated to server1 and two are dedicated for
server2. Each server can assign leases to both phones and laptops.
Both groups of devices are assigned addresses from different pools.
Note that definition of classes
<command>
HA_server1
</command>
and
<command>
HA_server2
</command>
is required because other classes
refer to them via
<command>
member
</command>
expression. These classes
do not include
<command>
test
</command>
parameter because they are
not evaluated with other classes. They are assigned dynamically
by the HA hook library as a result of load balancing algorithm.
The
<command>
phones_*
</command>
and
<command>
laptop_*
</command>
evaluate to "true" when the query belongs to a given combination
of other classes, e.g.
<command>
HA_server1
</command>
and
<command>
phones
</command>
. The pool will be selected accordingly
as a result of such evaluation.
The
<command>
HA_server1
</command>
and
<command>
HA_server2
</command>
are builtin classes (see
<xref
linkend=
"classification-using-vendor"
/>
)
and they don't need to be declared. They are assigned dynamically by
the HA hook library as a result of load balancing algorithm. The
<command>
phones_*
</command>
and
<command>
laptop_*
</command>
evaluate to
"true" when the query belongs to a given combination of other classes,
e.g.
<command>
HA_server1
</command>
and
<command>
phones
</command>
.
The pool will be selected accordingly as a result of such evaluation.
</para>
<para>
Consult
<xref
linkend=
"classify"
/>
for details on how to use
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment