Problem:
I am unable to create a new host via manual input and/or foreman_discovery because of dhcp error.
After submitting the entry, I get this error “Create DHCP Settings for cuarto.dot task failed with the following error: ERF12-6899 [ProxyAPI::ProxyException]: Unable to set DHCP entry ([RestClient::BadRequest]: 400 Bad Request) for proxy https://primero.dot:8443/dhcp”
Expected outcome:
Successful Host Creation
Foreman and Proxy versions:
3.0.1
Foreman and Proxy plugin versions:
foreman_bootdisk (18.0.0)
foreman_discovery (18.0.5)
foreman_puppet (1.0.5)
Distribution and version:
Ubuntu 20.04
Other relevant data:
/var/log/foreman-proxy/proxy.log
2021-12-02T13:29:09 7a3dd2d7 [I] Started GET /dhcp/10.70.0.0/mac/00:1e:0b:c6:f1:a0
2021-12-02T13:29:09 7a3dd2d7 [E] No DHCP record for MAC 10.70.0.0/00:1e:0b:c6:f1:a0 found
2021-12-02T13:29:09 7a3dd2d7 [W] Error details for No DHCP record for MAC 10.70.0.0/00:1e:0b:c6:f1:a0 found: <Exception>: No DHCP record for MAC 10.70.0.0/00:1e:0b:c6:f1:a0 found
2021-12-02T13:29:09 7a3dd2d7 [W] No DHCP record for MAC 10.70.0.0/00:1e:0b:c6:f1:a0 found: <Exception>: No DHCP record for MAC 10.70.0.0/00:1e:0b:c6:f1:a0 found
2021-12-02T13:29:09 7a3dd2d7 [I] Finished GET /dhcp/10.70.0.0/mac/00:1e:0b:c6:f1:a0 with 404 (0.93 ms)
2021-12-02T13:29:09 7a3dd2d7 [I] Started GET /dhcp/10.70.0.0/unused_ip mac=00:1e:0b:c6:f1:a0&from=10.70.1.1&to=10.70.1.10
2021-12-02T13:29:11 7a3dd2d7 [I] Finished GET /dhcp/10.70.0.0/unused_ip with 200 (2006.97 ms)
2021-12-02T13:29:11 7a3dd2d7 [I] Started GET /tftp/serverName
2021-12-02T13:29:11 7a3dd2d7 [I] Finished GET /tftp/serverName with 200 (0.59 ms)
2021-12-02T13:29:12 7a3dd2d7 [I] Started GET /dhcp/10.70.0.0/mac/00:1e:0b:c6:f1:a0
2021-12-02T13:29:12 7a3dd2d7 [E] No DHCP record for MAC 10.70.0.0/00:1e:0b:c6:f1:a0 found
2021-12-02T13:29:12 7a3dd2d7 [W] Error details for No DHCP record for MAC 10.70.0.0/00:1e:0b:c6:f1:a0 found: <Exception>: No DHCP record for MAC 10.70.0.0/00:1e:0b:c6:f1:a0 found
2021-12-02T13:29:12 7a3dd2d7 [W] No DHCP record for MAC 10.70.0.0/00:1e:0b:c6:f1:a0 found: <Exception>: No DHCP record for MAC 10.70.0.0/00:1e:0b:c6:f1:a0 found
2021-12-02T13:29:12 7a3dd2d7 [I] Finished GET /dhcp/10.70.0.0/mac/00:1e:0b:c6:f1:a0 with 404 (0.98 ms)
2021-12-02T13:29:12 7a3dd2d7 [I] Started GET /dhcp/10.70.0.0/ip/10.70.1.9
2021-12-02T13:29:12 7a3dd2d7 [E] No DHCP records for IP 10.70.0.0/10.70.1.9 found
2021-12-02T13:29:12 7a3dd2d7 [W] Error details for No DHCP records for IP 10.70.0.0/10.70.1.9 found: <Exception>: No DHCP records for IP 10.70.0.0/10.70.1.9 found
2021-12-02T13:29:12 7a3dd2d7 [W] No DHCP records for IP 10.70.0.0/10.70.1.9 found: <Exception>: No DHCP records for IP 10.70.0.0/10.70.1.9 found
2021-12-02T13:29:12 7a3dd2d7 [I] Finished GET /dhcp/10.70.0.0/ip/10.70.1.9 with 404 (0.86 ms)
2021-12-02T13:30:12 c382e888 [I] Started GET /dhcp/10.70.0.0/mac/00:1e:0b:c6:f1:a0
2021-12-02T13:30:12 c382e888 [E] No DHCP record for MAC 10.70.0.0/00:1e:0b:c6:f1:a0 found
2021-12-02T13:30:12 c382e888 [W] Error details for No DHCP record for MAC 10.70.0.0/00:1e:0b:c6:f1:a0 found: <Exception>: No DHCP record for MAC 10.70.0.0/00:1e:0b:c6:f1:a0 found
2021-12-02T13:30:12 c382e888 [W] No DHCP record for MAC 10.70.0.0/00:1e:0b:c6:f1:a0 found: <Exception>: No DHCP record for MAC 10.70.0.0/00:1e:0b:c6:f1:a0 found
2021-12-02T13:30:12 c382e888 [I] Finished GET /dhcp/10.70.0.0/mac/00:1e:0b:c6:f1:a0 with 404 (0.92 ms)
2021-12-02T13:30:12 c382e888 [I] Started GET /dhcp/10.70.0.0/unused_ip mac=00:1e:0b:c6:f1:a0&from=10.70.1.1&to=10.70.1.10
2021-12-02T13:30:12 c382e888 [W] No free IPs in range 10.70.1.1..10.70.1.10.
2021-12-02T13:30:12 c382e888 [I] Finished GET /dhcp/10.70.0.0/unused_ip with 200 (5.2 ms)
2021-12-02T13:30:12 c382e888 [I] Started GET /tftp/serverName
2021-12-02T13:30:12 c382e888 [I] Finished GET /tftp/serverName with 200 (0.62 ms)
2021-12-02T13:30:12 c382e888 [I] Started GET /dhcp/10.70.0.0/mac/00:1e:0b:c6:f1:a0
2021-12-02T13:30:12 c382e888 [E] No DHCP record for MAC 10.70.0.0/00:1e:0b:c6:f1:a0 found
2021-12-02T13:30:12 c382e888 [W] Error details for No DHCP record for MAC 10.70.0.0/00:1e:0b:c6:f1:a0 found: <Exception>: No DHCP record for MAC 10.70.0.0/00:1e:0b:c6:f1:a0 found
2021-12-02T13:30:12 c382e888 [W] No DHCP record for MAC 10.70.0.0/00:1e:0b:c6:f1:a0 found: <Exception>: No DHCP record for MAC 10.70.0.0/00:1e:0b:c6:f1:a0 found
2021-12-02T13:30:12 c382e888 [I] Finished GET /dhcp/10.70.0.0/mac/00:1e:0b:c6:f1:a0 with 404 (3.58 ms)
2021-12-02T13:30:12 c382e888 [I] Started GET /dhcp/10.70.0.0/ip/10.70.1.9
2021-12-02T13:30:12 c382e888 [E] No DHCP records for IP 10.70.0.0/10.70.1.9 found
2021-12-02T13:30:12 c382e888 [W] Error details for No DHCP records for IP 10.70.0.0/10.70.1.9 found: <Exception>: No DHCP records for IP 10.70.0.0/10.70.1.9 found
2021-12-02T13:30:12 c382e888 [W] No DHCP records for IP 10.70.0.0/10.70.1.9 found: <Exception>: No DHCP records for IP 10.70.0.0/10.70.1.9 found
2021-12-02T13:30:12 c382e888 [I] Finished GET /dhcp/10.70.0.0/ip/10.70.1.9 with 404 (0.88 ms)
2021-12-02T13:30:17 87ddd61f [I] Started GET /dhcp/10.70.0.0/mac/00:1e:0b:c6:f1:a0
2021-12-02T13:30:17 87ddd61f [E] No DHCP record for MAC 10.70.0.0/00:1e:0b:c6:f1:a0 found
2021-12-02T13:30:17 87ddd61f [W] Error details for No DHCP record for MAC 10.70.0.0/00:1e:0b:c6:f1:a0 found: <Exception>: No DHCP record for MAC 10.70.0.0/00:1e:0b:c6:f1:a0 found
2021-12-02T13:30:17 87ddd61f [W] No DHCP record for MAC 10.70.0.0/00:1e:0b:c6:f1:a0 found: <Exception>: No DHCP record for MAC 10.70.0.0/00:1e:0b:c6:f1:a0 found
2021-12-02T13:30:17 87ddd61f [I] Finished GET /dhcp/10.70.0.0/mac/00:1e:0b:c6:f1:a0 with 404 (0.89 ms)
2021-12-02T13:30:17 87ddd61f [I] Started GET /dhcp/10.70.0.0/unused_ip mac=00:1e:0b:c6:f1:a0&from=10.70.1.1&to=10.70.1.10
2021-12-02T13:30:17 87ddd61f [W] No free IPs in range 10.70.1.1..10.70.1.10.
2021-12-02T13:30:17 87ddd61f [I] Finished GET /dhcp/10.70.0.0/unused_ip with 200 (0.93 ms)
2021-12-02T13:30:17 87ddd61f [I] Started GET /tftp/serverName
2021-12-02T13:30:17 87ddd61f [I] Finished GET /tftp/serverName with 200 (0.51 ms)
2021-12-02T13:30:17 87ddd61f [I] Started GET /dhcp/10.70.0.0/mac/00:1e:0b:c6:f1:a0
2021-12-02T13:30:17 87ddd61f [E] No DHCP record for MAC 10.70.0.0/00:1e:0b:c6:f1:a0 found
2021-12-02T13:30:17 87ddd61f [W] Error details for No DHCP record for MAC 10.70.0.0/00:1e:0b:c6:f1:a0 found: <Exception>: No DHCP record for MAC 10.70.0.0/00:1e:0b:c6:f1:a0 found
2021-12-02T13:30:17 87ddd61f [W] No DHCP record for MAC 10.70.0.0/00:1e:0b:c6:f1:a0 found: <Exception>: No DHCP record for MAC 10.70.0.0/00:1e:0b:c6:f1:a0 found
2021-12-02T13:30:17 87ddd61f [I] Finished GET /dhcp/10.70.0.0/mac/00:1e:0b:c6:f1:a0 with 404 (0.76 ms)
2021-12-02T13:30:17 87ddd61f [I] Started GET /dhcp/10.70.0.0/ip/10.70.1.9
2021-12-02T13:30:17 87ddd61f [E] No DHCP records for IP 10.70.0.0/10.70.1.9 found
2021-12-02T13:30:17 87ddd61f [W] Error details for No DHCP records for IP 10.70.0.0/10.70.1.9 found: <Exception>: No DHCP records for IP 10.70.0.0/10.70.1.9 found
2021-12-02T13:30:17 87ddd61f [W] No DHCP records for IP 10.70.0.0/10.70.1.9 found: <Exception>: No DHCP records for IP 10.70.0.0/10.70.1.9 found
2021-12-02T13:30:17 87ddd61f [I] Finished GET /dhcp/10.70.0.0/ip/10.70.1.9 with 404 (0.79 ms)
2021-12-02T13:30:17 87ddd61f [I] Started POST /dhcp/10.70.0.0
2021-12-02T13:30:17 87ddd61f [I] Next-server option not IPv4, trying to resolve 'primero.dot'
2021-12-02T13:30:17 87ddd61f [E] Omshell failed: omshell= > > > dhcpctl_connect: no more
omshell= > not connected.
omshell= > no open object.
omshell= > no open object.
omshell= > no open object.
omshell= > no open object.
omshell= > no open object.
omshell= > not connected.
omshell= >
2021-12-02T13:30:17 87ddd61f [E] Failed to add DHCP reservation for cuarto.dot (10.70.1.9 / 00:1e:0b:c6:f1:a0): No response from DHCP server
2021-12-02T13:30:17 87ddd61f [W] Error details for Failed to add DHCP reservation for cuarto.dot (10.70.1.9 / 00:1e:0b:c6:f1:a0): No response from DHCP server: <Proxy::DHCP::Error>: Failed to add DHCP reservation for cuarto.dot (10.70.1.9 / 00:1e:0b:c6:f1:a0): No response from DHCP server
/usr/share/foreman-proxy/modules/dhcp_common/isc/omapi_provider.rb:103:in `report'
/usr/share/foreman-proxy/modules/dhcp_common/isc/omapi_provider.rb:81:in `om_disconnect'
/usr/share/foreman-proxy/modules/dhcp_common/isc/omapi_provider.rb:54:in `om_add_record'
/usr/share/foreman-proxy/modules/dhcp_common/isc/omapi_provider.rb:30:in `add_record'
/usr/share/foreman-proxy/modules/dhcp/dhcp_api.rb:87:in `block in <class:DhcpApi>'
/usr/lib/ruby/vendor_ruby/sinatra/base.rb:1636:in `call'
/usr/lib/ruby/vendor_ruby/sinatra/base.rb:1636:in `block in compile!'
/usr/lib/ruby/vendor_ruby/sinatra/base.rb:987:in `block (3 levels) in route!'
/usr/lib/ruby/vendor_ruby/sinatra/base.rb:1006:in `route_eval'
/usr/lib/ruby/vendor_ruby/sinatra/base.rb:987:in `block (2 levels) in route!'
/usr/lib/ruby/vendor_ruby/sinatra/base.rb:1035:in `block in process_route'
/usr/lib/ruby/vendor_ruby/sinatra/base.rb:1033:in `catch'
/usr/lib/ruby/vendor_ruby/sinatra/base.rb:1033:in `process_route'
/usr/lib/ruby/vendor_ruby/sinatra/base.rb:985:in `block in route!'
/usr/lib/ruby/vendor_ruby/sinatra/base.rb:984:in `each'
/usr/lib/ruby/vendor_ruby/sinatra/base.rb:984:in `route!'
/usr/lib/ruby/vendor_ruby/sinatra/base.rb:1098:in `block in dispatch!'
/usr/lib/ruby/vendor_ruby/sinatra/base.rb:1072:in `block in invoke'
/usr/lib/ruby/vendor_ruby/sinatra/base.rb:1072:in `catch'
/usr/lib/ruby/vendor_ruby/sinatra/base.rb:1072:in `invoke'
/usr/lib/ruby/vendor_ruby/sinatra/base.rb:1095:in `dispatch!'
/usr/lib/ruby/vendor_ruby/sinatra/base.rb:919:in `block in call!'
/usr/lib/ruby/vendor_ruby/sinatra/base.rb:1072:in `block in invoke'
/usr/lib/ruby/vendor_ruby/sinatra/base.rb:1072:in `catch'
/usr/lib/ruby/vendor_ruby/sinatra/base.rb:1072:in `invoke'
/usr/lib/ruby/vendor_ruby/sinatra/base.rb:919:in `call!'
/usr/lib/ruby/vendor_ruby/sinatra/base.rb:908:in `call'
/usr/lib/ruby/vendor_ruby/rack/method_override.rb:22:in `call'
/usr/share/foreman-proxy/lib/proxy/log.rb:105:in `call'
/usr/share/foreman-proxy/lib/proxy/request_id_middleware.rb:11:in `call'
/usr/lib/ruby/vendor_ruby/rack/protection/xss_header.rb:18:in `call'
/usr/lib/ruby/vendor_ruby/rack/protection/path_traversal.rb:16:in `call'
/usr/lib/ruby/vendor_ruby/rack/protection/json_csrf.rb:26:in `call'
/usr/lib/ruby/vendor_ruby/rack/protection/base.rb:50:in `call'
/usr/lib/ruby/vendor_ruby/rack/protection/base.rb:50:in `call'
/usr/lib/ruby/vendor_ruby/rack/protection/frame_options.rb:31:in `call'
/usr/lib/ruby/vendor_ruby/rack/null_logger.rb:9:in `call'
/usr/lib/ruby/vendor_ruby/rack/head.rb:12:in `call'
/usr/lib/ruby/vendor_ruby/sinatra/show_exceptions.rb:22:in `call'
/usr/lib/ruby/vendor_ruby/sinatra/base.rb:194:in `call'
/usr/lib/ruby/vendor_ruby/sinatra/base.rb:1951:in `call'
/usr/lib/ruby/vendor_ruby/sinatra/base.rb:1503:in `block in call'
/usr/lib/ruby/vendor_ruby/sinatra/base.rb:1730:in `synchronize'
/usr/lib/ruby/vendor_ruby/sinatra/base.rb:1503:in `call'
/usr/lib/ruby/vendor_ruby/rack/urlmap.rb:68:in `block in call'
/usr/lib/ruby/vendor_ruby/rack/urlmap.rb:53:in `each'
/usr/lib/ruby/vendor_ruby/rack/urlmap.rb:53:in `call'
/usr/lib/ruby/vendor_ruby/rack/builder.rb:153:in `call'
/usr/lib/ruby/vendor_ruby/rack/handler/webrick.rb:86:in `service'
/usr/lib/ruby/2.7.0/webrick/httpserver.rb:140:in `service'
/usr/lib/ruby/2.7.0/webrick/httpserver.rb:96:in `run'
/usr/lib/ruby/2.7.0/webrick/server.rb:307:in `block in start_thread'
/usr/lib/ruby/vendor_ruby/logging/diagnostic_context.rb:474:in `block in create_with_logging_context'
2021-12-02T13:30:17 87ddd61f [W] Failed to add DHCP reservation for cuarto.dot (10.70.1.9 / 00:1e:0b:c6:f1:a0): No response from DHCP server: <Proxy::DHCP::Error>: Failed to add DHCP reservation for cuarto.dot (10.70.1.9 / 00:1e:0b:c6:f1:a0): No response from DHCP server
/usr/share/foreman-proxy/modules/dhcp_common/isc/omapi_provider.rb:103:in `report'
/usr/share/foreman-proxy/modules/dhcp_common/isc/omapi_provider.rb:81:in `om_disconnect'
/usr/share/foreman-proxy/modules/dhcp_common/isc/omapi_provider.rb:54:in `om_add_record'
/usr/share/foreman-proxy/modules/dhcp_common/isc/omapi_provider.rb:30:in `add_record'
/usr/share/foreman-proxy/modules/dhcp/dhcp_api.rb:87:in `block in <class:DhcpApi>'
/usr/lib/ruby/vendor_ruby/sinatra/base.rb:1636:in `call'
/usr/lib/ruby/vendor_ruby/sinatra/base.rb:1636:in `block in compile!'
/usr/lib/ruby/vendor_ruby/sinatra/base.rb:987:in `block (3 levels) in route!'
/usr/lib/ruby/vendor_ruby/sinatra/base.rb:1006:in `route_eval'
/usr/lib/ruby/vendor_ruby/sinatra/base.rb:987:in `block (2 levels) in route!'
/usr/lib/ruby/vendor_ruby/sinatra/base.rb:1035:in `block in process_route'
/usr/lib/ruby/vendor_ruby/sinatra/base.rb:1033:in `catch'
/usr/lib/ruby/vendor_ruby/sinatra/base.rb:1033:in `process_route'
/usr/lib/ruby/vendor_ruby/sinatra/base.rb:985:in `block in route!'
/usr/lib/ruby/vendor_ruby/sinatra/base.rb:984:in `each'
/usr/lib/ruby/vendor_ruby/sinatra/base.rb:984:in `route!'
/usr/lib/ruby/vendor_ruby/sinatra/base.rb:1098:in `block in dispatch!'
/usr/lib/ruby/vendor_ruby/sinatra/base.rb:1072:in `block in invoke'
/usr/lib/ruby/vendor_ruby/sinatra/base.rb:1072:in `catch'
/usr/lib/ruby/vendor_ruby/sinatra/base.rb:1072:in `invoke'
/usr/lib/ruby/vendor_ruby/sinatra/base.rb:1095:in `dispatch!'
/usr/lib/ruby/vendor_ruby/sinatra/base.rb:919:in `block in call!'
/usr/lib/ruby/vendor_ruby/sinatra/base.rb:1072:in `block in invoke'
/usr/lib/ruby/vendor_ruby/sinatra/base.rb:1072:in `catch'
/usr/lib/ruby/vendor_ruby/sinatra/base.rb:1072:in `invoke'
/usr/lib/ruby/vendor_ruby/sinatra/base.rb:919:in `call!'
/usr/lib/ruby/vendor_ruby/sinatra/base.rb:908:in `call'
/usr/lib/ruby/vendor_ruby/rack/method_override.rb:22:in `call'
/usr/share/foreman-proxy/lib/proxy/log.rb:105:in `call'
/usr/share/foreman-proxy/lib/proxy/request_id_middleware.rb:11:in `call'
/usr/lib/ruby/vendor_ruby/rack/protection/xss_header.rb:18:in `call'
/usr/lib/ruby/vendor_ruby/rack/protection/path_traversal.rb:16:in `call'
/usr/lib/ruby/vendor_ruby/rack/protection/json_csrf.rb:26:in `call'
/usr/lib/ruby/vendor_ruby/rack/protection/base.rb:50:in `call'
/usr/lib/ruby/vendor_ruby/rack/protection/base.rb:50:in `call'
/usr/lib/ruby/vendor_ruby/rack/protection/frame_options.rb:31:in `call'
/usr/lib/ruby/vendor_ruby/rack/null_logger.rb:9:in `call'
/usr/lib/ruby/vendor_ruby/rack/head.rb:12:in `call'
/usr/lib/ruby/vendor_ruby/sinatra/show_exceptions.rb:22:in `call'
/usr/lib/ruby/vendor_ruby/sinatra/base.rb:194:in `call'
/usr/lib/ruby/vendor_ruby/sinatra/base.rb:1951:in `call'
/usr/lib/ruby/vendor_ruby/sinatra/base.rb:1503:in `block in call'
/usr/lib/ruby/vendor_ruby/sinatra/base.rb:1730:in `synchronize'
/usr/lib/ruby/vendor_ruby/sinatra/base.rb:1503:in `call'
/usr/lib/ruby/vendor_ruby/rack/urlmap.rb:68:in `block in call'
/usr/lib/ruby/vendor_ruby/rack/urlmap.rb:53:in `each'
/usr/lib/ruby/vendor_ruby/rack/urlmap.rb:53:in `call'
/usr/lib/ruby/vendor_ruby/rack/builder.rb:153:in `call'
/usr/lib/ruby/vendor_ruby/rack/handler/webrick.rb:86:in `service'
/usr/lib/ruby/2.7.0/webrick/httpserver.rb:140:in `service'
/usr/lib/ruby/2.7.0/webrick/httpserver.rb:96:in `run'
/usr/lib/ruby/2.7.0/webrick/server.rb:307:in `block in start_thread'
/usr/lib/ruby/vendor_ruby/logging/diagnostic_context.rb:474:in `block in create_with_logging_context'
2021-12-02T13:30:17 87ddd61f [I] Finished POST /dhcp/10.70.0.0 with 400 (27.19 ms)
/etc/dhcp/dhcpd.conf
omapi-port 7911;
default-lease-time 43200;
max-lease-time 86400;
not authoritative;
ddns-update-style none;
option domain-name "dot";
option domain-name-servers 10.70.1.1;
option ntp-servers none;
allow booting;
allow bootp;
option fqdn.no-client-update on; # set the "O" and "S" flag bits
option fqdn.rcode2 255;
option pxegrub code 150 = text ;
# required for UEFI HTTP boot
if substring(option vendor-class-identifier, 0, 10) = "HTTPClient" {
option vendor-class-identifier "HTTPClient";
}
# promote vendor in dhcpd.leases
set vendor-string = option vendor-class-identifier;
# next server and filename options
next-server 10.70.1.1;
option architecture code 93 = unsigned integer 16 ;
if option architecture = 00:06 {
filename "grub2/bootia32.efi";
} elsif option architecture = 00:07 {
filename "grub2/bootx64.efi";
} elsif option architecture = 00:09 {
filename "grub2/bootx64.efi";
} else {
filename "pxelinux.0";
}
log-facility local7;
include "/etc/dhcp/dhcpd.hosts";
# dot
subnet 10.70.0.0 netmask 255.255.0.0 {
pool
{
range 10.70.0.0 10.70.4.100;
}
option subnet-mask 255.255.0.0;
option routers 10.70.1.1;
}