intro.xml 5.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
  3. "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" [
  4. <!ENTITY mdash "&#x2014;" >
  5. <!ENTITY % version SYSTEM "version.ent">
  6. %version;
  7. ]>
  8. <chapter id="intro">
  9. <title>Introduction</title>
  10. <para>
  11. Kea is the next generation of DHCP software developed by ISC.
  12. It supports both DHCPv4 and DHCPv6 protocols along with their
  13. extensions, e.g. prefix delegation and dynamic updates to DNS.
  14. </para>
  15. <para>
  16. Kea was initially developed as a part of the BIND 10 framework
  17. (<ulink url="http://bind10.isc.org"/>). In early 2014, ISC
  18. made the decision to discontinue active development of BIND 10 and
  19. continue development of Kea as standalone DHCP software.
  20. </para>
  21. <para>
  22. This guide covers Kea version &__VERSION__;.
  23. </para>
  24. <section>
  25. <title>Supported Platforms</title>
  26. <para>
  27. Kea is officially supported on RedHat Enterprise Linux,
  28. CentOS, Fedora and FreeBSD systems. It is also likely to work on many
  29. other platforms: builds have been tested on (in no particular order)
  30. Debian GNU/Linux 6 and unstable, Ubuntu 9.10, NetBSD 5,
  31. Solaris 10 and 11, FreeBSD 7 and 8, CentOS Linux 5.3,
  32. MacOS 10.6 and 10.7, and OpenBSD 5.1. Non supported systems
  33. (especially non-Linux) are likely to have issues with directly
  34. connected DHCPv4 clients.
  35. </para>
  36. <para>There are currently no plans to port Kea to Windows platforms.</para>
  37. </section>
  38. <section id="required-software">
  39. <title>Required Software at Run-time</title>
  40. <para>
  41. Running Kea uses various extra software which may
  42. not be provided in the default installation of some operating systems,
  43. nor in the standard package collections. You may
  44. need to install this required software separately.
  45. (For the build requirements, also see
  46. <xref linkend="build-requirements"/>.)
  47. </para>
  48. <itemizedlist>
  49. <listitem>
  50. <simpara>
  51. Kea supports two crypto libraries: Botan and OpenSSL. Only one of them
  52. is required during compilation. Kea uses the Botan crypto library for
  53. C++ (<ulink url="http://botan.randombit.net/"/>), version 1.8 or
  54. later. As an alternative to Botan, Kea can use the OpenSSL crypto
  55. library (<ulink url="http://www.openssl.org/"/>). It requires a version
  56. with SHA-2 support.
  57. </simpara>
  58. </listitem>
  59. <listitem>
  60. <simpara>
  61. Kea uses the log4cplus C++ logging library
  62. (<ulink url="http://log4cplus.sourceforge.net/"/>).
  63. It requires at least log4cplus version 1.0.3.
  64. </simpara>
  65. </listitem>
  66. <listitem>
  67. <simpara>
  68. In order to store lease information in a MySQL database, Kea requires MySQL
  69. headers and libraries. This is an optional dependency in that Kea can be
  70. built without MySQL support.
  71. </simpara>
  72. </listitem>
  73. <listitem>
  74. <simpara>
  75. In order to store lease information in a PostgreSQL database, Kea requires PostgreSQL
  76. headers and libraries. This is an optional dependency in that Kea can be
  77. built without PostgreSQL support.
  78. </simpara>
  79. </listitem>
  80. </itemizedlist>
  81. </section>
  82. <section id="kea_software">
  83. <title>Kea Software</title>
  84. <para>
  85. Kea is modular. Part of this modularity is
  86. accomplished using multiple cooperating processes which, together,
  87. provide the server functionality.
  88. The following software is included with Kea:
  89. </para>
  90. <para>
  91. <itemizedlist>
  92. <listitem>
  93. <simpara>
  94. <command>keactrl</command> &mdash;
  95. Tool to start, stop, reconfigure, and report status
  96. for the Kea servers.
  97. </simpara>
  98. </listitem>
  99. <listitem>
  100. <simpara>
  101. <command>kea-dhcp4</command> &mdash;
  102. DHCPv4 server process.
  103. This process responds to DHCPv4 queries from clients.
  104. </simpara>
  105. </listitem>
  106. <listitem>
  107. <simpara>
  108. <command>kea-dhcp6</command> &mdash;
  109. DHCPv6 server process.
  110. This process responds to DHCPv6 queries from clients.
  111. </simpara>
  112. </listitem>
  113. <listitem>
  114. <simpara>
  115. <command>kea-dhcp-ddns</command> &mdash;
  116. DHCP-DDNS process.
  117. This process acts as an intermediary between the DHCP servers
  118. and DNS server. It receives name update requests from the DHCP
  119. servers and sends DNS Update messages to the DNS servers.
  120. </simpara>
  121. </listitem>
  122. <listitem>
  123. <simpara>
  124. <command>perfdhcp</command> &mdash;
  125. DHCP benchmarking tool which simulates multiple clients to
  126. test both IPv4 and IPv6 servers performance.
  127. </simpara>
  128. </listitem>
  129. </itemizedlist>
  130. </para>
  131. </section>
  132. <para>
  133. The tools and modules are covered in full detail in this guide.
  134. <!-- TODO point to these -->
  135. In addition, manual pages are also provided in the default installation.
  136. </para>
  137. <para>
  138. Kea also provides C++ libraries and programmer interfaces for
  139. DHCP. These include detailed developer documentation and
  140. code examples.
  141. <!-- TODO point to this -->
  142. </para>
  143. </chapter>