"hooks-libraries": [
{
# Loading your hook library!
- "library": "/somepath/lib/libyour_packet_queue.so"
+ "library": "libyour_packet_queue.so"
}
# any other hook libs
"hooks-libraries": [
{
# Loading your hook library!
- "library": "/somepath/lib/libyour_packet_queue.so"
+ "library": "libyour_packet_queue.so"
}
# any other hook libs
// Add hooks here.
"hooks-libraries": [
{
- "library": "/opt/lib/libdhcp_rbac.so",
+ "library": "libdhcp_rbac.so",
"parameters": {
// This section configures the RBAC hook library.
// Mandatory parameters.
// Hook libraries list may contain more than one library.
{
// The only necessary parameter is the library filename.
- "library": "/opt/local/control-agent-commands.so",
+ "library": "control-agent-commands.so",
// Some libraries may support parameters. Make sure you
// type this section carefully, as the CA does not validate
"hooks-libraries": [
{
// Location of the hook library to be loaded.
- "library": "/opt/local/ddns-server-commands.so",
+ "library": "ddns-server-commands.so",
// Hook library-specific configuration parameters.
"parameters": { }
"hooks-libraries": [
{
// Location of the hook library to be loaded.
- "library": "/opt/local/ddns-server-commands.so",
+ "library": "ddns-server-commands.so",
// Hook library-specific configuration parameters.
"parameters": { }
// The GSS-TSIG hook is loaded and its configuration is specified here.
"hooks-libraries": [
{
- "library": "/opt/lib/libddns_gss_tsig.so",
+ "library": "libddns_gss_tsig.so",
"parameters": {
// This section governs the GSS-TSIG integration. Each server
// mentioned in forward-ddns and/or reverse-ddns needs to have
// Hook libraries list may contain more than one library.
{
// The only necessary parameter is the library filename.
- "library": "/opt/local/ddns-server-commands.so",
+ "library": "ddns-server-commands.so",
// Some libraries may support parameters. Make sure you
// type this section carefully, as the CA does not validate
"hooks-libraries": [
{
// Location of the hook library to be loaded.
- "library": "/opt/lib/kea/hooks/libdhcp_lease_cmds.so",
+ "library": "libdhcp_lease_cmds.so",
// Hook library-specific configuration parameters.
"parameters": { }
},
{
// The MySQL host backend hook library required for host storage.
- "library": "/opt/lib/kea/hooks/libdhcp_mysql.so"
+ "library": "libdhcp_mysql.so"
},
{
// The PostgreSQL host backend hook library required for host storage.
- "library": "/opt/lib/kea/hooks/libdhcp_pgsql.so"
+ "library": "libdhcp_pgsql.so"
}
],
"hooks-libraries": [
{
// Location of the hook library to be loaded.
- "library": "/opt/lib/kea/hooks/libdhcp_lease_cmds.so",
+ "library": "libdhcp_lease_cmds.so",
// Hook library-specific configuration parameters.
"parameters": { }
},
{
// The MySQL host backend hook library required for host storage.
- "library": "/opt/lib/kea/hooks/libdhcp_mysql.so"
+ "library": "libdhcp_mysql.so"
},
{
// The PostgreSQL host backend hook library required for host storage.
- "library": "/opt/lib/kea/hooks/libdhcp_pgsql.so"
+ "library": "libdhcp_pgsql.so"
}
],
// Specify the lease backend hook library location.
// {
// // the MySQL lease backend hook library required for lease storage.
-// "library": "/opt/lib/kea/hooks/libdhcp_mysql.so"
+// "library": "libdhcp_mysql.so"
// },
// 3. PostgreSQL backend. Leases will be stored in PostgreSQL database. Make
// Specify the lease backend hook library location.
// {
// // the PostgreSQL lease backend hook library required for lease storage.
-// "library": "/opt/lib/kea/hooks/libdhcp_pgsql.so"
+// "library": "libdhcp_pgsql.so"
// },
// Addresses will be assigned with a lifetime of 4000 seconds.
// The libdhcp_mysql.so is required to use MySQL Configuration
// Backend.
{
- "library": "/usr/local/lib/kea/hooks/libdhcp_mysql.so"
+ "library": "libdhcp_mysql.so"
}
// If using PostgreSQL Configuration Backend, the "libdhcp_pgsql.so" is
// required.
// {
- // "library": "/usr/local/lib/kea/hooks/libdhcp_pgsql.so"
+ // "library": "libdhcp_pgsql.so"
// }
// The libdhcp_cb_cmds.so is optional. It allows for managing the
// configuration in the database. If this library is not loaded,
// the configuration can be managed directly using available
// tools that work directly with the MySQL database.
// ,{
- // "library": "/usr/local/lib/kea/hooks/libdhcp_cb_cmds.so"
+ // "library": "libdhcp_cb_cmds.so"
// }
],
// deliver lease updates to the server as well as synchronize the
// lease database after failure.
{
- "library": "/opt/lib/kea/hooks/libdhcp_lease_cmds.so",
+ "library": "libdhcp_lease_cmds.so",
"parameters": { }
},
{
// The HA hook library should be loaded.
- "library": "/opt/lib/kea/hooks/libdhcp_ha.so",
+ "library": "libdhcp_ha.so",
"parameters": {
// High Availability configuration is specified for the HA hook library.
// Each server should have the same HA configuration, except for the
// deliver lease updates to the server as well as synchronize the
// lease database after failure.
{
- "library": "/opt/lib/kea/hooks/libdhcp_lease_cmds.so",
+ "library": "libdhcp_lease_cmds.so",
"parameters": { }
},
{
// The HA hook library should be loaded.
- "library": "/opt/lib/kea/hooks/libdhcp_ha.so",
+ "library": "libdhcp_ha.so",
"parameters": {
// High Availability configuration is specified for the HA hook library.
// Each server should have the same HA configuration, except for the
"hooks-libraries": [
{
// Load the flex-id hook library.
- "library": "/usr/local/lib/kea/hooks/libdhcp_flex_id.so",
+ "library": "libdhcp_flex_id.so",
"parameters": {
// Take the ID from the AOP option.
// Load the host cache hook library. It is needed by the RADIUS
// library to keep the attributes from authorization to later user
// for accounting.
- "library": "/usr/local/lib/kea/hooks/libdhcp_host_cache.so"
+ "library": "libdhcp_host_cache.so"
},
{
// Load the RADIUS hook library.
- "library": "/usr/local/lib/kea/hooks/libdhcp_radius.so",
+ "library": "libdhcp_radius.so",
"parameters": {
// If do not use RFC 4361
"hooks-libraries": [
{
- "library": "/opt/lib/security.so"
+ "library": "security.so"
},
{
- "library": "/opt/lib/charging.so",
+ "library": "charging.so",
"parameters": {
"path": "/var/log/kea",
"base-name": "kea-forensic6"
"hooks-libraries": [
{
// the MySQL host backend hook library required for host storage.
- "library": "/opt/lib/kea/hooks/libdhcp_mysql.so"
+ "library": "libdhcp_mysql.so"
}
],
"hooks-libraries": [
{
// the PostgreSQL host backend hook library required for host storage.
- "library": "/opt/lib/kea/hooks/libdhcp_pgsql.so"
+ "library": "libdhcp_pgsql.so"
}
],
"hooks-libraries": [
{
// Location of the hook library to be loaded.
- "library": "/opt/lib/kea/hooks/libdhcp_lease_cmds.so",
+ "library": "libdhcp_lease_cmds.so",
// Hook library-specific configuration parameters.
"parameters": { }
},
{
// The MySQL host backend hook library required for host storage.
- "library": "/opt/lib/kea/hooks/libdhcp_mysql.so"
+ "library": "libdhcp_mysql.so"
},
{
// The PostgreSQL host backend hook library required for host storage.
- "library": "/opt/lib/kea/hooks/libdhcp_pgsql.so"
+ "library": "libdhcp_pgsql.so"
}
],
"hooks-libraries": [
{
// Location of the hook library to be loaded.
- "library": "/opt/lib/kea/hooks/libdhcp_lease_cmds.so",
+ "library": "libdhcp_lease_cmds.so",
// Hook library-specific configuration parameters.
"parameters": { }
},
{
// The MySQL host backend hook library required for host storage.
- "library": "/opt/lib/kea/hooks/libdhcp_mysql.so"
+ "library": "libdhcp_mysql.so"
},
{
// The PostgreSQL host backend hook library required for host storage.
- "library": "/opt/lib/kea/hooks/libdhcp_pgsql.so"
+ "library": "libdhcp_pgsql.so"
}
],
// Specify the lease backend hook library location.
// {
// // the MySQL lease backend hook library required for lease storage.
-// "library": "/opt/lib/kea/hooks/libdhcp_mysql.so"
+// "library": "libdhcp_mysql.so"
// },
// 3. PostgreSQL backend. Leases will be stored in PostgreSQL database. Make
// Specify the lease backend hook library location.
// {
// // the PostgreSQL lease backend hook library required for lease storage.
-// "library": "/opt/lib/kea/hooks/libdhcp_pgsql.so"
+// "library": "libdhcp_pgsql.so"
// },
// Addresses will be assigned with preferred and valid lifetimes
// The libdhcp_mysql.so is required to use MySQL Configuration
// Backend.
{
- "library": "/usr/local/lib/kea/hooks/libdhcp_mysql.so"
+ "library": "libdhcp_mysql.so"
}
// If using PostgreSQL Configuration Backend, the "libdhcp_pgsql.so" is
// required.
// {
- // "library": "/usr/local/lib/kea/hooks/libdhcp_pgsql.so"
+ // "library": "libdhcp_pgsql.so"
// }
// The libdhcp_cb_cmds.so is optional. It allows for managing the
// configuration in the database. If this library is not loaded,
// the configuration can be managed directly using available
// tools that work directly with the MySQL database.
// ,{
- // "library": "/usr/local/lib/kea/hooks/libdhcp_cb_cmds.so"
+ // "library": "libdhcp_cb_cmds.so"
// }
],
// deliver lease updates to the server as well as synchronize the
// lease database after failure.
{
- "library": "/opt/lib/kea/hooks/libdhcp_lease_cmds.so",
+ "library": "libdhcp_lease_cmds.so",
"parameters": { }
},
{
// The HA hook library should be loaded.
- "library": "/opt/lib/kea/hooks/libdhcp_ha.so",
+ "library": "libdhcp_ha.so",
"parameters": {
// High Availability configuration is specified for the HA hook library.
// Each server should have the same HA configuration, except for the
// deliver lease updates to the server as well as synchronize the
// lease database after failure.
{
- "library": "/opt/lib/kea/hooks/libdhcp_lease_cmds.so",
+ "library": "libdhcp_lease_cmds.so",
"parameters": { }
},
{
// The HA hook library should be loaded.
- "library": "/opt/lib/kea/hooks/libdhcp_ha.so",
+ "library": "libdhcp_ha.so",
"parameters": {
// High Availability configuration is specified for the HA hook library.
// Each server should have the same HA configuration, except for the
"hooks-libraries": [
{
- "library": "/opt/lib/security.so"
+ "library": "security.so"
},
{
- "library": "/opt/lib/charging.so",
+ "library": "charging.so",
"parameters": {
"path": "/var/log/kea",
"base-name": "kea-forensic6"
"hooks-libraries": [
{
// the MySQL host backend hook library required for host storage.
- "library": "/opt/lib/kea/hooks/libdhcp_mysql.so"
+ "library": "libdhcp_mysql.so"
}
],
"hooks-libraries": [
{
// the PostgreSQL host backend hook library required for host storage.
- "library": "/opt/lib/kea/hooks/libdhcp_pgsql.so"
+ "library": "libdhcp_pgsql.so"
}
],
// // Hook libraries list may contain more than one library.
// {
// // The only necessary parameter is the library filename.
- // "library": "/opt/local/netconf-commands.so",
+ // "library": "netconf-commands.so",
// // Some libraries may support parameters. Make sure you
// // type this section carefully, as the CA does not validate
// // Hook libraries list may contain more than one library.
// {
// // The only necessary parameter is the library filename.
- // "library": "/opt/local/netconf-commands.so",
+ // "library": "netconf-commands.so",
// // Some libraries may support parameters. Make sure you
// // type this section carefully, as the CA does not validate
// deliver lease updates to the server as well as synchronize the
// lease database after failure.
{
- "library": "/usr/lib/x86_64-linux-gnu/kea/hooks/libdhcp_lease_cmds.so"
+ "library": "libdhcp_lease_cmds.so"
},
{
// The HA hook library should be loaded.
- "library": "/usr/lib/x86_64-linux-gnu/kea/hooks/libdhcp_ha.so",
+ "library": "libdhcp_ha.so",
"parameters": {
// Each server should have the same HA configuration, except for the
// "this-server-name" parameter.
// deliver lease updates to the server as well as synchronize the
// lease database after failure.
{
- "library": "/usr/lib/x86_64-linux-gnu/kea/hooks/libdhcp_lease_cmds.so"
+ "library": "libdhcp_lease_cmds.so"
},
{
// The HA hook library should be loaded.
- "library": "/usr/lib/x86_64-linux-gnu/kea/hooks/libdhcp_ha.so",
+ "library": "libdhcp_ha.so",
"parameters": {
// Each server should have the same HA configuration, except for the
// "this-server-name" parameter.
// deliver lease updates to the server as well as synchronize the
// lease database after failure.
{
- "library": "/usr/lib/x86_64-linux-gnu/kea/hooks/libdhcp_lease_cmds.so"
+ "library": "libdhcp_lease_cmds.so"
},
{
// The HA hook library should be loaded.
- "library": "/usr/lib/x86_64-linux-gnu/kea/hooks/libdhcp_ha.so",
+ "library": "libdhcp_ha.so",
"parameters": {
// Each server should have the same HA configuration, except for the
// "this-server-name" parameter.
// deliver lease updates to the server as well as synchronize the
// lease database after failure.
{
- "library": "/usr/lib/x86_64-linux-gnu/kea/hooks/libdhcp_lease_cmds.so"
+ "library": "libdhcp_lease_cmds.so"
},
{
// The HA hook library should be loaded.
- "library": "/usr/lib/x86_64-linux-gnu/kea/hooks/libdhcp_ha.so",
+ "library": "libdhcp_ha.so",
"parameters": {
// Each server should have the same HA configuration, except for the
// "this-server-name" parameter.
"hooks-libraries": [
{
- "library": "/opt/local/custom_hooks_example.so",
+ "library": "custom_hooks_example.so",
"parameters": {
"param1": "foo"
}
"Dhcp4": { "hooks-libraries": [
{
// the MySQL lease backend hook library required for lease storage.
- "library": "/opt/lib/kea/hooks/libdhcp_mysql.so"
+ "library": "libdhcp_mysql.so"
}, ... ], ... }
Since Kea.2.7.4, the libdhcp_pgsql.so hook library must be loaded in order to
"Dhcp4": { "hooks-libraries": [
{
// the PostgreSQL lease backend hook library required for lease storage.
- "library": "/opt/lib/kea/hooks/libdhcp_pgsql.so"
+ "library": "libdhcp_pgsql.so"
}, ... ], ... }
"Dhcp4": { "hooks-libraries": [
{
// the MySQL host backend hook library required for host storage.
- "library": "/opt/lib/kea/hooks/libdhcp_mysql.so"
+ "library": "libdhcp_mysql.so"
}, ... ], ... }
Since Kea.2.7.4, the libdhcp_pgsql.so hook library must be loaded in order to
"Dhcp4": { "hooks-libraries": [
{
// the PostgreSQL host backend hook library required for host storage.
- "library": "/opt/lib/kea/hooks/libdhcp_pgsql.so"
+ "library": "libdhcp_pgsql.so"
}, ... ], ... }
},
"hooks-libraries": [
{
- "library": "/usr/local/lib/kea/hooks/libdhcp_mysql.so"
+ "library": "libdhcp_mysql.so"
},
{
- "library": "/usr/local/lib/kea/hooks/libdhcp_cb_cmds.so"
+ "library": "libdhcp_cb_cmds.so"
}
]
}
},
"hooks-libraries": [
{
- "library": "/usr/local/lib/kea/hooks/libdhcp_pgsql.so"
+ "library": "libdhcp_pgsql.so"
},
{
- "library": "/usr/local/lib/kea/hooks/libdhcp_cb_cmds.so"
+ "library": "libdhcp_cb_cmds.so"
}
]
}
"Dhcp6": { "hooks-libraries": [
{
// the MySQL lease backend hook library required for lease storage.
- "library": "/opt/lib/kea/hooks/libdhcp_mysql.so"
+ "library": "libdhcp_mysql.so"
}, ... ], ... }
Since Kea.2.7.4, the libdhcp_pgsql.so hook library must be loaded in order to
"Dhcp6": { "hooks-libraries": [
{
// the PostgreSQL lease backend hook library required for lease storage.
- "library": "/opt/lib/kea/hooks/libdhcp_pgsql.so"
+ "library": "libdhcp_pgsql.so"
}, ... ], ... }
"Dhcp6": { "hooks-libraries": [
{
// the MySQL host backend hook library required for host storage.
- "library": "/opt/lib/kea/hooks/libdhcp_mysql.so"
+ "library": "libdhcp_mysql.so"
}, ... ], ... }
Since Kea.2.7.4, the libdhcp_pgsql.so hook library must be loaded in order to
"Dhcp6": { "hooks-libraries": [
{
// the PostgreSQL host backend hook library required for host storage.
- "library": "/opt/lib/kea/hooks/libdhcp_pgsql.so"
+ "library": "libdhcp_pgsql.so"
}, ... ], ... }
},
"hooks-libraries": [
{
- "library": "/usr/local/lib/kea/hooks/libdhcp_mysql.so"
+ "library": "libdhcp_mysql.so"
},
{
- "library": "/usr/local/lib/kea/hooks/libdhcp_cb_cmds.so"
+ "library": "libdhcp_cb_cmds.so"
}
]
}
},
"hooks-libraries": [
{
- "library": "/usr/local/lib/kea/hooks/libdhcp_pgsql.so"
+ "library": "libdhcp_pgsql.so"
},
{
- "library": "/usr/local/lib/kea/hooks/libdhcp_cb_cmds.so"
+ "library": "libdhcp_cb_cmds.so"
}
]
}
// The GSS-TSIG hook is loaded and its configuration is specified here.
"hooks-libraries": [
{
- "library": "/opt/lib/libddns_gss_tsig.so",
+ "library": "libddns_gss_tsig.so",
"parameters": {
// This section governs the GSS-TSIG integration. Each server
// mentioned in forward-ddns and/or reverse-ddns needs to have
// The hook libraries list may contain more than one library.
{
// The only necessary parameter is the library filename.
- "library": "/opt/local/custom_hooks_example.so",
+ "library": "custom_hooks_example.so",
// Some libraries may support parameters. Make sure you
// type this section carefully, as kea-netconf does not
{
// Note that the RADIUS access service requires host-cache for
// proper operation, so this library is loaded as well.
- "library": "/usr/local/lib/kea/hooks/libdhcp_host_cache.so"
+ "library": "libdhcp_host_cache.so"
},
{
- "library": "/usr/local/lib/kea/hooks/libdhcp_radius.so",
+ "library": "libdhcp_radius.so",
"parameters": {
// Specify where the dictionary is located.
"Dhcp4": {
"hooks-libraries": [
- { "library": "/usr/local/lib/libdhcp_bootp.so" },
+ { "library": "libdhcp_bootp.so" },
...
]
}
{
"hooks-libraries": [
{
- "library": "/usr/local/lib/libdhcp_ddns_tuning.so",
+ "library": "libdhcp_ddns_tuning.so",
"parameters": {
...
}
{
"hooks-libraries": [
{
- "library": "/usr/local/lib/libdhcp_ddns_tuning.so",
+ "library": "libdhcp_ddns_tuning.so",
"parameters": {
"hostname-expr": "'host-'+hexstring(pkt4.mac,'-')",
...
{
"hooks-libraries": [
{
- "library": "/usr/local/lib/libdhcp_ddns_tuning.so",
+ "library": "libdhcp_ddns_tuning.so",
"parameters": {
"hostname-expr" : "ifelse(option[12].exists, option[host-name].text, option[81].text)"
}
"Dhcp6": {
"hooks-libraries": [
{
- "library": "/path/libdhcp_flex_id.so",
+ "library": "libdhcp_flex_id.so",
"parameters": {
"identifier-expression": "expression",
"replace-client-id": false,
# add "flex-id" to reservation identifiers
"hooks-libraries": [
{
- "library": "/path/libdhcp_flex_id.so",
+ "library": "libdhcp_flex_id.so",
"parameters": {
"identifier-expression": "substring(relay6[0].option[18].hex,0,8)"
}
# add "flex-id" to reservation identifiers
"hooks-libraries": [
{
- "library": "/path/libdhcp_flex_id.so",
+ "library": "libdhcp_flex_id.so",
"parameters": {
"identifier-expression": "vendor[4491].option[1026].hex"
}
"Dhcp4": {
"hooks-libraries": [
{
- "library": "/path/libdhcp_flex_id.so",
+ "library": "libdhcp_flex_id.so",
"parameters": {
"identifier-expression": "expression",
"replace-client-id": true
"Dhcp4": {
"hooks-libraries": [
{
- "library": "/usr/local/lib/libdhcp_flex_option.so",
+ "library": "libdhcp_flex_option.so",
"parameters": {
"options": [
{
"Dhcp4": {
"hooks-libraries": [
{
- "library": "/usr/local/lib/libdhcp_flex_option.so",
+ "library": "libdhcp_flex_option.so",
"parameters": {
"options": [
{
"Dhcp4": {
"hooks-libraries": [
{
- "library": "/usr/local/lib/libdhcp_flex_option.so",
+ "library": "libdhcp_flex_option.so",
"parameters": {
"options": [
{
{
"Dhcp4": {
"hooks-libraries": [{
- "library": "/usr/lib/kea/hooks/libdhcp_lease_cmds.so",
+ "library": "libdhcp_lease_cmds.so",
"parameters": { }
}, {
- "library": "/usr/lib/kea/hooks/libdhcp_ha.so",
+ "library": "libdhcp_ha.so",
"parameters": {
"high-availability": [{
"this-server-name": "server1",
{
"Dhcp4": {
"hooks-libraries": [{
- "library": "/usr/lib/kea/hooks/libdhcp_lease_cmds.so",
+ "library": "libdhcp_lease_cmds.so",
"parameters": { }
}, {
- "library": "/usr/lib/kea/hooks/libdhcp_ha.so",
+ "library": "libdhcp_ha.so",
"parameters": {
"high-availability": [{
"this-server-name": "server2",
"Dhcp4": {
"hooks-libraries": [{
- "library": "/usr/lib/kea/hooks/libdhcp_lease_cmds.so",
+ "library": "libdhcp_lease_cmds.so",
"parameters": { }
}, {
- "library": "/usr/lib/kea/hooks/libdhcp_ha.so",
+ "library": "libdhcp_ha.so",
"parameters": {
"high-availability": [{
"this-server-name": "server1",
}],
"hooks-libraries": [{
- "library": "/usr/lib/kea/hooks/libdhcp_lease_cmds.so",
+ "library": "libdhcp_lease_cmds.so",
"parameters": { }
}, {
- "library": "/usr/lib/kea/hooks/libdhcp_ha.so",
+ "library": "libdhcp_ha.so",
"parameters": {
"high-availability": [{
}]
"Dhcp4": {
"hooks-libraries": [{
- "library": "/usr/lib/kea/hooks/libdhcp_lease_cmds.so",
+ "library": "libdhcp_lease_cmds.so",
"parameters": { }
}, {
- "library": "/usr/lib/kea/hooks/libdhcp_ha.so",
+ "library": "libdhcp_ha.so",
"parameters": {
"high-availability": [{
"this-server-name": "server1",
{
"Dhcp4": {
"hooks-libraries": [{
- "library": "/usr/lib/kea/hooks/libdhcp_lease_cmds.so",
+ "library": "libdhcp_lease_cmds.so",
"parameters": { }
}, {
- "library": "/usr/lib/kea/hooks/libdhcp_ha.so",
+ "library": "libdhcp_ha.so",
"parameters": {
"high-availability": [{
"this-server-name": "server1",
"Dhcp4": {
"hooks-libraries": [
{
- "library": "/usr/lib/kea/hooks/libdhcp_lease_cmds.so",
+ "library": "libdhcp_lease_cmds.so",
"parameters": { }
},
{
- "library": "/usr/lib/kea/hooks/libdhcp_ha.so",
+ "library": "libdhcp_ha.so",
"parameters": {
"high-availability": [ {
"this-server-name": "server1",
"Dhcp4": {
"hooks-libraries": [
{
- "library": "/usr/lib/kea/hooks/libdhcp_lease_cmds.so",
+ "library": "libdhcp_lease_cmds.so",
"parameters": { }
},
{
- "library": "/usr/lib/kea/hooks/libdhcp_ha.so",
+ "library": "libdhcp_ha.so",
"parameters": {
"high-availability": [ {
"this-server-name": "server1",
"Dhcp4": {
"hooks-libraries": [
{
- "library": "/usr/lib/kea/hooks/libdhcp_lease_cmds.so",
+ "library": "libdhcp_lease_cmds.so",
"parameters": { }
},
{
- "library": "/usr/lib/kea/hooks/libdhcp_ha.so",
+ "library": "libdhcp_ha.so",
"parameters": {
"high-availability": [ {
"this-server-name": "server1",
"Dhcp4": {
"hooks-libraries": [
{
- "library": "/usr/lib/kea/hooks/libdhcp_lease_cmds.so",
+ "library": "libdhcp_lease_cmds.so",
"parameters": { }
},
{
- "library": "/usr/lib/kea/hooks/libdhcp_ha.so",
+ "library": "libdhcp_ha.so",
"parameters": {
"high-availability": [ {
"this-server-name": "server1",
"Dhcp4": {
"hooks-libraries": [
{
- "library": "/usr/lib/kea/hooks/libdhcp_lease_cmds.so",
+ "library": "libdhcp_lease_cmds.so",
"parameters": { }
},
{
- "library": "/usr/lib/kea/hooks/libdhcp_ha.so",
+ "library": "libdhcp_ha.so",
"parameters": {
"high-availability": [ {
"this-server-name": "server1",
},
"hooks-libraries": [
{
- "library": "/usr/lib/kea/hooks/libdhcp_lease_cmds.so",
+ "library": "libdhcp_lease_cmds.so",
"parameters": {}
},
{
- "library": "/usr/lib/kea/hooks/libdhcp_ha.so",
+ "library": "libdhcp_ha.so",
"parameters": {
"high-availability": [
{
},
"hooks-libraries": [
{
- "library": "/usr/lib/kea/hooks/libdhcp_lease_cmds.so",
+ "library": "libdhcp_lease_cmds.so",
"parameters": {}
},
{
- "library": "/usr/lib/kea/hooks/libdhcp_ha.so",
+ "library": "libdhcp_ha.so",
"parameters": {
"high-availability": [
{
"hooks-libraries": [
{
- "library": "/usr/local/lib/kea/hooks/libdhcp_host_cache.so",
+ "library": "libdhcp_host_cache.so",
"parameters": {
# Tells Kea to never cache more than 1000 hosts.
"Dhcp6": {
"hooks-libraries": [
{
- "library": "/path/libdhcp_host_cmds.so"
+ "library": "libdhcp_host_cmds.so"
},
...
]
"Dhcp6": {
"hooks-libraries": [
{
- "library": "/path/libdhcp_lease_cmds.so"
+ "library": "libdhcp_lease_cmds.so"
},
...
]
{
"hooks-libraries": [{
- "library": "/path/libdhcp_lease_cmds.so",
+ "library": "libdhcp_lease_cmds.so",
"parameters": {
"binding-variables": [{
"name": "opt-222",
{
"hooks-libraries": [
{
- "library": "lib/kea/hooks/libdhcp_lease_query.so",
+ "library": "libdhcp_lease_query.so",
"parameters": {
"requesters": [ "192.0.1.1", "10.0.0.2" ]
}
{
"hooks-libraries": [
{
- "library": "lib/kea/hooks/libdhcp_lease_query.so",
+ "library": "libdhcp_lease_query.so",
"parameters": {
"requesters": [ "2001:db8:1::1", "2001:db8:2::1" ],
"prefix-lengths": [ 72 ]
{
"hooks-libraries": [
{
- "library": "lib/kea/hooks/libdhcp_lease_query.so",
+ "library": "libdhcp_lease_query.so",
"parameters": {
"requesters": [ "192.0.2.1", "192.0.2.2" ],
"advanced" : {
{
"hooks-libraries": [
{
- "library": "lib/kea/hooks/libdhcp_lease_query.so",
+ "library": "libdhcp_lease_query.so",
"parameters": {
"requesters": [ "2001:db8:1::1", "2001:db8:2::1" ],
"advanced" : {
"Dhcp4": {
"hooks-libraries": [
{
- "library": "/usr/local/lib/kea/hooks/libdhcp_legal_log.so",
+ "library": "libdhcp_legal_log.so",
"parameters": {
"path": "/var/log/kea",
"base-name": "kea-forensic4"
"Dhcp6": {
"hooks-libraries": [
{
- "library": "/usr/local/lib/kea/hooks/libdhcp_legal_log.so",
+ "library": "libdhcp_legal_log.so",
"parameters": {
"path": "/var/log/kea",
"base-name": "kea-forensic6"
"Dhcp6": {
"hooks-libraries": [
{
- "library": "/usr/local/lib/kea/hooks/libdhcp_legal_log.so",
+ "library": "libdhcp_legal_log.so",
"parameters": {
"path": "/var/log/kea",
"base-name": "kea-forensic6",
"Dhcp6": {
"hooks-libraries": [
{
- "library": "/usr/local/lib/kea/hooks/libdhcp_legal_log.so",
+ "library": "libdhcp_legal_log.so",
"parameters": {
"path": "/var/log/kea",
"base-name": "kea-forensic6",
"Dhcp6": {
"hooks-libraries": [
{
- "library": "/usr/local/lib/kea/hooks/libdhcp_legal_log.so",
+ "library": "libdhcp_legal_log.so",
"parameters": {
"name": "database-name",
"password": "1234",
"Dhcp4": {
"hooks-libraries": [
{
- "library": "/usr/local/lib/kea/hooks/libdhcp_legal_log.so",
+ "library": "libdhcp_legal_log.so",
"parameters": {
"name": "database-name",
"password": "1234",
"Dhcp6": {
"hooks-libraries": [
{
- "library": "/usr/local/lib/kea/hooks/libdhcp_legal_log.so",
+ "library": "libdhcp_legal_log.so",
"parameters": {
"name": "database-name",
"password": "1234",
"Dhcp6": {
"hooks-libraries": [
{
- "library": "/usr/local/lib/libdhcp_limits.so"
+ "library": "libdhcp_limits.so"
}
]
}
{
"hooks-libraries": [
{
- "library": "/usr/local/lib/libdhcp_perfmon.so",
+ "library": "libdhcp_perfmon.so",
"parameters": {
...
}
{
"hooks-libraries": [
{
- "library": "lib/kea/hooks/libdhcp_perfmon.so",
+ "library": "libdhcp_perfmon.so",
"parameters": {
"enable-monitoring": true,
"interval-width-secs": 5,
{
"hooks-libraries": [
{
- "library": "/usr/local/lib/libdhcp_ping_check.so",
+ "library": "libdhcp_ping_check.so",
"parameters": {
...
}
{
"hooks-libraries": [{
- "library": "lib/kea/hooks/libdhcp_ping_check.so",
+ "library": "libdhcp_ping_check.so",
"parameters": {
"enable-ping-check" : true,
"min-ping-requests" : 1,
// Add hooks here.
"hooks-libraries": [
{
- "library": "/opt/lib/libdhcp_rbac.so",
+ "library": "libdhcp_rbac.so",
"parameters": {
// This section configures the RBAC hook library.
// Mandatory parameters.
{
"hooks-libraries": [
{
- "library": "/usr/local/lib/libdhcp_run_script.so",
+ "library": "libdhcp_run_script.so",
"parameters": {
"name": "/full_path_to/script_name.sh",
"sync": false
"Dhcp6": {
"hooks-libraries": [
{
- "library": "/path/libdhcp_stat_cmds.so"
+ "library": "libdhcp_stat_cmds.so"
},
...
]
"Dhcp6": {
"hooks-libraries": [
{
- "library": "/opt/first_custom_hooks_example.so"
+ "library": "first_custom_hooks_example.so"
},
{
- "library": "/opt/local/second_custom_hooks_example.so",
+ "library": "second_custom_hooks_example.so",
"parameters": {
"mail": "spam@example.com",
"floor": 13,
"Hooks directory". This value may be overridden at startup by setting the
environment variable ``KEA_HOOKS_PATH`` to the desired path. If a path other
than this value is used in a ``library`` element Kea will emit an error and refuse
-to load the library. For ease of use ``library`` elements may simply omit path
+to load the library. For ease of use ``library`` elements should simply omit path
components, specifying the file name only as shown below:
.. code-block:: json
}
}
-This snippet (on Debian 12) is equivalent to:
-
-.. code-block:: json
-
- {
- "Dhcp6": {
- "hooks-libraries": [
- {
- "library": "/usr/lib/x86_64-linux-gnu/kea/hooks/first_custom_hooks_example.so"
- },
- {
- "library": "/usr/lib/x86_64-linux-gnu/kea/hooks/second_custom_hooks_example.so"
- }
- ]
- }
- }
-
.. note::
The support for path components in ``library`` elements is deprecated as of 2.7.8, and will
eventually be removed.
],
"hooks-libraries": [
{
- "library": "/usr/local/lib/libdhcp_limits.so"
+ "library": "libdhcp_limits.so"
}
],
"subnet6": [
"parked-packet-limit": 128
"hooks-libraries": [
{
- "library": "/usr/lib/kea/hooks/libdhcp_lease_cmds.so"
+ "library": "libdhcp_lease_cmds.so"
},
{
- "library": "/usr/lib/kea/hooks/libdhcp_ha.so",
+ "library": "libdhcp_ha.so",
"parameters": {
"high-availability": [
{
@code
"Dhcp4": {
"hooks-libraries": [
- { "library": "/usr/local/lib/libdhcp_bootp.so" },
+ { "library": "libdhcp_bootp.so" },
...
]
}
@code
"Dhcp4": {
"hooks-libraries": [
- { "library": "/usr/local/lib/libdhcp_flex_id.so",
+ { "library": "libdhcp_flex_id.so",
"parameters": {
"identifier-expression": "relay4[2].hex",
"replace-client-id": true
@code
"Dhcp6": {
"hooks-libraries": [
- { "library": "/usr/local/lib/libdhcp_flex_id.so",
+ { "library": "libdhcp_flex_id.so",
"parameters": {
"identifier-expression": "relay6[0].option[37].hex",
"replace-client-id": true,
@code
"Dhcp4": {
"hooks-libraries": [
- { "library": "/usr/local/lib/libdhcp_flex_option.so",
+ { "library": "libdhcp_flex_option.so",
"parameters": {
"options": [
{
@code
"Dhcp6": {
"hooks-libraries": [
- { "library": "/usr/local/lib/libdhcp_flex_option.so",
+ { "library": "libdhcp_flex_option.so",
"parameters": {
"options": [
{
@code
"Dhcp4": {
"hooks-libraries": [
- { "library": "/usr/local/lib/libdhcp_legal_log.so",
+ { "library": "libdhcp_legal_log.so",
"parameters": {
"path": "/var/log/kea",
"base-name": "kea-legal4" } },
@code
"Dhcp6": {
"hooks-libraries": [
- { "library": "/usr/local/lib/libdhcp_legal_log.so",
+ { "library": "libdhcp_legal_log.so",
"parameters": {
"path": "/var/log/kea",
"base-name": "kea-legal6" } },
@code
"Dhcp4": {
"hooks-libraries": [
- { "library": "/usr/local/lib/libdhcp_run_script.so",
+ { "library": "libdhcp_run_script.so",
"parameters": {
"name": "/full_path_to/script_name.sh",
"sync": false
@code
"Dhcp6": {
"hooks-libraries": [
- { "library": "/usr/local/lib/libdhcp_run_script.so",
+ { "library": "libdhcp_run_script.so",
"parameters": {
"name": "/full_path_to/script_name.sh",
"sync": false
:
"hooks-libraries": [
{
- "library": "/usr/local/lib/example.so"
+ "library": "example.so"
}
]
:
:
"hooks-libraries": [
{
- "library": "/usr/lib/library1.so"
+ "library": "library1.so"
},
{
- "library": "/opt/library2.so"
+ "library": "library2.so"
}
:
]
@code
"hooks-libraries": [
{
- "library": "/opt/first.so"
+ "library": "first.so"
},
{
- "library": "/opt/second.so",
+ "library": "second.so",
"parameters": {
}
},
{
- "library": "/opt/third.so",
+ "library": "third.so",
"parameters": {
"mail": "spam@example.com",
"floor": 13,
///
/// "hooks-libraries": [
/// {
- /// "library": "/opt/charging.so",
+ /// "library": "charging.so",
/// "parameters": {}
/// },
/// {
- /// "library": "/opt/local/notification.so",
+ /// "library": "notification.so",
/// "parameters": {
/// "mail": "alarm@example.com",
/// "floor": 42,