NAME

WebService::OPNsense::Unbound::Settings - Unbound settings controller

VERSION

version 0.001

SYNOPSIS

my $unbound_settings = $opn->unbound_settings;

my $settings = $unbound_settings->get;

DESCRIPTION

Manages Unbound DNS settings including host overrides, aliases, forwards, ACLs, and DNSBL.

NAME

WebService::OPNsense::Unbound::Settings - Unbound settings controller

METHODS

get

my $settings = $unbound_settings->get;

Returns the current Unbound settings.

set_settings

my $result = $unbound_settings->set_settings($data);

Updates Unbound settings.

search_host_override

my $overrides = $unbound_settings->search_host_override(%params);

Searches for host overrides.

get_host_override

my $override = $unbound_settings->get_host_override($uuid);

Returns a single host override by UUID.

add_host_override

my $result = $unbound_settings->add_host_override($data);

Creates a new host override.

set_host_override

my $result = $unbound_settings->set_host_override($uuid, $data);

Updates an existing host override.

del_host_override

my $result = $unbound_settings->del_host_override($uuid);

Deletes a host override by UUID.

toggle_host_override

my $result = $unbound_settings->toggle_host_override($uuid, $enabled);

Enables or disables a host override.

search_host_alias

my $aliases = $unbound_settings->search_host_alias(%params);

Searches for host aliases.

get_host_alias

my $alias = $unbound_settings->get_host_alias($uuid);

Returns a single host alias by UUID.

add_host_alias

my $result = $unbound_settings->add_host_alias($data);

Creates a new host alias.

set_host_alias

my $result = $unbound_settings->set_host_alias($uuid, $data);

Updates an existing host alias.

del_host_alias

my $result = $unbound_settings->del_host_alias($uuid);

Deletes a host alias by UUID.

toggle_host_alias

my $result = $unbound_settings->toggle_host_alias($uuid, $enabled);

Enables or disables a host alias.

search_forward

my $forwards = $unbound_settings->search_forward(%params);

Searches for forwarding entries.

get_forward

my $forward = $unbound_settings->get_forward($uuid);

Returns a single forward entry by UUID.

add_forward

my $result = $unbound_settings->add_forward($data);

Creates a new forward entry.

set_forward

my $result = $unbound_settings->set_forward($uuid, $data);

Updates an existing forward entry.

del_forward

my $result = $unbound_settings->del_forward($uuid);

Deletes a forward entry by UUID.

toggle_forward

my $result = $unbound_settings->toggle_forward($uuid, $enabled);

Enables or disables a forward entry.

search_acl

my $acls = $unbound_settings->search_acl(%params);

Searches for ACL entries.

get_acl

my $acl = $unbound_settings->get_acl($uuid);

Returns a single ACL entry by UUID.

add_acl

my $result = $unbound_settings->add_acl($data);

Creates a new ACL entry.

set_acl

my $result = $unbound_settings->set_acl($uuid, $data);

Updates an existing ACL entry.

del_acl

my $result = $unbound_settings->del_acl($uuid);

Deletes an ACL entry by UUID.

toggle_acl

my $result = $unbound_settings->toggle_acl($uuid, $enabled);

Enables or disables an ACL entry.

search_dnsbl

my $dnsbl_entries = $unbound_settings->search_dnsbl(%params);

Searches for DNSBL entries.

get_dnsbl

my $dnsbl = $unbound_settings->get_dnsbl($uuid);

Returns a single DNSBL entry by UUID.

add_dnsbl

my $result = $unbound_settings->add_dnsbl($data);

Creates a new DNSBL entry.

set_dnsbl

my $result = $unbound_settings->set_dnsbl($uuid, $data);

Updates an existing DNSBL entry.

del_dnsbl

my $result = $unbound_settings->del_dnsbl($uuid);

Deletes a DNSBL entry by UUID.

toggle_dnsbl

my $result = $unbound_settings->toggle_dnsbl($uuid, $enabled);

Enables or disables a DNSBL entry.

update_blocklist

my $result = $unbound_settings->update_blocklist;

Updates the DNSBL blocklist.

get_nameservers

my $nameservers = $unbound_settings->get_nameservers;

Returns the configured nameservers.

AUTHOR

Dean Hamstead <dean@fragfest.com.au>

COPYRIGHT AND LICENSE

This software is Copyright (c) 2026 by Dean Hamstead.

This is free software, licensed under:

The MIT (X11) License