Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung |
linux:kea [19.10.2024 15:33. ] – [Lösung] django | linux:kea [18.07.2025 18:13. ] (aktuell) – [Paketinstallation] Version 3.0.0-6 aktualisiert django |
---|
{{:linux:kea-logo-200.png?nolink&100 |Bild: Logo des DHCP ISC Kea }} Zum Einsatz in unserer Umgebung wird der Kea DHCP-Server kommen, der Nachfolger des **[[https://www.isc.org/dhcp/|ISC DHCP Servers]]** der Ende 2022 das Ende seines Lebenszyklus erreichte und nicht weiterentwickelt wurde. Das Nachfolgeprodukt ist nun der **[[https://www.isc.org/kea/|moderne Open Source DHCPv4 & DHCPv6 Server Kea]]**. | {{:linux:kea-logo-200.png?nolink&100 |Bild: Logo des DHCP ISC Kea }} Zum Einsatz in unserer Umgebung wird der Kea DHCP-Server kommen, der Nachfolger des **[[https://www.isc.org/dhcp/|ISC DHCP Servers]]** der Ende 2022 das Ende seines Lebenszyklus erreichte und nicht weiterentwickelt wurde. Das Nachfolgeprodukt ist nun der **[[https://www.isc.org/kea/|moderne Open Source DHCPv4 & DHCPv6 Server Kea]]**. |
| |
Im wesentlichen unterscheidet sich **Kea** von seinem Vorgänger unter anderem durch sein modulares Komponenten basierenden Design, welches mit sog. Hooks-Modulen leicht erweiterbar ist. Kea stellt einzelne Daemons zur Verfügung die entweder gemeinsam oder auch getrennt genutzt werden können. So enthält Kea einen Daemon für einen DHCPv4-Server, einen DHCPv6-Server und ein dynamisches Modul für DNS. Die [[#konfiguration|Konfiguration]] des Kea-Servers erfolgt mit Hilfe einer JSON-Konfigurationsdatei. Mit Hilfe der REST-API können zur Laufzeit jederzeit während des Betriebs Änderungen des Daemons vorgenommen werden, ohne dass der Daemon neu gestartet werden muss. Optional kann beim Kea Server auch ein WEB-UI ein grafisches Dashboard genutzt werden zur Überwachung mehrerer Kea-Instanzen. Neben der Dateibasierenden Variante können die ganzen Konfigurationsoptionen auch optional in einer PostgreSQL oder Maria-mySQL-Datenbank vorgehalten werden. | Im wesentlichen unterscheidet sich **Kea** von seinem Vorgänger unter anderem durch sein modulares Komponenten basierenden Design, welches mit sog. Hooks-Modulen leicht erweiterbar ist. Kea stellt einzelne Daemons zur Verfügung die entweder gemeinsam oder auch getrennt genutzt werden können. So enthält Kea einen Daemon für einen DHCPv4-Server, einen DHCPv6-Server und ein dynamisches Modul für DNS. Die [[#konfiguration|Konfiguration]] des Kea-Servers erfolgt mit Hilfe einer JSON-Konfigurationsdatei. Mit Hilfe der **REST-API** können zur Laufzeit jederzeit während des Betriebs Änderungen des Daemons vorgenommen werden, ohne dass der Daemon neu gestartet werden muss. Optional kann beim Kea Server auch ein WEB-UI ein grafisches Dashboard genutzt werden zur Überwachung mehrerer Kea-Instanzen. Neben der Dateibasierenden Variante können die ganzen Konfigurationsoptionen auch optional in einer PostgreSQL oder Maria-mySQL-Datenbank vorgehalten werden. |
| |
In der nachfolgenden WIKI-Artikel wollen wir uns nun eingehender mit der Installation und Konfiguration unseres Kea DHCP Servers für für DHCPv4 und DHCPv6 beschäftigen. In dem Konfigurationsbeispiel wird dem Kea-Daemon die Verwaltung und Verteilung der Intranet-Adressen der Zone **''intra.nausch.org''** übertragen. Dieses Subnetz umfasst nachfolgende Adressbereiche - zum besseren Verständnis sind in der Tabelle auch exemplarische Hosts mit den entsprechenden Adressen vermerkt: | In der nachfolgenden WIKI-Artikel wollen wir uns nun eingehender mit der Installation und Konfiguration unseres Kea DHCP Servers für für DHCPv4 und DHCPv6 beschäftigen. In dem Konfigurationsbeispiel wird dem Kea-Daemon die Verwaltung und Verteilung der Intranet-Adressen der Zone **''intra.nausch.org''** übertragen. Dieses Subnetz umfasst nachfolgende Adressbereiche - zum besseren Verständnis sind in der Tabelle auch exemplarische Hosts mit den entsprechenden Adressen vermerkt: |
++++ Paketinhalte | | ++++ Paketinhalte | |
<code>Name : kea | <code>Name : kea |
Version : 2.6.1-1 | Version : 3.0.0-6 |
Description : High-performance, extensible DHCP server engine from ISC, supporting both DHCPv4 and DHCPv6 | Description : High-performance, extensible DHCP server engine from ISC, supporting both DHCPv4 and |
| DHCPv6 |
Architecture : x86_64 | Architecture : x86_64 |
URL : https://kea.isc.org | URL : https://kea.isc.org |
Conflicts With : None | Conflicts With : None |
Replaces : None | Replaces : None |
Installed Size : 22.81 MiB | Installed Size : 29.19 MiB |
Packager : Robin Candau <antiz@archlinux.org> | Packager : Robin Candau <antiz@archlinux.org> |
Build Date : Wed 31 Jul 2024 10:21:28 AM CEST | Build Date : Mon 14 Jul 2025 08:04:25 AM CEST |
Install Date : Wed 09 Oct 2024 07:27:55 PM CEST | Install Date : Fri 18 Jul 2025 07:27:27 PM CEST |
Install Reason : Explicitly installed | Install Reason : Explicitly installed |
Install Script : No | Install Script : No |
kea /etc/kea/kea-dhcp6.conf | kea /etc/kea/kea-dhcp6.conf |
kea /etc/kea/keactrl.conf | kea /etc/kea/keactrl.conf |
| kea /etc/kea/radius/ |
| kea /etc/kea/radius/dictionary |
kea /usr/ | kea /usr/ |
kea /usr/bin/ | kea /usr/bin/ |
kea /usr/include/kea/asiolink/asio_wrapper.h | kea /usr/include/kea/asiolink/asio_wrapper.h |
kea /usr/include/kea/asiolink/asiolink.h | kea /usr/include/kea/asiolink/asiolink.h |
kea /usr/include/kea/asiolink/botan_boost_tls.h | |
kea /usr/include/kea/asiolink/botan_boost_wrapper.h | |
kea /usr/include/kea/asiolink/botan_tls.h | kea /usr/include/kea/asiolink/botan_tls.h |
| kea /usr/include/kea/asiolink/botan_wrapper.h |
kea /usr/include/kea/asiolink/common_tls.h | kea /usr/include/kea/asiolink/common_tls.h |
kea /usr/include/kea/asiolink/crypto_tls.h | kea /usr/include/kea/asiolink/crypto_tls.h |
kea /usr/include/kea/cc/command_interpreter.h | kea /usr/include/kea/cc/command_interpreter.h |
kea /usr/include/kea/cc/data.h | kea /usr/include/kea/cc/data.h |
| kea /usr/include/kea/cc/default_credentials.h |
kea /usr/include/kea/cc/dhcp_config_error.h | kea /usr/include/kea/cc/dhcp_config_error.h |
kea /usr/include/kea/cc/element_value.h | kea /usr/include/kea/cc/element_value.h |
kea /usr/include/kea/cc/stamped_value.h | kea /usr/include/kea/cc/stamped_value.h |
kea /usr/include/kea/cc/user_context.h | kea /usr/include/kea/cc/user_context.h |
kea /usr/include/kea/cfgrpt/ | |
kea /usr/include/kea/cfgrpt/config_report.h | |
kea /usr/include/kea/config.h | kea /usr/include/kea/config.h |
kea /usr/include/kea/config/ | kea /usr/include/kea/config/ |
kea /usr/include/kea/config/config_messages.h | kea /usr/include/kea/config/config_messages.h |
kea /usr/include/kea/config/hooked_command_mgr.h | kea /usr/include/kea/config/hooked_command_mgr.h |
| kea /usr/include/kea/config/http_command_config.h |
| kea /usr/include/kea/config/http_command_mgr.h |
| kea /usr/include/kea/config/http_command_response_creator.h |
| kea /usr/include/kea/config/http_command_response_creator_factory.h |
kea /usr/include/kea/config/timeouts.h | kea /usr/include/kea/config/timeouts.h |
| kea /usr/include/kea/config/unix_command_config.h |
| kea /usr/include/kea/config/unix_command_mgr.h |
kea /usr/include/kea/config_backend/ | kea /usr/include/kea/config_backend/ |
kea /usr/include/kea/config_backend/base_config_backend.h | kea /usr/include/kea/config_backend/base_config_backend.h |
kea /usr/include/kea/config_backend/constants.h | kea /usr/include/kea/config_backend/constants.h |
kea /usr/include/kea/cryptolink/ | kea /usr/include/kea/cryptolink/ |
| kea /usr/include/kea/cryptolink/botan_common.h |
kea /usr/include/kea/cryptolink/crypto_hash.h | kea /usr/include/kea/cryptolink/crypto_hash.h |
kea /usr/include/kea/cryptolink/crypto_hmac.h | kea /usr/include/kea/cryptolink/crypto_hmac.h |
kea /usr/include/kea/cryptolink/cryptolink.h | kea /usr/include/kea/cryptolink/cryptolink.h |
kea /usr/include/kea/cryptolink/openssl_common.h | kea /usr/include/kea/cryptolink/openssl_common.h |
kea /usr/include/kea/cryptolink/openssl_compat.h | |
kea /usr/include/kea/d2srv/ | kea /usr/include/kea/d2srv/ |
kea /usr/include/kea/d2srv/d2_cfg_mgr.h | kea /usr/include/kea/d2srv/d2_cfg_mgr.h |
kea /usr/include/kea/dhcp/pkt_filter.h | kea /usr/include/kea/dhcp/pkt_filter.h |
kea /usr/include/kea/dhcp/pkt_filter6.h | kea /usr/include/kea/dhcp/pkt_filter6.h |
| kea /usr/include/kea/dhcp/pkt_filter_bpf.h |
kea /usr/include/kea/dhcp/pkt_filter_inet.h | kea /usr/include/kea/dhcp/pkt_filter_inet.h |
kea /usr/include/kea/dhcp/pkt_filter_inet6.h | kea /usr/include/kea/dhcp/pkt_filter_inet6.h |
kea /usr/include/kea/dhcpsrv/d2_client_mgr.h | kea /usr/include/kea/dhcpsrv/d2_client_mgr.h |
kea /usr/include/kea/dhcpsrv/db_type.h | kea /usr/include/kea/dhcpsrv/db_type.h |
| kea /usr/include/kea/dhcpsrv/ddns_params.h |
kea /usr/include/kea/dhcpsrv/dhcp4o6_ipc.h | kea /usr/include/kea/dhcpsrv/dhcp4o6_ipc.h |
kea /usr/include/kea/dhcpsrv/dhcpsrv_exceptions.h | kea /usr/include/kea/dhcpsrv/dhcpsrv_exceptions.h |
kea /usr/include/kea/dhcpsrv/flq_allocation_state.h | kea /usr/include/kea/dhcpsrv/flq_allocation_state.h |
kea /usr/include/kea/dhcpsrv/flq_allocator.h | kea /usr/include/kea/dhcpsrv/flq_allocator.h |
| kea /usr/include/kea/dhcpsrv/fuzz_log.h |
| kea /usr/include/kea/dhcpsrv/fuzz_messages.h |
kea /usr/include/kea/dhcpsrv/host.h | kea /usr/include/kea/dhcpsrv/host.h |
kea /usr/include/kea/dhcpsrv/host_container.h | kea /usr/include/kea/dhcpsrv/host_container.h |
kea /usr/include/kea/dhcpsrv/lease_mgr.h | kea /usr/include/kea/dhcpsrv/lease_mgr.h |
kea /usr/include/kea/dhcpsrv/lease_mgr_factory.h | kea /usr/include/kea/dhcpsrv/lease_mgr_factory.h |
| kea /usr/include/kea/dhcpsrv/legal_log_db_log.h |
| kea /usr/include/kea/dhcpsrv/legal_log_mgr.h |
| kea /usr/include/kea/dhcpsrv/legal_log_mgr_factory.h |
kea /usr/include/kea/dhcpsrv/memfile_lease_limits.h | kea /usr/include/kea/dhcpsrv/memfile_lease_limits.h |
kea /usr/include/kea/dhcpsrv/memfile_lease_mgr.h | kea /usr/include/kea/dhcpsrv/memfile_lease_mgr.h |
kea /usr/include/kea/dhcpsrv/memfile_lease_storage.h | kea /usr/include/kea/dhcpsrv/memfile_lease_storage.h |
kea /usr/include/kea/dhcpsrv/mysql_host_data_source.h | |
kea /usr/include/kea/dhcpsrv/mysql_lease_mgr.h | |
kea /usr/include/kea/dhcpsrv/ncr_generator.h | kea /usr/include/kea/dhcpsrv/ncr_generator.h |
kea /usr/include/kea/dhcpsrv/network.h | kea /usr/include/kea/dhcpsrv/network.h |
kea /usr/include/kea/dhcpsrv/network_state.h | kea /usr/include/kea/dhcpsrv/network_state.h |
| kea /usr/include/kea/dhcpsrv/packet_fuzzer.h |
kea /usr/include/kea/dhcpsrv/parsers/ | kea /usr/include/kea/dhcpsrv/parsers/ |
kea /usr/include/kea/dhcpsrv/parsers/base_network_parser.h | kea /usr/include/kea/dhcpsrv/parsers/base_network_parser.h |
kea /usr/include/kea/dhcpsrv/parsers/simple_parser4.h | kea /usr/include/kea/dhcpsrv/parsers/simple_parser4.h |
kea /usr/include/kea/dhcpsrv/parsers/simple_parser6.h | kea /usr/include/kea/dhcpsrv/parsers/simple_parser6.h |
kea /usr/include/kea/dhcpsrv/pgsql_host_data_source.h | |
kea /usr/include/kea/dhcpsrv/pgsql_lease_mgr.h | |
kea /usr/include/kea/dhcpsrv/pool.h | kea /usr/include/kea/dhcpsrv/pool.h |
kea /usr/include/kea/dhcpsrv/random_allocation_state.h | kea /usr/include/kea/dhcpsrv/random_allocation_state.h |
kea /usr/include/kea/http/basic_auth.h | kea /usr/include/kea/http/basic_auth.h |
kea /usr/include/kea/http/basic_auth_config.h | kea /usr/include/kea/http/basic_auth_config.h |
| kea /usr/include/kea/http/cfg_http_header.h |
kea /usr/include/kea/http/client.h | kea /usr/include/kea/http/client.h |
kea /usr/include/kea/http/connection.h | kea /usr/include/kea/http/connection.h |
kea /usr/include/kea/process/ | kea /usr/include/kea/process/ |
kea /usr/include/kea/process/cb_ctl_base.h | kea /usr/include/kea/process/cb_ctl_base.h |
| kea /usr/include/kea/process/cfgrpt/ |
| kea /usr/include/kea/process/cfgrpt/config_report.h |
kea /usr/include/kea/process/config_base.h | kea /usr/include/kea/process/config_base.h |
kea /usr/include/kea/process/config_ctl_info.h | kea /usr/include/kea/process/config_ctl_info.h |
kea /usr/lib/kea/ | kea /usr/lib/kea/ |
kea /usr/lib/kea/hooks/ | kea /usr/lib/kea/hooks/ |
| kea /usr/lib/kea/hooks/libddns_gss_tsig.so |
kea /usr/lib/kea/hooks/libdhcp_bootp.so | kea /usr/lib/kea/hooks/libdhcp_bootp.so |
| kea /usr/lib/kea/hooks/libdhcp_class_cmds.so |
| kea /usr/lib/kea/hooks/libdhcp_ddns_tuning.so |
| kea /usr/lib/kea/hooks/libdhcp_flex_id.so |
kea /usr/lib/kea/hooks/libdhcp_flex_option.so | kea /usr/lib/kea/hooks/libdhcp_flex_option.so |
kea /usr/lib/kea/hooks/libdhcp_ha.so | kea /usr/lib/kea/hooks/libdhcp_ha.so |
| kea /usr/lib/kea/hooks/libdhcp_host_cache.so |
| kea /usr/lib/kea/hooks/libdhcp_host_cmds.so |
kea /usr/lib/kea/hooks/libdhcp_lease_cmds.so | kea /usr/lib/kea/hooks/libdhcp_lease_cmds.so |
kea /usr/lib/kea/hooks/libdhcp_mysql_cb.so | kea /usr/lib/kea/hooks/libdhcp_lease_query.so |
| kea /usr/lib/kea/hooks/libdhcp_legal_log.so |
| kea /usr/lib/kea/hooks/libdhcp_limits.so |
| kea /usr/lib/kea/hooks/libdhcp_mysql.so |
kea /usr/lib/kea/hooks/libdhcp_perfmon.so | kea /usr/lib/kea/hooks/libdhcp_perfmon.so |
kea /usr/lib/kea/hooks/libdhcp_pgsql_cb.so | kea /usr/lib/kea/hooks/libdhcp_pgsql.so |
| kea /usr/lib/kea/hooks/libdhcp_ping_check.so |
| kea /usr/lib/kea/hooks/libdhcp_radius.so |
kea /usr/lib/kea/hooks/libdhcp_run_script.so | kea /usr/lib/kea/hooks/libdhcp_run_script.so |
kea /usr/lib/kea/hooks/libdhcp_stat_cmds.so | kea /usr/lib/kea/hooks/libdhcp_stat_cmds.so |
| kea /usr/lib/kea/hooks/libdhcp_subnet_cmds.so |
kea /usr/lib/libkea-asiodns.so | kea /usr/lib/libkea-asiodns.so |
kea /usr/lib/libkea-asiodns.so.48 | kea /usr/lib/libkea-asiodns.so.62 |
kea /usr/lib/libkea-asiodns.so.48.0.0 | kea /usr/lib/libkea-asiodns.so.62.0.0 |
kea /usr/lib/libkea-asiolink.so | kea /usr/lib/libkea-asiolink.so |
kea /usr/lib/libkea-asiolink.so.71 | kea /usr/lib/libkea-asiolink.so.87 |
kea /usr/lib/libkea-asiolink.so.71.0.0 | kea /usr/lib/libkea-asiolink.so.87.0.0 |
kea /usr/lib/libkea-cc.so | kea /usr/lib/libkea-cc.so |
kea /usr/lib/libkea-cc.so.68 | kea /usr/lib/libkea-cc.so.82 |
kea /usr/lib/libkea-cc.so.68.0.0 | kea /usr/lib/libkea-cc.so.82.0.0 |
kea /usr/lib/libkea-cfgclient.so | kea /usr/lib/libkea-cfgrpt.so |
kea /usr/lib/libkea-cfgclient.so.65 | kea /usr/lib/libkea-cfgrpt.so.3 |
kea /usr/lib/libkea-cfgclient.so.65.0.0 | kea /usr/lib/libkea-cfgrpt.so.3.0.0 |
| kea /usr/lib/libkea-config.so |
| kea /usr/lib/libkea-config.so.83 |
| kea /usr/lib/libkea-config.so.83.0.0 |
kea /usr/lib/libkea-cryptolink.so | kea /usr/lib/libkea-cryptolink.so |
kea /usr/lib/libkea-cryptolink.so.50 | kea /usr/lib/libkea-cryptolink.so.63 |
kea /usr/lib/libkea-cryptolink.so.50.0.0 | kea /usr/lib/libkea-cryptolink.so.63.0.0 |
kea /usr/lib/libkea-d2srv.so | kea /usr/lib/libkea-d2srv.so |
kea /usr/lib/libkea-d2srv.so.46 | kea /usr/lib/libkea-d2srv.so.63 |
kea /usr/lib/libkea-d2srv.so.46.0.0 | kea /usr/lib/libkea-d2srv.so.63.0.0 |
kea /usr/lib/libkea-database.so | kea /usr/lib/libkea-database.so |
kea /usr/lib/libkea-database.so.61 | kea /usr/lib/libkea-database.so.76 |
kea /usr/lib/libkea-database.so.61.0.0 | kea /usr/lib/libkea-database.so.76.0.0 |
kea /usr/lib/libkea-dhcp++.so | kea /usr/lib/libkea-dhcp.so |
kea /usr/lib/libkea-dhcp++.so.90 | kea /usr/lib/libkea-dhcp.so.109 |
kea /usr/lib/libkea-dhcp++.so.90.0.0 | kea /usr/lib/libkea-dhcp.so.109.0.0 |
kea /usr/lib/libkea-dhcp_ddns.so | kea /usr/lib/libkea-dhcp_ddns.so |
kea /usr/lib/libkea-dhcp_ddns.so.56 | kea /usr/lib/libkea-dhcp_ddns.so.68 |
kea /usr/lib/libkea-dhcp_ddns.so.56.0.0 | kea /usr/lib/libkea-dhcp_ddns.so.68.0.0 |
kea /usr/lib/libkea-dhcpsrv.so | kea /usr/lib/libkea-dhcpsrv.so |
kea /usr/lib/libkea-dhcpsrv.so.109 | kea /usr/lib/libkea-dhcpsrv.so.129 |
kea /usr/lib/libkea-dhcpsrv.so.109.0.0 | kea /usr/lib/libkea-dhcpsrv.so.129.0.0 |
kea /usr/lib/libkea-dns++.so | kea /usr/lib/libkea-dns.so |
kea /usr/lib/libkea-dns++.so.56 | kea /usr/lib/libkea-dns.so.71 |
kea /usr/lib/libkea-dns++.so.56.0.0 | kea /usr/lib/libkea-dns.so.71.0.0 |
kea /usr/lib/libkea-eval.so | kea /usr/lib/libkea-eval.so |
kea /usr/lib/libkea-eval.so.69 | kea /usr/lib/libkea-eval.so.84 |
kea /usr/lib/libkea-eval.so.69.0.0 | kea /usr/lib/libkea-eval.so.84.0.0 |
kea /usr/lib/libkea-exceptions.so | kea /usr/lib/libkea-exceptions.so |
kea /usr/lib/libkea-exceptions.so.33 | kea /usr/lib/libkea-exceptions.so.45 |
kea /usr/lib/libkea-exceptions.so.33.0.0 | kea /usr/lib/libkea-exceptions.so.45.0.0 |
kea /usr/lib/libkea-hooks.so | kea /usr/lib/libkea-hooks.so |
kea /usr/lib/libkea-hooks.so.98 | kea /usr/lib/libkea-hooks.so.118 |
kea /usr/lib/libkea-hooks.so.98.0.0 | kea /usr/lib/libkea-hooks.so.118.0.0 |
kea /usr/lib/libkea-http.so | kea /usr/lib/libkea-http.so |
kea /usr/lib/libkea-http.so.71 | kea /usr/lib/libkea-http.so.87 |
kea /usr/lib/libkea-http.so.71.0.0 | kea /usr/lib/libkea-http.so.87.0.0 |
| kea /usr/lib/libkea-log-interprocess.so |
| kea /usr/lib/libkea-log-interprocess.so.3 |
| kea /usr/lib/libkea-log-interprocess.so.3.0.0 |
kea /usr/lib/libkea-log.so | kea /usr/lib/libkea-log.so |
kea /usr/lib/libkea-log.so.61 | kea /usr/lib/libkea-log.so.75 |
kea /usr/lib/libkea-log.so.61.0.0 | kea /usr/lib/libkea-log.so.75.0.0 |
kea /usr/lib/libkea-mysql.so | kea /usr/lib/libkea-mysql.so |
kea /usr/lib/libkea-mysql.so.70 | kea /usr/lib/libkea-mysql.so.88 |
kea /usr/lib/libkea-mysql.so.70.0.0 | kea /usr/lib/libkea-mysql.so.88.0.0 |
kea /usr/lib/libkea-pgsql.so | kea /usr/lib/libkea-pgsql.so |
kea /usr/lib/libkea-pgsql.so.70 | kea /usr/lib/libkea-pgsql.so.88 |
kea /usr/lib/libkea-pgsql.so.70.0.0 | kea /usr/lib/libkea-pgsql.so.88.0.0 |
kea /usr/lib/libkea-process.so | kea /usr/lib/libkea-process.so |
kea /usr/lib/libkea-process.so.72 | kea /usr/lib/libkea-process.so.90 |
kea /usr/lib/libkea-process.so.72.0.0 | kea /usr/lib/libkea-process.so.90.0.0 |
kea /usr/lib/libkea-stats.so | kea /usr/lib/libkea-stats.so |
kea /usr/lib/libkea-stats.so.41 | kea /usr/lib/libkea-stats.so.53 |
kea /usr/lib/libkea-stats.so.41.0.0 | kea /usr/lib/libkea-stats.so.53.0.0 |
kea /usr/lib/libkea-tcp.so | kea /usr/lib/libkea-tcp.so |
kea /usr/lib/libkea-tcp.so.18 | kea /usr/lib/libkea-tcp.so.33 |
kea /usr/lib/libkea-tcp.so.18.0.0 | kea /usr/lib/libkea-tcp.so.33.0.0 |
kea /usr/lib/libkea-util-io.so | kea /usr/lib/libkea-util-io.so |
kea /usr/lib/libkea-util-io.so.0 | kea /usr/lib/libkea-util-io.so.12 |
kea /usr/lib/libkea-util-io.so.0.0.1 | kea /usr/lib/libkea-util-io.so.12.0.0 |
kea /usr/lib/libkea-util.so | kea /usr/lib/libkea-util.so |
kea /usr/lib/libkea-util.so.84 | kea /usr/lib/libkea-util.so.101 |
kea /usr/lib/libkea-util.so.84.0.0 | kea /usr/lib/libkea-util.so.101.0.0 |
kea /usr/lib/python3.12/ | kea /usr/lib/pkgconfig/ |
kea /usr/lib/python3.12/site-packages/ | kea /usr/lib/pkgconfig/kea.pc |
kea /usr/lib/python3.12/site-packages/kea/ | kea /usr/lib/python3.13/ |
kea /usr/lib/python3.12/site-packages/kea/__pycache__/ | kea /usr/lib/python3.13/site-packages/ |
kea /usr/lib/python3.12/site-packages/kea/__pycache__/kea_conn.cpython-312.opt-1.pyc | kea /usr/lib/python3.13/site-packages/kea/ |
kea /usr/lib/python3.12/site-packages/kea/__pycache__/kea_conn.cpython-312.pyc | kea /usr/lib/python3.13/site-packages/kea/__pycache__/ |
kea /usr/lib/python3.12/site-packages/kea/__pycache__/kea_connector3.cpython-312.opt-1.pyc | kea /usr/lib/python3.13/site-packages/kea/__pycache__/kea_conn.cpython-313.opt-1.pyc |
kea /usr/lib/python3.12/site-packages/kea/__pycache__/kea_connector3.cpython-312.pyc | kea /usr/lib/python3.13/site-packages/kea/__pycache__/kea_conn.cpython-313.pyc |
kea /usr/lib/python3.12/site-packages/kea/kea_conn.py | kea /usr/lib/python3.13/site-packages/kea/__pycache__/kea_connector3.cpython-313.opt-1.pyc |
kea /usr/lib/python3.12/site-packages/kea/kea_connector3.py | kea /usr/lib/python3.13/site-packages/kea/__pycache__/kea_connector3.cpython-313.pyc |
| kea /usr/lib/python3.13/site-packages/kea/kea_conn.py |
| kea /usr/lib/python3.13/site-packages/kea/kea_connector3.py |
kea /usr/lib/systemd/ | kea /usr/lib/systemd/ |
kea /usr/lib/systemd/system/ | kea /usr/lib/systemd/system/ |
kea /usr/share/kea/api/network6-subnet-add.json | kea /usr/share/kea/api/network6-subnet-add.json |
kea /usr/share/kea/api/network6-subnet-del.json | kea /usr/share/kea/api/network6-subnet-del.json |
| kea /usr/share/kea/api/perfmon-control.json |
| kea /usr/share/kea/api/perfmon-get-all-durations.json |
kea /usr/share/kea/api/remote-class4-del.json | kea /usr/share/kea/api/remote-class4-del.json |
kea /usr/share/kea/api/remote-class4-get-all.json | kea /usr/share/kea/api/remote-class4-get-all.json |
kea /usr/share/kea/api/subnet4-get.json | kea /usr/share/kea/api/subnet4-get.json |
kea /usr/share/kea/api/subnet4-list.json | kea /usr/share/kea/api/subnet4-list.json |
| kea /usr/share/kea/api/subnet4-select-test.json |
kea /usr/share/kea/api/subnet4-update.json | kea /usr/share/kea/api/subnet4-update.json |
| kea /usr/share/kea/api/subnet4o6-select-test.json |
kea /usr/share/kea/api/subnet6-add.json | kea /usr/share/kea/api/subnet6-add.json |
kea /usr/share/kea/api/subnet6-del.json | kea /usr/share/kea/api/subnet6-del.json |
kea /usr/share/kea/api/subnet6-get.json | kea /usr/share/kea/api/subnet6-get.json |
kea /usr/share/kea/api/subnet6-list.json | kea /usr/share/kea/api/subnet6-list.json |
| kea /usr/share/kea/api/subnet6-select-test.json |
kea /usr/share/kea/api/subnet6-update.json | kea /usr/share/kea/api/subnet6-update.json |
kea /usr/share/kea/api/version-get.json | kea /usr/share/kea/api/version-get.json |
| kea /usr/share/kea/meson-info/ |
| kea /usr/share/kea/meson-info/intro-benchmarks.json |
| kea /usr/share/kea/meson-info/intro-buildoptions.json |
| kea /usr/share/kea/meson-info/intro-buildsystem_files.json |
| kea /usr/share/kea/meson-info/intro-compilers.json |
| kea /usr/share/kea/meson-info/intro-dependencies.json |
| kea /usr/share/kea/meson-info/intro-install_plan.json |
| kea /usr/share/kea/meson-info/intro-installed.json |
| kea /usr/share/kea/meson-info/intro-machines.json |
| kea /usr/share/kea/meson-info/intro-projectinfo.json |
| kea /usr/share/kea/meson-info/intro-targets.json |
| kea /usr/share/kea/meson-info/intro-tests.json |
| kea /usr/share/kea/meson-info/meson-info.json |
kea /usr/share/kea/scripts/ | kea /usr/share/kea/scripts/ |
kea /usr/share/kea/scripts/admin-utils.sh | kea /usr/share/kea/scripts/admin-utils.sh |
kea /usr/share/kea/scripts/mysql/upgrade_020_to_021.sh | kea /usr/share/kea/scripts/mysql/upgrade_020_to_021.sh |
kea /usr/share/kea/scripts/mysql/upgrade_021_to_022.sh | kea /usr/share/kea/scripts/mysql/upgrade_021_to_022.sh |
kea /usr/share/kea/scripts/mysql/upgrade_022_to_022.1.sh | kea /usr/share/kea/scripts/mysql/upgrade_022_to_023.sh |
| kea /usr/share/kea/scripts/mysql/upgrade_023_to_024.sh |
| kea /usr/share/kea/scripts/mysql/upgrade_024_to_025.sh |
| kea /usr/share/kea/scripts/mysql/upgrade_025_to_026.sh |
| kea /usr/share/kea/scripts/mysql/upgrade_026_to_027.sh |
| kea /usr/share/kea/scripts/mysql/upgrade_027_to_028.sh |
| kea /usr/share/kea/scripts/mysql/upgrade_028_to_029.sh |
| kea /usr/share/kea/scripts/mysql/upgrade_029_to_030.sh |
kea /usr/share/kea/scripts/mysql/wipe_data.sh | kea /usr/share/kea/scripts/mysql/wipe_data.sh |
kea /usr/share/kea/scripts/pgsql/ | kea /usr/share/kea/scripts/pgsql/ |
kea /usr/share/kea/scripts/pgsql/upgrade_020_to_021.sh | kea /usr/share/kea/scripts/pgsql/upgrade_020_to_021.sh |
kea /usr/share/kea/scripts/pgsql/upgrade_021_to_022.sh | kea /usr/share/kea/scripts/pgsql/upgrade_021_to_022.sh |
kea /usr/share/kea/scripts/pgsql/upgrade_022_to_022.1.sh | kea /usr/share/kea/scripts/pgsql/upgrade_022_to_023.sh |
| kea /usr/share/kea/scripts/pgsql/upgrade_023_to_024.sh |
| kea /usr/share/kea/scripts/pgsql/upgrade_024_to_025.sh |
| kea /usr/share/kea/scripts/pgsql/upgrade_025_to_026.sh |
| kea /usr/share/kea/scripts/pgsql/upgrade_026_to_027.sh |
| kea /usr/share/kea/scripts/pgsql/upgrade_027_to_028.sh |
| kea /usr/share/kea/scripts/pgsql/upgrade_028_to_029.sh |
kea /usr/share/kea/scripts/pgsql/wipe_data.sh | kea /usr/share/kea/scripts/pgsql/wipe_data.sh |
kea /var/ | kea /var/ |
kea /var/lib/ | kea /var/lib/ |
kea /var/lib/kea/ | kea /var/lib/kea/ |
kea /var/log/</code> | kea /var/log/ |
| kea /var/log/kea/</code> |
++++ | ++++ |
| |
==== Grund-Konfiguration ==== | ==== Grund-Konfiguration ==== |
=== Firewall/Paketfilter - firewalld === | === Firewall/Paketfilter - firewalld === |
Bevor wir nun unseren **Kea-DHCP-Daemon** Konfigurieren und starten müssen wir natürlich sicherstellen, dass auf dem betreffendem Host auch die Kommunikationsbeziehungen entsprechend erlaubt sind. | Bevor wir nun unseren **Kea-DHCP-Daemon** konfigurieren und starten müssen wir natürlich sicherstellen, dass auf dem betreffendem Host auch die Kommunikationsbeziehungen entsprechend erlaubt sind. |
| |
Wie auch schon früher bei **CentOS** ab Release **7** bzw. den nachfolgenden Relaese-Kandidaten **Stream von RHEL** nutzen wir auch unter **Arch Linux** den dynamischen **[[https://firewalld.org/|firewalld]]** Service. Ein grosser Vorteil der dynamischen Paketfilterregeln ist unter anderem, dass zur Aktivierung der neuen Firewall-Regel(n) nicht der Daemon durchgestartet werden muss und somit alle aktiven Verbindungen kurz getrennt werden. Sondern unsere Änderungen können **//on-the-fly//** aktiviert oder auch wieder deaktiviert werden. | Wie auch schon früher bei **CentOS** ab Release **7** bzw. den nachfolgenden Relaese-Kandidaten **Stream von RHEL** nutzen wir auch unter **Arch Linux** den dynamischen **[[https://firewalld.org/|firewalld]]** Service. Ein grosser Vorteil der dynamischen Paketfilterregeln ist unter anderem, dass zur Aktivierung der neuen Firewall-Regel(n) nicht der Daemon durchgestartet werden muss und somit alle aktiven Verbindungen kurz getrennt werden. Sondern unsere Änderungen können **//on-the-fly//** aktiviert oder auch wieder deaktiviert werden. |
Werfen wir noch kurz einen Blick in die Zone **''intra''**: | Werfen wir noch kurz einen Blick in die Zone **''intra''**: |
| |
# firewall-cmd --zone=intra --list-services | <code> # firewall-cmd --zone=intra --list-services</code> |
| |
dhcp dhcpv6 | dhcp dhcpv6 |
| |
Die beiden Beispiel-Hosts aus der Gruppe|Zone **''intra''** in diesem Inventory symbolisieren folgende unterschiedlichen Knoten. | Die beiden Beispiel-Hosts aus der Gruppe|Zone **''intra''** in diesem Inventory symbolisieren folgende unterschiedlichen Knoten. |
* Der Host **''pnc010007''** steht exeplarisch für einen Client im Intranet. In dessen Inventory-File **''inventories/production/host_vars/pnc010007''** sind die ihn beschreibenden Datein enthalten. | * Der Host **''pnc010007''** steht exemplarisch für einen Client im Intranet. In dessen Inventory-File **''inventories/production/host_vars/pnc010007''** sind die ihn beschreibenden Dateien enthalten. |
* Der Host **''vml010110''** ist in diesem Beispiel unser Server, der die Verbindung zwischen der Zone **''intra''** und der Aussenwelt herstellt. Auf diesem Konten läuft bereits ein **[[linux:ntp|Chrony Timeserver|]]** wie auch eine Firewall auf Basis von **[[https://firewalld.org/|firewalld]]** der eine Zonendefinition **''intra''** besitzt, die die Regeln für diese Zone beinhalten. Sowohl Timeserver wie auch Firewall werden in diesem Beispiel hier nur erwähnt, da in dem Playbook bzw.genauer gesagt im Inventory darauf referenziert wird. | * Der Host **''vml010110''** ist in diesem Beispiel unser Server, der die Verbindung zwischen der Zone **''intra''** und der Aussenwelt herstellt. Auf diesem Konten läuft bereits ein **[[linux:ntp|Chrony Timeserver|]]** wie auch eine Firewall auf Basis von **[[https://firewalld.org/|firewalld]]** der eine Zonendefinition **''intra''** besitzt, die die Regeln für diese Zone beinhalten. Sowohl Timeserver wie auch Firewall werden in diesem Beispiel hier nur erwähnt, da in dem Playbook bzw.genauer gesagt im Inventory darauf referenziert wird. |
| |
| |
=== Playbook === | === Playbook === |
Unser Playbook zum Installieren und Konfigurieren der beiden Kea-Daemon **kea-dhcp4** und **kea-dhcp6**, ist wie imer schlank, unscheinbar und unspektakulär, beinhaltet aber Hinweise zur Aufgabe und wie es aufzurufen ist. | Unser Playbook zum Installieren und Konfigurieren der beiden Kea-Daemon **kea-dhcp4** und **kea-dhcp6**, ist wie immer schlank, unscheinbar und unspektakulär, beinhaltet aber Hinweise zur Aufgabe und wie es aufzurufen ist. |
$ vim playbooks/kea_dhcp.yml | $ vim playbooks/kea_dhcp.yml |
++++ playbooks/kea_dhcp.yml | | ++++ playbooks/kea_dhcp.yml | |
| |
=== Rolle === | === Rolle === |
Für die Konfiguration der **kea**-Daemon verwenden wir eine eigene Rolle **''kea_dhcp''**, die wir bei unserem zuvor angelegten Playbooks später einfach mit aufrufen werden. hierzu kopieren wir uns zunächst die Mustervorlage **''common''**. | Für die Konfiguration der **kea**-Daemon verwenden wir eine eigene Rolle **''kea_dhcp''**, die wir bei unserem zuvor angelegten Playbooks später einfach mit aufrufen werden. Hierzu kopieren wir uns zunächst die Mustervorlage **''common''**. |
$ cp -avr roles/common/ roles/kea_dhcp | $ cp -avr roles/common/ roles/kea_dhcp |
| |
++++ | ++++ |
| |
Sollte bei der Abarbeitung des Playbook eine oder beide Konfigurationsdateien **''kea-dhcp4.conf''** und **''kea-dhcp6.conf''** verändert werden, ist natürlich hierbei ein Restart der betreffenden Kea-Daemon notwenig. Hierzu verwenden wir die **[[https://docs.ansible.com/ansible/latest/playbook_guide/playbooks_handlers.html|Ansible Playbook Handlers]]**. Diese Handler werden in den beiden Tasks zur Erstellung der Kea-Konfigurationsdateien mit Hilfe eines **handler**-Calls aufgerufen, sofern sich die Datei verändert hat. | Sollte bei der Abarbeitung des Playbook eine oder beide Konfigurationsdateien **''kea-dhcp4.conf''** und **''kea-dhcp6.conf''** verändert werden, ist natürlich hierbei ein Restart der betreffenden Kea-Daemon notwendig. Hierzu verwenden wir die **[[https://docs.ansible.com/ansible/latest/playbook_guide/playbooks_handlers.html|Ansible Playbook Handlers]]**. Diese Handler werden in den beiden Tasks zur Erstellung der Kea-Konfigurationsdateien mit Hilfe eines **handler**-Calls aufgerufen, sofern sich die Datei verändert hat. |
| |
Zu guter Letzt brauchen wir noch eine Konfiguration der Aufgaben die bei einem **''notify''** abgearbeitet werden sollen. | Zu guter Letzt brauchen wir noch eine Konfiguration der Aufgaben die bei einem **''notify''** abgearbeitet werden sollen. |
</html> | </html> |
| |
=== Ergebniskontrolle === | ==== Ergebniskontrolle ==== |
Ob die Konfigrationsdateien valide erstellt und auch von den Kea-Daemons erfolgreich geladen worden sind, kontrollieren wir zum Beispiel auf dem Zielhost mit einem Blick in die betreffenden Konfigurationsdateien, mit Hilfe der Option **''-t''** beim jeweiligen kea-binarys, oder mit Hilfe der **''status''**-Abfrage des betreffenden Kea-Daemons. | Ob die Konfigurationsdateien valide erstellt und auch von den Kea-Daemons erfolgreich geladen worden sind, kontrollieren wir zum Beispiel auf dem Zielhost mit einem Blick in die betreffenden Konfigurationsdateien, mit Hilfe der Option **''-t''** beim jeweiligen kea-binarys, oder mit Hilfe der **''status''**-Abfrage des betreffenden Kea-Daemons. |
* **kea-dhcp4** <code> # bat /etc/kea/kea-dhcp4.conf</code><code> # kea-dhcp4 -t /etc/kea/kea-dhcp4.conf</code><code> # systemctl status kea-dhcp4</code> | * **kea-dhcp4** <code> # bat /etc/kea/kea-dhcp4.conf</code><code> # kea-dhcp4 -t /etc/kea/kea-dhcp4.conf</code><code> # systemctl status kea-dhcp4</code> |
* **kea-dhcp6** <code> # bat /etc/kea/kea-dhcp6.conf</code><code> # kea-dhcp6 -t /etc/kea/kea-dhcp6.conf</code><code> # systemctl status kea-dhcp6</code> | * **kea-dhcp6** <code> # bat /etc/kea/kea-dhcp6.conf</code><code> # kea-dhcp6 -t /etc/kea/kea-dhcp6.conf</code><code> # systemctl status kea-dhcp6</code> |
====== Links ====== | ====== Links ====== |
* **[[linux:ansible:detail|zurück zum Kapitel "Ansible - Erweiterte Konfigurationsbeispiele"]] <= ** | * **[[linux:ansible:detail|zurück zum Kapitel "Ansible - Erweiterte Konfigurationsbeispiele"]] <= ** |
* **=> [[linux:dhcpd|weiter zum Kapitel "DNS Server für IPv4|6 unter Arch Linux einrichten und nutzen]]** | * **=> [[linux:dhcpd|weiter zum Kapitel "DNS Server für IPv4|6 unter Arch Linux einrichten und nutzen"]] <= ** |
* **[[linux:start#ansible|Zurück zur "Ansible"-Übersicht]]** | * **[[linux:start#ansible|Zurück zur "Ansible"-Übersicht]]** |
* **[[wiki:start|Zurück zu >>Projekte und Themenkapitel<<]]** | * **[[wiki:start|Zurück zu >>Projekte und Themenkapitel<<]]** |
* **[[http://dokuwiki.nausch.org/doku.php/|Zurück zur Startseite]]** | * **[[http://dokuwiki.nausch.org/doku.php/|Zurück zur Startseite]]** |
| |