[Kea-users] New Project: Kea Quick Config

Darren Ankney dankney at isc.org
Wed Oct 25 18:33:03 UTC 2023


Hello all,

A new release (0.2) of kea-quick-config is now available.  Here are the changes in this version:

- Resized configuration box in final step to be larger so that configuration
  might be viewed prior to copy.
  [#37]
- Buttons now look more like buttons throughout the interface.  This was 
  accomplished completely with css.  No javascript was involved.
  [#41]
- Fixed a problem where it was possible to submit domain names with "
  and / or spaces.  This is now checked and causes an error if found.
  [#44]
- It was discovered that ', ", and \ characters caused Kea to be
  unable to parse the configuration file.  Therefore, those characters
  are now detected in form input and an error is shown.
  [#43]
- Added Global Settings section and appropriate refactoring of others.
  This allows the adding of global settings to the configuration.  This
  is an extensible framework which will allow things like easily adding
  more settings in the future, adding settings at levels other than
  global, and other various tweaks are possible (such as specifying
  v4 or v6).
  [#40]
- When memfile with a file for lease storage is specified, or MySQL or
  PostgreSQL are specified for "lease-database", then "multi-threading"
  settings are specified that are appropriate for that type.  If memfile
  is chosen and no file storage location specified (with "Name:"), then
  no "multi-threading" section is defind which leaves these settings
  at default.
  [#46]

Download here: https://gitlab.isc.org/isc-projects/kea-quick-config/-/releases/0.2

Run with podman:
podman run -d -p 8080:80 docker.io/fiddle55755/kea-quick-config (ARM64 for Apple Silicone Mac)
podman run -d -p 8080:80 docker.io/fiddle55755/kea-quick-config-x86_64 (x86_64)

Please let me know if you have any questions.

Thank you,

Darren Ankney

----- Original Message -----
From: "Darren Ankney" <dankney at isc.org>
To: "kea-users" <kea-users at lists.isc.org>
Sent: Wednesday, August 2, 2023 10:12:55 AM
Subject: New Project: Kea Quick Config

Hi all,

I have created a PHP/javascript based GUI Kea configuration maker which I've called "Kea Quick Config"!

What does it do? It allows you to use a series of web forms to set parameters.  At the end of these "steps", a Kea configuration is generated.  You can copy this configuration and use it on your Kea machine.

What do I need to run it?  It can easily be run with only php installed locally.  For example, on MacOS: 
1. use Homebrew (https://brew.sh) to `brew install php` (as php is no longer included in the recent releases of MacOS).
2. clone the repository locally `git clone https://gitlab.isc.org/isc-projects/kea-quick-config.git`
3. cd into `cd kea-quick-config/src/public_html/`
4. then execute: `php -S localhost:8000` and the software will be available at: http://localhost:8000 

Installation should be even easier in Linux.  For example, Debian 11 steps:
1. Install php `sudo apt install php-cli` (the php package would install apache2 as well when all that is needed is php so we use php-cli here).
2. clone the repository `git clone https://gitlab.isc.org/isc-projects/kea-quick-config.git`
3. enter the directory `cd kea-quick-config/src/public_html/`
4. execute `php -S localhost:8000` and the software will be available at: http://localhost:8000

Installation under windows would be similar but you would first need to obtain git (https://git-scm.com) and php (https://www.php.net)

You CAN run this against an external IP address on your local machine to make it available to other machinery (e.g. `php -S 192.0.2.128:8000`), but this method using "php -S" is not meant for that type of use and may contain security bugs.  If you want to host an instance of the site for others to use, an installation of php using apache or similar web software should be considered.

Where do I find it? It can be found here: https://gitlab.isc.org/isc-projects/kea-quick-config Comments are welcome!  Functionality is a bit basic at the moment.  Reservations and classes are completely absent as well as most options.  DHCPv6 is also not yet supported.

What about support? Please note that this is not an official ISC project and I am not a professional software developer.  This should be considered experimental and unsupported. That being said, do feel free to make a gitlab.isc.org account and open an issue in this project if you find a problem or missing feature.  There are some open issues there already so do have a look that it isn't already covered.  Feel free to indicate your interest with a comment or thumbs up if you find a previously opened issue.  Also, you can post to this kea-users list and I'll try to help you as best I can if you are having trouble.

Hopefully, this helps someone get started with Kea! I'll continue working on it if there is interest.

Thank you,

Darren Ankney


More information about the Kea-users mailing list