[Kea-users] kea-dhcp6-server not running hook scripts

Razvan Becheriu razvan at isc.org
Sat Oct 26 05:14:11 UTC 2024


 
Hi, 
  
Can you move the script to some other location, e.g. home folder? could it be an apparmor config issue? 
  
Regards, 
Razvan 
 
  
 
 
 

-----Original Message-----

From: Justin <kea-users at lists.isc.org>
To: Kea-users <Kea-users at lists.isc.org>
Cc: Justin <justin at emeraldbroadband.com>
Date: Saturday, 26 October 2024 1:23 AM EEST
Subject: [Kea-users] kea-dhcp6-server not running hook scripts

 
 Hi folks,   I’m trying to get the libdhcp_run_script.so library to run a script on DHCPv6 address assignment and renewal, but I can’t seem to get any signs of life out of it. My configuration includes:   "hooks-libraries": [         {             "library": "/usr/lib/x86_64-linux-gnu/kea/hooks/libdhcp_run_script.so",             "parameters": {                 "name": "/etc/kea/update-v6.sh",                 "sync": false             }         }     ],   And my update-v6.sh script looks like:   #!/bin/bash   unknown_handle() {     echo "Unhandled function call ${*}"     exit 123 }     lease6_renew () {     echo "lease6_renew" >> /tmp/ithappened.txt     echo $(env) >> /tmp/ithappened.txt     curl  http://23.x.x.x:8383     exit 0 }   lease6_rebind () {     echo "lease6_rebind" >> /tmp/ithappened.txt     echo $(env) >> /tmp/ithappened.txt     curl  http://23.x.x.x:8383     exit 0 }   lease6_expire () {     echo "lease6_expire" >> /tmp/ithappened.txt     echo $(env) >> /tmp/ithappened.txt     curl  http://23.x.x.x:8383     exit 0 }   lease6_recover () {     echo "lease6_recover" >> /tmp/ithappened.txt     echo $(env) >> /tmp/ithappened.txt     curl  http://23.x.x.x:8383     exit 0 }   leases6_committed () {     echo "lease6_committed" >> /tmp/ithappened.txt     echo $(env) >> /tmp/ithappened.txt     curl  http://23.x.x.x:8383     exit 0 }   lease6_release () {     echo "lease6_release" >> /tmp/ithappened.txt     echo $(env) >> /tmp/ithappened.txt     curl  http://23.x.x.x:8383     exit 0 }   lease6_decline () {     echo "lease6_decline" >> /tmp/ithappened.txt     echo $(env) >> /tmp/ithappened.txt     curl  http://23.x.x.x:8383     exit 0 }   case "$1" in     "lease6_renew")         lease6_renew         ;;     "lease6_rebind")         lease6_rebind         ;;     "lease6_expire")         lease6_expire         ;;     "lease6_recover")         lease6_recover         ;;     "leases6_committed")         leases6_committed         ;;     "lease6_release")         lease6_release         ;;     "lease6_decline")         lease6_decline         ;;     *)         unknown_handle "${@}"         ;; esac   As you can see, I’m just trying to get some kind of response out of it so that I can iterate on it – either as output to a file or even just a curl command showing that my server was touched (I was thinking maybe there’s some kind of extra file permissions layer that I’m overlooking so I added the curl command to see if I could get any kind of response out of it at all).   I can see that the library is loaded:   Oct 25 22:08:13 b1f18944-0de2-4ac0-8a3d-81c5d81c4a0c kea-dhcp6[126798]: INFO  RUN_SCRIPT_LOAD Run Script hooks library has been loaded Oct 25 22:08:13 b1f18944-0de2-4ac0-8a3d-81c5d81c4a0c kea-dhcp6[126798]: INFO  HOOKS_LIBRARY_LOADED hooks library /usr/lib/x86_64-linux-gnu/kea/hooks/libdhcp_run_script.so successfully loaded   …but even when I receive messages like this in the journal:   Oct 25 22:04:11 b1f18944-0de2-4ac0-8a3d-81c5d81c4a0c kea-dhcp6[126689]: INFO  DHCP6_LEASE_RENEW duid=[00:04:00:00:00:00:00:00:00:00:00:00:ac:1f:6b:49:66:18], tid=0x734250: lease for address 2604:2940:f1b0:9e7:0:1:1:0 and iaid=0 has been allocated Oct 25 22:04:12 b1f18944-0de2-4ac0-8a3d-81c5d81c4a0c kea-dhcp6[126689]: INFO  DHCP6_PD_LEASE_RENEW duid=[00:04:00:00:00:00:00:00:00:00:00:00:ac:1f:6b:49:66:18], tid=0x75f834: lease for prefix 2604:2940:1::/56 and iaid=0 has been allocated   …I see no activity related to the script execution happening. I can run the script manually and it works fine. The permissions are explicitly set to the _kea user that is running the server:   root at b1f18944-0de2-4ac0-8a3d-81c5d81c4a0c:/etc/kea# ls -la total 20 drwxr-xr-x  2 root root 4096 Oct 25 22:14 . drwxr-xr-x 76 root root 4096 Oct 10 20:38 .. -rw-r--r--  1 root root 1940 Oct 11 21:47 kea-dhcp4.conf -rw-r--r--  1 root root 3022 Oct 25 21:51 kea-dhcp6.conf -rwxr-xr-x  1 _kea root 1641 Oct 25 22:07 update-v6.sh root at b1f18944-0de2-4ac0-8a3d-81c5d81c4a0c:/etc/kea# ps aux | grep kea-dhcp6 _kea      126798  0.0  0.5  67316 20948 ?        Ssl  22:08   0:00 /usr/sbin/kea-dhcp6 -c /etc/kea/kea-dhcp6.conf root      126803  0.0  0.4 154112 19760 pts/1    S+   22:08   0:00 journalctl -xeu kea-dhcp6-server -f root      126819  0.0  0.0   6652  2236 pts/0    S+   22:19   0:00 grep kea-dhcp6   I’m at a loss. What am I missing?   -Justin           
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.isc.org/pipermail/kea-users/attachments/20241026/84d7eeed/attachment-0001.htm>


More information about the Kea-users mailing list