Opened 3 years ago

Closed 3 years ago

#5198 closed enhancement (complete)

Improve Kea default configuration file

Reported by: marcin Owned by: tomek
Priority: medium Milestone: Kea1.2-final
Component: dhcp Version: git
Keywords: Cc:
CVSS Scoring: Parent Tickets:
Sensitive: no Defect Severity: N/A
Sub-Project: DHCP Feature Depending on Ticket:
Estimated Difficulty: 0 Add Hours to Ticket: 4
Total Hours: 4 Internal?: no


Default Kea configuration file, kea.conf contains very basic configuration. Some, often used, parameters are not in this file. For example, DHCP options configurations. As a result, users struggle through the large User's Guide document to find out how to configure DNS servers or routers option. We should consider adding options configuration examples to kea.conf.

More importantly, however, we should probably include control sockets configuration for the DHCPv4 and DHCPv6 server. The 1.2 Kea release introduces Control Agent which forwards commands to the DHCP servers. The default configuration should allow for use of CA with DHCP servers without additional configuration effort.


Change History (7)

comment:1 Changed 3 years ago by tomek

  • Milestone changed from Kea-proposed to Kea1.2-final

comment:2 Changed 3 years ago by tomek

  • Owner set to tomek
  • Status changed from new to assigned

comment:3 Changed 3 years ago by tomek

  • Add Hours to Ticket changed from 0 to 4
  • Owner changed from tomek to Unassigned
  • Status changed from assigned to reviewing
  • Total Hours changed from 0 to 4

The code is now ready for review.

Proposed changelog:

12XX.	[func,doc]		tomek
	Default configuration file has been overhauled significantly. It
	now covers many additional options and features. Command channel
	is now enabled by default.
	(Trac #5198, git tbd)

I suggest to review this change commit by commit. There's one large (1.7K lines) commit that only changes the comment types (// used instead of #).

This ticket introduces control channel being enabled by default.

comment:4 Changed 3 years ago by fdupont

As far as I can understand the only real (i.e. not comment style) change is for src/bin/keactrl/kea.conf.pre?

comment:5 Changed 3 years ago by fdupont

  • Owner changed from Unassigned to tomek

So reading kea.conf.pre:

  • please wrap long lines!
  • ispell returns specificed, predeced (twice), defintions and typcially
  • for dhcp-socket-type: raw -> udp in order to match the comment
  • spurious extra blank line after (DHCPv4) between lease and host database configs
  • can't parse "Similar to DHCPv4," (I think this one was already signaled).
  • I have in my notes in front of me: buildCfgOptionList 1 host 2 subnet 3 classes 4 global so please check the scope hierarchy.
  • I'd like to translate ISC DHCP:
    option space docsis code width 2 length width 2;
    option vsio.docsis code 4491 = encapsulate docsis;
    option docsis.tftp-servers code 32 = array of ip6-address;
    into kea (in fact it is the reason I am reading this file now). As there is no option definition in this file can you consider this as a request for a vendor option Kea6 example? BTW the option-data side is in DHCPv4 reservations.
  • please insist on the fact that reservations are per subnet (in ISC DHCP they are global and even a warning is displayed when a host declaration is parsed in a subnet...)
  • IMHO most reservations have a hostname which is used too to name the entry so most examples should get one and it should be soon (first or just after the identifier).
  • "," -> ","
  • in DHCPv6 the spurious blank line is after the host database config
  • There is no class or hook config in DHCPv6. For people who read only the DHCPv6 part I suggest to add a single/simple line referencing DHCPv4 part.
  • Prefix delegation (aka pd-pools) is missing and it is the main use of DHCPv6.
  • as there is a DhcpDdns? config there should be at least a comment about the D2 client config in DHCPv4/DHCPv6 config.

It seems the ticket was almost reviewed?

comment:6 Changed 3 years ago by tomek

Dan is reviewing the file as well (see ops ticket 74905). I look forward to his comments.

comment:7 Changed 3 years ago by tomek

  • Resolution set to complete
  • Status changed from reviewing to closed

Thanks a lot for the review. Config merged, closing ticket.

Note: See TracTickets for help on using tickets.