From: Marcin Siodelski Date: Fri, 25 May 2018 07:47:18 +0000 (+0200) Subject: [5632] Updated User's Guide saying that HA_ is builtin. X-Git-Tag: trac5382a_base~2^2~3 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=2a0e4226a0e2246c5561fb76b6d16c22f3fcc7f5;p=thirdparty%2Fkea.git [5632] Updated User's Guide saying that HA_ is builtin. --- diff --git a/doc/guide/classify.xml b/doc/guide/classify.xml index 23efe97e03..178aa88c54 100644 --- a/doc/guide/classify.xml +++ b/doc/guide/classify.xml @@ -183,6 +183,15 @@ packet will belong to class "VENDOR_CLASS_docsis3.0". + 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 + . + 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 @@ 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. diff --git a/doc/guide/hooks-ha.xml b/doc/guide/hooks-ha.xml index 702483c628..d7f6adf538 100644 --- a/doc/guide/hooks-ha.xml +++ b/doc/guide/hooks-ha.xml @@ -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 HA_server1 and - HA_server2 is required because other classes - refer to them via member expression. These classes - do not include test 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 phones_* and laptop_* - evaluate to "true" when the query belongs to a given combination - of other classes, e.g. HA_server1 and - phones. The pool will be selected accordingly - as a result of such evaluation. + The HA_server1 and HA_server2 + are builtin classes (see ) + 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 + phones_* and laptop_* evaluate to + "true" when the query belongs to a given combination of other classes, + e.g. HA_server1 and phones. + The pool will be selected accordingly as a result of such evaluation. Consult for details on how to use