<!doctype html>
<html>
 <head>
  <meta charset="UTF-8">
 </head>
 <body>
  <div style="">
   I'm really so confused now, I clearly remember copy/pasting the file path from the error multiple times to confirm that the file it reported missing was not missing. I'm not sure what I missed.
   <br>
   Anyway... changing the config file to point at the other kea libs directory solved the issue, thanks a ton!
  </div>
  <blockquote type="cite">
   <div class="default-style">On 02/20/2026 9:18 AM CET duress via Kea-users <kea-users@lists.isc.org> wrote:</div>
   <div class="default-style"> </div>
   <div class="default-style"> </div>
   <div>
    huh, yeah, you're right.
    <br>
    you know, I'd noticed that both paths were showing up, but I think i just assumed one was a symlink to the other and didn't actually check...
    <br>
    <br>
    root@diorite:/usr/sbin# stat /usr/local/lib/aarch64-linux-gnu/libkea-dhcpsrv.so.145
    <br>
      File: /usr/local/lib/aarch64-linux-gnu/libkea-dhcpsrv.so.145 -> libkea-dhcpsrv.so.145.0.0
    <br>
      Size: 25              Blocks: 0          IO Block: 4096   symbolic link
    <br>
    Device: 179,2   Inode: 390224      Links: 1
    <br>
    Access: (0777/lrwxrwxrwx)  Uid: (    0/    root)   Gid: (    0/    root)
    <br>
    Access: 2026-02-19 06:19:39.372553824 -0800
    <br>
    Modify: 2026-02-13 22:16:56.281120351 -0800
    <br>
    Change: 2026-02-13 22:16:56.281120351 -0800
    <br>
     Birth: 2026-02-13 22:16:56.281120351 -0800
    <br>
    <br>
   </div>
   <blockquote type="cite">
    <div class="default-style">On 02/20/2026 9:13 AM CET Razvan Becheriu <razvan@isc.org> wrote:</div>
    <div class="default-style"> </div>
    <div class="default-style"> </div>
    <div style="font-size: 12pt; font-family: arial, helvetica, sans-serif; direction: null; color: #000000;" data-attr="forced_root_block_attrs">
     <div>I think the issue is that there are 2 paths:</div>
     <div style="font-size: 12pt; font-family: arial, helvetica, sans-serif; color: #000000;" data-attr="forced_root_block_attrs"> </div>
     <div style="font-size: 12pt; font-family: arial, helvetica, sans-serif; color: #000000;" data-attr="forced_root_block_attrs">/usr/local/lib/aarch64-linux-gnu/libkea-dhcpsrv.so</div>
     <div style="font-size: 12pt; font-family: arial, helvetica, sans-serif; color: #000000;" data-attr="forced_root_block_attrs"> </div>
     <div style="font-size: 12pt; font-family: arial, helvetica, sans-serif; color: #000000;" data-attr="forced_root_block_attrs">and</div>
     <div style="font-size: 12pt; font-family: arial, helvetica, sans-serif; color: #000000;" data-attr="forced_root_block_attrs"> </div>
     <div style="font-size: 12pt; font-family: arial, helvetica, sans-serif; color: #000000;" data-attr="forced_root_block_attrs">/usr/lib/aarch64-linux-gnu/libkea-dhcpsrv.so</div>
     <div style="font-size: 12pt; font-family: arial, helvetica, sans-serif; color: #000000;" data-attr="forced_root_block_attrs"> </div>
     <div style="font-size: 12pt; font-family: arial, helvetica, sans-serif; color: #000000;" data-attr="forced_root_block_attrs">one exists and one does not</div>
     <div style="font-size: 12pt; font-family: arial, helvetica, sans-serif; color: #000000;" data-attr="forced_root_block_attrs"> </div>
     <div style="font-size: 12pt; font-family: arial, helvetica, sans-serif; color: #000000;" data-attr="forced_root_block_attrs">kea seems to load the existing one but ha hook lib requires the other path.</div>
     <div style="font-size: 12pt; font-family: arial, helvetica, sans-serif; color: #000000;" data-attr="forced_root_block_attrs"> </div>
     <div style="font-size: 12pt; font-family: arial, helvetica, sans-serif; color: #000000;" data-attr="forced_root_block_attrs"> </div>
     <div id="signature-content-no-signature" data-marker="__SIG_PRE__"></div>
     <div> </div>
     <div>
      <div id="OLK_SRC_BODY_SECTION">
       <blockquote>
        <hr id="MESSAGE_DATA_MARKER">
        <strong>From: </strong>Razvan <razvan@isc.org>
        <br>
        <strong>To: </strong>Kea <kea-users@lists.isc.org>
        <br>
        <strong>Date: </strong>Friday, 20 February 2026 10:09 AM EET
        <br>
        <strong>Subject: </strong>Re: [Kea-users] kea-dhcp4 service failing to start with 'cannot open shared object file'
        <br>
        <br>
        <div style="font-size: 12pt; font-family: 'arial' , 'helvetica' , sans-serif; color: #000000;">
         <div>I can't find the strace output attached. maybe the file is too large.</div>
         <div style="font-size: 12pt; font-family: 'arial' , 'helvetica' , sans-serif; color: #000000;"> </div>
         <div style="font-size: 12pt; font-family: 'arial' , 'helvetica' , sans-serif; color: #000000;">can you share it using some other way?</div>
         <div style="font-size: 12pt; font-family: 'arial' , 'helvetica' , sans-serif; color: #000000;"> </div>
         <div style="font-size: 12pt; font-family: 'arial' , 'helvetica' , sans-serif; color: #000000;">thx</div>
         <div id="signature-content-no-signature"></div>
         <div> </div>
         <div>
          <div id="OLK_SRC_BODY_SECTION">
           <blockquote>
            <hr id="MESSAGE_DATA_MARKER">
            <strong>From: </strong>Razvan <razvan@isc.org>
            <br>
            <strong>To: </strong>Kea <kea-users@lists.isc.org>
            <br>
            <strong>Date: </strong>Friday, 20 February 2026 10:08 AM EET
            <br>
            <strong>Subject: </strong>Re: [Kea-users] kea-dhcp4 service failing to start with 'cannot open shared object file'
            <br>
            <br>
            <div style="font-size: 12pt; font-family: 'arial' , 'helvetica' , sans-serif; color: #000000;">
             <div> </div>
             <div id="signature-content-no-signature"></div>
             <div>is there a link named:</div>
             <div style="font-size: 12pt; font-family: 'arial' , 'helvetica' , sans-serif; color: #000000;"> </div>
             <div style="font-size: 12pt; font-family: 'arial' , 'helvetica' , sans-serif; color: #000000;">/usr/lib/aarch64-linux-gnu/libkea-dhcpsrv.so.145 ?</div>
             <div style="font-size: 12pt; font-family: 'arial' , 'helvetica' , sans-serif; color: #000000;"> </div>
             <div style="font-size: 12pt; font-family: 'arial' , 'helvetica' , sans-serif; color: #000000;"> </div>
             <div style="font-size: 12pt; font-family: 'arial' , 'helvetica' , sans-serif; color: #000000;"> </div>
             <div style="font-size: 12pt; font-family: 'arial' , 'helvetica' , sans-serif; color: #000000;">ls -la /usr/lib/aarch64-linux-gnu/</div>
             <div style="font-size: 12pt; font-family: 'arial' , 'helvetica' , sans-serif; color: #000000;"> </div>
             <div style="font-size: 12pt; font-family: 'arial' , 'helvetica' , sans-serif; color: #000000;"> </div>
             <div>
              <div id="OLK_SRC_BODY_SECTION">
               <blockquote>
                <hr id="MESSAGE_DATA_MARKER">
                <strong>From: </strong>Razvan <razvan@isc.org>
                <br>
                <strong>To: </strong>Kea <kea-users@lists.isc.org>
                <br>
                <strong>Date: </strong>Friday, 20 February 2026 10:00 AM EET
                <br>
                <strong>Subject: </strong>Re: [Kea-users] kea-dhcp4 service failing to start with 'cannot open shared object file'
                <br>
                <br>
                <div style="font-size: 12pt; font-family: 'arial' , 'helvetica' , sans-serif; color: #000000;">
                 <div> </div>
                 <div id="signature-content-no-signature"></div>
                 <div>thank you for the output. will look into it.</div>
                 <div style="font-size: 12pt; font-family: 'arial' , 'helvetica' , sans-serif; color: #000000;"> </div>
                 <div style="font-size: 12pt; font-family: 'arial' , 'helvetica' , sans-serif; color: #000000;">also attach the output of the  ./kea-dhcp4 -W</div>
                 <div style="font-size: 12pt; font-family: 'arial' , 'helvetica' , sans-serif; color: #000000;"> </div>
                 <div style="font-size: 12pt; font-family: 'arial' , 'helvetica' , sans-serif; color: #000000;">I am suspecting this is a compilation issue with no relocation capabilities ..aka -fPIC for dynamic libs.</div>
                 <div style="font-size: 12pt; font-family: 'arial' , 'helvetica' , sans-serif; color: #000000;"> </div>
                 <div style="font-size: 12pt; font-family: 'arial' , 'helvetica' , sans-serif; color: #000000;">Thank you</div>
                 <div style="font-size: 12pt; font-family: 'arial' , 'helvetica' , sans-serif; color: #000000;"> </div>
                 <div style="font-size: 12pt; font-family: 'arial' , 'helvetica' , sans-serif; color: #000000;"> </div>
                 <div>
                  <div id="OLK_SRC_BODY_SECTION">
                   <blockquote>
                    <hr id="MESSAGE_DATA_MARKER">
                    <strong>From: </strong>duress <kea-users@lists.isc.org>
                    <br>
                    <strong>To: </strong>Kea <kea-users@lists.isc.org>
                    <br>
                    <strong>Cc: </strong>duress <duress@mailbox.org>
                    <br>
                    <strong>Date: </strong>Friday, 20 February 2026 9:50 AM EET
                    <br>
                    <strong>Subject: </strong>Re: [Kea-users] kea-dhcp4 service failing to start with 'cannot open shared object file'
                    <br>
                    <br>
                    <div>
                     Output of strace -f attached.
                     <br>
                     <br>
                     Regarding the reference to libkea-dhcpsrv.sp, my presumption has been that that file is mentioned because it is what's trying to load libdhcp_ha.so, but i can't say i know that for certain.
                     <br>
                     ldd of libkea-dhcpsrv.so also reports no errors:
                     <br>
                     <br>
                     root@diorite:/etc/kea# ldd /usr/lib/aarch64-linux-gnu/libkea-dhcpsrv.so
                     <br>
                            linux-vdso.so.1 (0x0000ffffbf2cd000)
                     <br>
                            libmysqlclient.so.21 => /lib/aarch64-linux-gnu/libmysqlclient.so.21 (0x0000ffffbe8c0000)
                     <br>
                            libpq.so.5 => /lib/aarch64-linux-gnu/libpq.so.5 (0x0000ffffbe840000)
                     <br>
                            libkea-process.so.57 => /lib/aarch64-linux-gnu/libkea-process.so.57 (0x0000ffffbe7e0000)
                     <br>
                            libkea-eval.so.52 => /lib/aarch64-linux-gnu/libkea-eval.so.52 (0x0000ffffbe770000)
                     <br>
                            libkea-dhcp_ddns.so.41 => /lib/aarch64-linux-gnu/libkea-dhcp_ddns.so.41 (0x0000ffffbe700000)
                     <br>
                            libkea-stats.so.29 => /lib/aarch64-linux-gnu/libkea-stats.so.29 (0x0000ffffbe6c0000)
                     <br>
                            libkea-dhcp++.so.74 => /lib/aarch64-linux-gnu/libkea-dhcp++.so.74 (0x0000ffffbe590000)
                     <br>
                            libkea-hooks.so.78 => /lib/aarch64-linux-gnu/libkea-hooks.so.78 (0x0000ffffbe540000)
                     <br>
                            libkea-mysql.so.53 => /lib/aarch64-linux-gnu/libkea-mysql.so.53 (0x0000ffffbe500000)
                     <br>
                            libkea-pgsql.so.53 => /lib/aarch64-linux-gnu/libkea-pgsql.so.53 (0x0000ffffbe4b0000)
                     <br>
                            libkea-database.so.48 => /lib/aarch64-linux-gnu/libkea-database.so.48 (0x0000ffffbe460000)
                     <br>
                            libkea-cc.so.54 => /lib/aarch64-linux-gnu/libkea-cc.so.54 (0x0000ffffbe3f0000)
                     <br>
                            libkea-asiolink.so.56 => /lib/aarch64-linux-gnu/libkea-asiolink.so.56 (0x0000ffffbe370000)
                     <br>
                            libkea-cryptolink.so.38 => /lib/aarch64-linux-gnu/libkea-cryptolink.so.38 (0x0000ffffbe340000)
                     <br>
                            libkea-log.so.48 => /lib/aarch64-linux-gnu/libkea-log.so.48 (0x0000ffffbe2f0000)
                     <br>
                            libkea-util.so.68 => /lib/aarch64-linux-gnu/libkea-util.so.68 (0x0000ffffbe270000)
                     <br>
                            libkea-exceptions.so.23 => /lib/aarch64-linux-gnu/libkea-exceptions.so.23 (0x0000ffffbe240000)
                     <br>
                            libstdc++.so.6 => /lib/aarch64-linux-gnu/libstdc++.so.6 (0x0000ffffbdfb0000)
                     <br>
                            libc.so.6 => /lib/aarch64-linux-gnu/libc.so.6 (0x0000ffffbddf0000)
                     <br>
                            /lib/ld-linux-aarch64.so.1 (0x0000ffffbf280000)
                     <br>
                            libgcc_s.so.1 => /lib/aarch64-linux-gnu/libgcc_s.so.1 (0x0000ffffbddb0000)
                     <br>
                            libssl.so.3 => /lib/aarch64-linux-gnu/libssl.so.3 (0x0000ffffbdce0000)
                     <br>
                            libcrypto.so.3 => /lib/aarch64-linux-gnu/libcrypto.so.3 (0x0000ffffbd860000)
                     <br>
                            libresolv.so.2 => /lib/aarch64-linux-gnu/libresolv.so.2 (0x0000ffffbd830000)
                     <br>
                            libz.so.1 => /lib/aarch64-linux-gnu/libz.so.1 (0x0000ffffbd7f0000)
                     <br>
                            libzstd.so.1 => /lib/aarch64-linux-gnu/libzstd.so.1 (0x0000ffffbd730000)
                     <br>
                            libgssapi_krb5.so.2 => /lib/aarch64-linux-gnu/libgssapi_krb5.so.2 (0x0000ffffbd6c0000)
                     <br>
                            libldap.so.2 => /lib/aarch64-linux-gnu/libldap.so.2 (0x0000ffffbd640000)
                     <br>
                            libkea-cfgclient.so.51 => /lib/aarch64-linux-gnu/libkea-cfgclient.so.51 (0x0000ffffbd5d0000)
                     <br>
                            libkea-dns++.so.42 => /lib/aarch64-linux-gnu/libkea-dns++.so.42 (0x0000ffffbd4c0000)
                     <br>
                            liblog4cplus-2.0.so.3 => /lib/aarch64-linux-gnu/liblog4cplus-2.0.so.3 (0x0000ffffbd420000)
                     <br>
                            libm.so.6 => /lib/aarch64-linux-gnu/libm.so.6 (0x0000ffffbd370000)
                     <br>
                            libkrb5.so.3 => /lib/aarch64-linux-gnu/libkrb5.so.3 (0x0000ffffbd290000)
                     <br>
                            libk5crypto.so.3 => /lib/aarch64-linux-gnu/libk5crypto.so.3 (0x0000ffffbd240000)
                     <br>
                            libcom_err.so.2 => /lib/aarch64-linux-gnu/libcom_err.so.2 (0x0000ffffbd210000)
                     <br>
                            libkrb5support.so.0 => /lib/aarch64-linux-gnu/libkrb5support.so.0 (0x0000ffffbd1e0000)
                     <br>
                            liblber.so.2 => /lib/aarch64-linux-gnu/liblber.so.2 (0x0000ffffbd1b0000)
                     <br>
                            libsasl2.so.2 => /lib/aarch64-linux-gnu/libsasl2.so.2 (0x0000ffffbd170000)
                     <br>
                            libgnutls.so.30 => /lib/aarch64-linux-gnu/libgnutls.so.30 (0x0000ffffbcf50000)
                     <br>
                            libkea-http.so.56 => /lib/aarch64-linux-gnu/libkea-http.so.56 (0x0000ffffbce50000)
                     <br>
                            libkeyutils.so.1 => /lib/aarch64-linux-gnu/libkeyutils.so.1 (0x0000ffffbce20000)
                     <br>
                            libp11-kit.so.0 => /lib/aarch64-linux-gnu/libp11-kit.so.0 (0x0000ffffbcc50000)
                     <br>
                            libidn2.so.0 => /lib/aarch64-linux-gnu/libidn2.so.0 (0x0000ffffbcc10000)
                     <br>
                            libunistring.so.5 => /lib/aarch64-linux-gnu/libunistring.so.5 (0x0000ffffbca40000)
                     <br>
                            libtasn1.so.6 => /lib/aarch64-linux-gnu/libtasn1.so.6 (0x0000ffffbca00000)
                     <br>
                            libnettle.so.8 => /lib/aarch64-linux-gnu/libnettle.so.8 (0x0000ffffbc990000)
                     <br>
                            libhogweed.so.6 => /lib/aarch64-linux-gnu/libhogweed.so.6 (0x0000ffffbc920000)
                     <br>
                            libgmp.so.10 => /lib/aarch64-linux-gnu/libgmp.so.10 (0x0000ffffbc880000)
                     <br>
                            libffi.so.8 => /lib/aarch64-linux-gnu/libffi.so.8 (0x0000ffffbc850000)
                    </div>
                    <blockquote>
                     <div class="default-style">On 02/20/2026 8:31 AM CET Razvan Becheriu <razvan@isc.org> wrote:</div>
                     <div class="default-style"> </div>
                     <div class="default-style"> </div>
                     <div style="font-size: 12pt; font-family: 'arial' , 'helvetica' , sans-serif; color: #000000;">
                      <div>please run stract -f -o outout ./kea-dhcp4 -c ... and attach the output.</div>
                      <div style="font-size: 12pt; font-family: 'arial' , 'helvetica' , sans-serif; color: #000000;"> </div>
                      <div style="font-size: 12pt; font-family: 'arial' , 'helvetica' , sans-serif; color: #000000;">(no filter on paths)Thank you,</div>
                      <div style="font-size: 12pt; font-family: 'arial' , 'helvetica' , sans-serif; color: #000000;"> </div>
                      <div style="font-size: 12pt; font-family: 'arial' , 'helvetica' , sans-serif; color: #000000;">Razvan</div>
                      <div>
                       <div id="OLK_SRC_BODY_SECTION">
                        <blockquote>
                         <hr id="MESSAGE_DATA_MARKER">
                         <strong>From: </strong>Razvan <razvan@isc.org>
                         <br>
                         <strong>To: </strong>Kea <kea-users@lists.isc.org>
                         <br>
                         <strong>Date: </strong>Friday, 20 February 2026 9:27 AM EET
                         <br>
                         <strong>Subject: </strong>Re: [Kea-users] kea-dhcp4 service failing to start with 'cannot open shared object file'
                         <br>
                         <br>
                         <div style="font-size: 12pt; font-family: 'arial' , 'helvetica' , sans-serif; color: #000000;">
                          <div>what is this:</div>
                          <div style="font-size: 12pt; font-family: 'arial' , 'helvetica' , sans-serif; color: #000000;"> </div>
                          <div style="font-size: 12pt; font-family: 'arial' , 'helvetica' , sans-serif; color: #000000;">
                           <span style="color: #000000; font-family: '-apple-system' , 'blinkmacsystemfont' , 'helvetica' , sans-serif; font-size: 14px; font-style: normal; font-weight: 400; letter-spacing: normal; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: #ffffff; text-decoration: none; display: inline !important; float: none;">HOOKS_OPEN_ERROR failed to open hook library libdhcp_ha.so: libkea-dhcpsrv.so.14</span>
                          </div>
                          <div style="font-size: 12pt; font-family: 'arial' , 'helvetica' , sans-serif; color: #000000;">
                           <span style="color: #000000; font-family: '-apple-system' , 'blinkmacsystemfont' , 'helvetica' , sans-serif; font-size: 14px; font-style: normal; font-weight: 400; letter-spacing: normal; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: #ffffff; text-decoration: none; display: inline !important; float: none;"> </span>
                          </div>
                          <div style="font-size: 12pt; font-family: 'arial' , 'helvetica' , sans-serif; color: #000000;">
                           <span style="font-family: '-apple-system' , 'blinkmacsystemfont' , 'helvetica' , sans-serif; font-size: 14px;">why does it mention </span><span style="color: #000000; font-family: '-apple-system' , 'blinkmacsystemfont' , 'helvetica' , sans-serif; font-size: 14px; font-style: normal; font-weight: 400; letter-spacing: normal; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: #ffffff; text-decoration: none; display: inline !important; float: none;">libkea-dhcpsrv.so ?</span>
                          </div>
                          <div style="font-size: 12pt; font-family: 'arial' , 'helvetica' , sans-serif; color: #000000;">
                           <span style="color: #000000; font-family: '-apple-system' , 'blinkmacsystemfont' , 'helvetica' , sans-serif; font-size: 14px; font-style: normal; font-weight: 400; letter-spacing: normal; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: #ffffff; text-decoration: none; display: inline !important; float: none;"> </span>
                          </div>
                          <div style="font-size: 12pt; font-family: 'arial' , 'helvetica' , sans-serif; color: #000000;">
                           <span style="color: #000000; font-family: '-apple-system' , 'blinkmacsystemfont' , 'helvetica' , sans-serif; font-size: 14px; font-style: normal; font-weight: 400; letter-spacing: normal; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: #ffffff; text-decoration: none; display: inline !important; float: none;"><span style="color: #000000; font-family: '-apple-system' , 'blinkmacsystemfont' , 'helvetica' , sans-serif; font-size: 14px; font-style: normal; font-weight: 400; letter-spacing: normal; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: #ffffff; text-decoration: none; display: inline !important; float: none;">ldd on this lib then</span></span>
                          </div>
                          <div id="signature-content-no-signature"></div>
                          <div> </div>
                          <div>
                           <div id="OLK_SRC_BODY_SECTION">
                            <blockquote>
                             <hr id="MESSAGE_DATA_MARKER">
                             <strong>From: </strong>duress <kea-users@lists.isc.org>
                             <br>
                             <strong>To: </strong>Kea <kea-users@lists.isc.org>
                             <br>
                             <strong>Cc: </strong>duress <duress@mailbox.org>
                             <br>
                             <strong>Date: </strong>Friday, 20 February 2026 9:18 AM EET
                             <br>
                             <strong>Subject: </strong>Re: [Kea-users] kea-dhcp4 service failing to start with 'cannot open shared object file'
                             <br>
                             <br>
                             <div style="font-family: '-apple-system' , 'blinkmacsystemfont' , 'helvetica' , sans-serif;">
                              I tried truncating the library path value to just the file base name:
                              <br>
                                <...>   "library": "libdhcp_ha.so",   <...>
                              <br>
                              the changed path value was reflected in the error message I got after starting the service again, but it didn't seem to improve the issue at all:
                              <br>
                                Feb 19 23:08:23 diorite kea-dhcp4[4551]: ERROR HOOKS_OPEN_ERROR failed to open hook library libdhcp_ha.so: libkea-dhcpsrv.so.145: cannot open shared object file: No such file or directory
                              <br>
                              <br>
                              <br>
                              I don't see any issues loading dependencies for libdhcp_ha.so, and there's an error as expected for the nonexistent file.
                              <br>
                              <br>
                              root@diorite:/etc/kea# ldd /usr/local/lib/aarch64-linux-gnu/kea/hooks/libdhcp_ha.so 
                              <br>
                                      linux-vdso.so.1 (0x0000ffff83b55000)
                              <br>
                                      libkea-dhcpsrv.so.145 => /usr/local/lib/aarch64-linux-gnu/libkea-dhcpsrv.so.145 (0x0000ffff83650000)
                              <br>
                                      libkea-process.so.104 => /usr/local/lib/aarch64-linux-gnu/libkea-process.so.104 (0x0000ffff835e0000)
                              <br>
                                      libkea-stats.so.64 => /usr/local/lib/aarch64-linux-gnu/libkea-stats.so.64 (0x0000ffff83590000)
                              <br>
                                      libkea-config.so.96 => /usr/local/lib/aarch64-linux-gnu/libkea-config.so.96 (0x0000ffff834f0000)
                              <br>
                                      libkea-http.so.99 => /usr/local/lib/aarch64-linux-gnu/libkea-http.so.99 (0x0000ffff833a0000)
                              <br>
                                      libkea-dhcp.so.124 => /usr/local/lib/aarch64-linux-gnu/libkea-dhcp.so.124 (0x0000ffff831f0000)
                              <br>
                                      libkea-hooks.so.134 => /usr/local/lib/aarch64-linux-gnu/libkea-hooks.so.134 (0x0000ffff83190000)
                              <br>
                                      libkea-cc.so.95 => /usr/local/lib/aarch64-linux-gnu/libkea-cc.so.95 (0x0000ffff83110000)
                              <br>
                                      libkea-asiolink.so.102 => /usr/local/lib/aarch64-linux-gnu/libkea-asiolink.so.102 (0x0000ffff83070000)
                              <br>
                                      libkea-log.so.86 => /usr/local/lib/aarch64-linux-gnu/libkea-log.so.86 (0x0000ffff83020000)
                              <br>
                                      libkea-util.so.116 => /usr/local/lib/aarch64-linux-gnu/libkea-util.so.116 (0x0000ffff82f80000)
                              <br>
                                      libkea-exceptions.so.55 => /usr/local/lib/aarch64-linux-gnu/libkea-exceptions.so.55 (0x0000ffff82f50000)
                              <br>
                                      libcrypto.so.3 => /lib/aarch64-linux-gnu/libcrypto.so.3 (0x0000ffff82ad0000)
                              <br>
                                      libstdc++.so.6 => /lib/aarch64-linux-gnu/libstdc++.so.6 (0x0000ffff82840000)
                              <br>
                                      libgcc_s.so.1 => /lib/aarch64-linux-gnu/libgcc_s.so.1 (0x0000ffff82800000)
                              <br>
                                      libc.so.6 => /lib/aarch64-linux-gnu/libc.so.6 (0x0000ffff82640000)
                              <br>
                                      /lib/ld-linux-aarch64.so.1 (0x0000ffff83b10000)
                              <br>
                                      libkea-eval.so.97 => /usr/local/lib/aarch64-linux-gnu/libkea-eval.so.97 (0x0000ffff82590000)
                              <br>
                                      libkea-dhcp_ddns.so.79 => /usr/local/lib/aarch64-linux-gnu/libkea-dhcp_ddns.so.79 (0x0000ffff82510000)
                              <br>
                                      libkea-database.so.87 => /usr/local/lib/aarch64-linux-gnu/libkea-database.so.87 (0x0000ffff824c0000)
                              <br>
                                      libkea-cryptolink.so.75 => /usr/local/lib/aarch64-linux-gnu/libkea-cryptolink.so.75 (0x0000ffff82490000)
                              <br>
                                      libkea-cfgrpt.so.3 => /usr/local/lib/aarch64-linux-gnu/libkea-cfgrpt.so.3 (0x0000ffff82460000)
                              <br>
                                      libssl.so.3 => /lib/aarch64-linux-gnu/libssl.so.3 (0x0000ffff82390000)
                              <br>
                                      libkea-dns.so.83 => /usr/local/lib/aarch64-linux-gnu/libkea-dns.so.83 (0x0000ffff822a0000)
                              <br>
                                      libkea-log-interprocess.so.4 => /usr/local/lib/aarch64-linux-gnu/libkea-log-interprocess.so.4 (0x0000ffff82270000)
                              <br>
                                      liblog4cplus-2.0.so.3 => /lib/aarch64-linux-gnu/liblog4cplus-2.0.so.3 (0x0000ffff821d0000)
                              <br>
                                      libm.so.6 => /lib/aarch64-linux-gnu/libm.so.6 (0x0000ffff82120000)
                              <div class="default-style">
                              <br>
                              root@diorite:/etc/kea# ldd /usr/local/lib/aarch64-linux-gnu/kea/hooks/libdhcp_nosuchfile.so
                              <br>
                              ldd: /usr/local/lib/aarch64-linux-gnu/kea/hooks/libdhcp_nosuchfile.so: No such file or directory
                              </div>
                              <div class="default-style" style="font-family: '-apple-system' , 'blinkmacsystemfont' , 'helvetica' , sans-serif;"> </div>
                             </div>
                             <blockquote>
                              <div class="default-style">On 02/20/2026 6:44 AM CET Razvan Becheriu <razvan@isc.org> wrote:</div>
                              <div class="default-style"> </div>
                              <div class="default-style"> </div>
                              <div style="font-size: 12pt; font-family: 'arial' , 'helvetica' , sans-serif; color: #000000;">
                              <div> </div>
                              <div id="signature-content-no-signature"></div>
                              <div>can you run:</div>
                              <div style="font-size: 12pt; font-family: 'arial' , 'helvetica' , sans-serif; color: #000000;">
                              <pre>ldd /usr/local/lib/aarch64-linux-gnu/kea/hooks/libdhcp_nosuchfile.so<br><br>and<br><br>ldd /usr/local/lib/aarch64-linux-gnu/kea/hooks/libdhcp_ha.so<br><br>check that all dependencies can be resolved.<br><br>Regards,<br>Razvan</pre>
                              <pre> </pre>
                              <pre><br><br><br><br><br></pre>
                              </div>
                              <div>
                              <div id="OLK_SRC_BODY_SECTION">
                              <blockquote>
                              <hr id="MESSAGE_DATA_MARKER">
                              <strong>From: </strong>Razvan <razvan@isc.org>
                              <br>
                              <strong>To: </strong>Kea <kea-users@lists.isc.org>
                              <br>
                              <strong>Date: </strong>Friday, 20 February 2026 7:37 AM EET
                              <br>
                              <strong>Subject: </strong>Re: [Kea-users] kea-dhcp4 service failing to start with 'cannot open shared object file'
                              <br>
                              <br>
                              <div style="font-size: 12pt; font-family: 'arial' , 'helvetica' , sans-serif; color: #000000;">
                              <div>Hi,</div>
                              <div style="font-size: 12pt; font-family: 'arial' , 'helvetica' , sans-serif; color: #000000;"> </div>
                              <div style="font-size: 12pt; font-family: 'arial' , 'helvetica' , sans-serif; color: #000000;">Kea can load hook libraries from default path just by specifying the hook name:</div>
                              <div style="font-size: 12pt; font-family: 'arial' , 'helvetica' , sans-serif; color: #000000;"> </div>
                              <div style="font-size: 12pt; font-family: 'arial' , 'helvetica' , sans-serif; color: #000000;">
                              <pre>"library": "libdhcp_nosuchfile.so"</pre>
                              </div>
                              <div id="signature-content-no-signature"></div>
                              <div> </div>
                              <div style="font-size: 12pt; font-family: 'arial' , 'helvetica' , sans-serif; color: #000000;">You can try this and see if it is any different.</div>
                              <div style="font-size: 12pt; font-family: 'arial' , 'helvetica' , sans-serif; color: #000000;">I'll try to replicate the issue using my rpi. Will let you know how it goes.</div>
                              <div style="font-size: 12pt; font-family: 'arial' , 'helvetica' , sans-serif; color: #000000;"> </div>
                              <div style="font-size: 12pt; font-family: 'arial' , 'helvetica' , sans-serif; color: #000000;">Regards,</div>
                              <div style="font-size: 12pt; font-family: 'arial' , 'helvetica' , sans-serif; color: #000000;">Razvan</div>
                              <div style="font-size: 12pt; font-family: 'arial' , 'helvetica' , sans-serif; color: #000000;"> </div>
                              <div>
                              <div id="OLK_SRC_BODY_SECTION">
                              <div id="OLK_SRC_BODY_SECTION">
                              <blockquote>
                              <hr id="MESSAGE_DATA_MARKER">
                              <strong>From: </strong>Andrew <kea-users@lists.isc.org>
                              <br>
                              <strong>To: </strong>kea-users <kea-users@lists.isc.org>
                              <br>
                              <strong>Cc: </strong>Andrew <duress@mailbox.org>
                              <br>
                              <strong>Date: </strong>Friday, 20 February 2026 12:34 AM EET
                              <br>
                              <strong>Subject: </strong>[Kea-users] kea-dhcp4 service failing to start with 'cannot open shared object file'
                              <br>
                              <br>
                              <div class="default-style">Hi, I'm trying to set up a hot-standby redundant dhcp server for my home network and I'm having a real struggle trying to get the kea-dhcp4 daemon to find and load the libdhcp_ha.so library hook so that it can run in HA mode.</div>
                              <div class="default-style">
                              It's working great when I don't ask it to load the HA library hook, but I'm not having any luck with loading the .so. When I try to start the official ubuntu-package-provided kea-dhcp4-server systemd service, it reports the following:
                              <br>
                              ERROR HOOKS_OPEN_ERROR failed to open hook library /usr/local/lib/aarch64-linux-gnu/kea/hooks/libdhcp_nosuchfile.so: /usr/local/lib/aarch64-linux-gnu/kea/hooks/libdhcp_nosuchfile.so: cannot open shared object file: No such file or directory
                              <br>
                              <br>
                              </div>
                              <div class="default-style">I believe the issue being reported by the service in my system logs is actually something other than a failed read operation on the listed path, and I can explain my reasoning for drawing this conclusion.</div>
                              <div class="default-style">I am hoping someone with the patience to read all this can suggest something I should try that I haven't thought of yet, or point out an error that I've made, that will help me get my HA pair online! thanks in advance for your attention.</div>
                              <div class="default-style">
                              <br>
                              Here's a list of the things I have tried so far to fix this issue in approximate chronological order:
                              </div>
                              <div class="default-style">
                              <ul>
                              <li>I manually confirmed that the file exists, by copying the full file name and path directly from the error message and pasting it into the terminal. the file exists.
                              <br>
                              <br></li>
                              <li>checked the unix file permissions on the .so itself (at /usr/local/lib/aarch64-linux-gnu/kea/hooks/libdhcp_sh.so), and also of each directory in that file path all the way down to /usr.
                              <br>
                              all have mode o+r set, and I have confirmed that I can read the contents of the file from a shell running as the kea user (_kea on my system). it is not a file permissions error.
                              <br>
                              <br></li>
                              <li>checked for enhanced access control subsystems. selinux is not installed on this server. apparmor is installed, and when I checked my kernel log I found that apparmor was reporting some blocked access to the library hook file in question.
                              <br>
                              I addressed these by updating the apparmor profile for /usr/sbin/kea-dhcp4, which required adding explicit permits for the r and m masks.
                              <br>
                              I made these changes by hand at first, then reset and used the aa-genprof tool from the official apparmor-utils package which generated the same set of changes I had applied by hand. These changes fixed the apparmor permissions conflict that was reported in my kernel log.
                              <br>
                              I confirmed that apparmor was no longer responsible for blocking access to the file by shutting off apparmor protections system-wide, which did not fix the issue.
                              <br>
                              <br></li>
                              <li>I copied the target .so file to a new directory under /etc/kea/lib/, and updated the service configs and the apparmor profile to point at this new file location.
                              <br>
                              The service continued to report that it cannot open the file because it does not exist, this time naming the new path under /etc/kea/lib/. I again copy-pasted the path from the error message to ensure I hadn't made any errors in my typing.
                              <br>
                              This didn't produce any positive results, so I reverted the configs to point to the default path to avoid unnecessary complication in further debugging.
                              <br>
                              <br></li>
                              <li>I found the presented troubleshooting advice in the official kea-dhcp4-server install guide from ISC, which indicates that in cases exactly like the one I was dealing with, one should run ldconfig with root permissions to update the linker cache. I did this.
                              <br>
                              I checked that the directory path containing the library was listed in a file under /etc/ld.so.conf.d/. I checked that /etc/ld.so.conf.d/ was correctly included in /etc/ld.so.conf. I ran ldconfig again as root while explicitly passing the directory immediately containing the .do file.
                              <br>
                              I ran ldconfig -p | grep to confirm that the desired shared object file was present in the cache, and that it was indexed at the expected file path, which it was.
                              <br>
                              Out of pure superstition, I even rebooted the server and checked again -- still present in the cache at the correct path.
                              <br>
                              <br></li>
                              <li>I opened the systemd service unit file to look for clues about any restricted filesystem access, system call capabilities, or anything else of this nature. I didn't find any in the unit file for this service.
                              <br>
                              <br></li>
                              <li>I explicitly added LD_LIBRARY_PATH=/usr/local/lib/aarch64-linux-gnu/kea/hooks to the service's environment variables exposed by systemd, then reloaded the systemd daemon to read the unit file changes. no help.
                              <br>
                              <br></li>
                              <li>I inserted strace into the unit file exec line to report any system calls related to the target file, reloaded the systemd daemon, and attempted to start the service again.
                              <br>
                              For comparison, I edited the service config at /etc/kea/kea-dhcp4.conf and the strace invocation in the service unit file to look for a known-bogus .so file in the same directory, reloaded the daemon again, and started the service again.
                              <br>
                              Comparing the strace output from the two calls, there is a clear difference between the system calls and results reported by strace. In the output from the service start with a known-bad file path, strace reports a single openat() system call to the expected file, which as expected returns -1 with errno ENOENT.
                              <br>
                              By comparison, the strace output from the service start with configs pointing to the real .so file which should be accessible to the service shows 6 system calls related to the .so file in question: openat(), read(), fstat(), mmap(), mmap(), close(). none of these system calls are shown to have errored with an associated errno code, or to have returned with a negative value.</li>
                              </ul>
                              <div class="default-style" style="font-family: '-apple-system' , 'blinkmacsystemfont' , 'helvetica' , sans-serif;">At this point I'm not really sure where to go, I am intimidated by the prospect of trying to dive into the kea-dhcp codebase and figure out what is reporting an ENOENT-related error message when there (seemingly, to my eyes) doesn't seem to be any such error occurring.</div>
                              <div class="default-style" style="font-family: '-apple-system' , 'blinkmacsystemfont' , 'helvetica' , sans-serif;"> </div>
                              <div class="default-style" style="font-family: '-apple-system' , 'blinkmacsystemfont' , 'helvetica' , sans-serif;">
                              I am using binaries and config files as provided from the Ubuntu repos (24.04, arm64), running on a raspberry pi 5, unmodified except as mentioned above and for miscellaneous config changes to /etc/kea/kea-dhcp4.conf to suit the needs of my network.
                              <br>
                              <br>
                              The debian packages I'm using are as follows:
                              <br>
                              ii  kea-admin                              2.4.1-3ubuntu0.1                        arm64        Administration utilities for Kea DHCP server
                              <br>
                              ii  kea-common                             2.4.1-3ubuntu0.1                        arm64        Common libraries for the Kea DHCP server
                              <br>
                              ii  kea-dev                                2.4.1-3ubuntu0.1                        arm64        Development headers for Kea DHCP server
                              <br>
                              ii  kea-dhcp4-server                       2.4.1-3ubuntu0.1                        arm64        IPv4 DHCP server
                              <br>
                              <br>
                              The kea version number reported by the binary that shipped with the above packages is 3.1.5
                              <br>
                              <br>
                              I am putting a copy of some relevant terminal buffers and config files up on my public webserver for reference, links to follow:
                              <br>
                              <br>
                              (config files doctored to target a nonexistent libdhcp_nosuchfile.so)
                              <br>
                              <a href="https://pdxlents.online/kea-dhcp4.conf.bad_configs.txt" target="_blank" rel="noopener">https://pdxlents.online/kea-dhcp4.conf.bad_configs.txt</a>
                              <br>
                              <a href="https://pdxlents.online/systemd_unit_file.bad_configs.txt" target="_blank" rel="noopener">https://pdxlents.online/systemd_unit_file.bad_configs.txt</a>
                              </div>
                              <div class="default-style" style="font-family: '-apple-system' , 'blinkmacsystemfont' , 'helvetica' , sans-serif;">
                              <a href="https://pdxlents.online/terminal_log.bad_configs.txt" target="_blank" rel="noopener">https://pdxlents.online/terminal_log.bad_configs.txt</a>
                              <br>
                              <br>
                              (config files targeting an actually existing libdhcp_ha.so)
                              </div>
                              <div class="default-style" style="font-family: '-apple-system' , 'blinkmacsystemfont' , 'helvetica' , sans-serif;">
                              <a href="https://pdxlents.online/kea-dhcp4.conf.good_configs.txt" target="_blank" rel="noopener">https://pdxlents.online/kea-dhcp4.conf.good_configs.txt</a>
                              <br>
                              <a href="https://pdxlents.online/terminal_log.good_configs.txt" target="_blank" rel="noopener">https://pdxlents.online/terminal_log.good_configs.txt</a>
                              </div>
                              <div class="default-style" style="font-family: '-apple-system' , 'blinkmacsystemfont' , 'helvetica' , sans-serif;">
                              <a href="https://pdxlents.online/systemd_unit_file.good_configs.txt" target="_blank" rel="noopener">https://pdxlents.online/systemd_unit_file.good_configs.txt</a>
                              <br>
                              <br>
                              (version output from my server binary)
                              </div>
                              <div class="default-style" style="font-family: '-apple-system' , 'blinkmacsystemfont' , 'helvetica' , sans-serif;">
                              <a href="https://pdxlents.online/kea-dhcp4_-V.txt" target="_blank" rel="noopener">https://pdxlents.online/kea-dhcp4_-V.txt</a>
                              <br>
                              <br>
                              Thanks again for reading, and for any advice or suggestions!
                              </div>
                              </div>
                              </blockquote>
                              </div>
                              </div>
                              </div>
                              </div>
                              </blockquote>
                              </div>
                              </div>
                              </div>
                              --
                              <br>
                              ISC funds the development of this software with paid support subscriptions. Contact us at https://www.isc.org/contact/ for more information.
                              <br>
                              <br>
                              To unsubscribe visit https://lists.isc.org/mailman/listinfo/kea-users.
                              <br>
                              Kea-users@lists.isc.org
                             </blockquote>
                            </blockquote>
                           </div>
                          </div>
                         </div>
                        </blockquote>
                       </div>
                      </div>
                     </div>
                     --
                     <br>
                     ISC funds the development of this software with paid support subscriptions. Contact us at https://www.isc.org/contact/ for more information.
                     <br>
                     <br>
                     To unsubscribe visit https://lists.isc.org/mailman/listinfo/kea-users.
                     <br>
                     Kea-users@lists.isc.org
                    </blockquote>
                   </blockquote>
                  </div>
                 </div>
                </div>
               </blockquote>
              </div>
             </div>
            </div>
           </blockquote>
          </div>
         </div>
        </div>
       </blockquote>
      </div>
     </div>
    </div>
    --
    <br>
    ISC funds the development of this software with paid support subscriptions. Contact us at https://www.isc.org/contact/ for more information.
    <br>
    <br>
    To unsubscribe visit https://lists.isc.org/mailman/listinfo/kea-users.
    <br>
    Kea-users@lists.isc.org
   </blockquote>
   --
   <br>
   ISC funds the development of this software with paid support subscriptions. Contact us at https://www.isc.org/contact/ for more information.
   <br>
   <br>
   To unsubscribe visit https://lists.isc.org/mailman/listinfo/kea-users.
   <br>
   Kea-users@lists.isc.org
  </blockquote>
 </body>
</html>