Pull request: 4337 DHCP: del option

Merge in DNS/adguard-home-wiki from 4337-del-option to master

Squashed commit of the following:

commit 58c39532439a9db8fa5de5fbba8fb390dcd04ff6
Author: Eugene Burkov <E.Burkov@AdGuard.COM>
Date:   Fri Aug 26 13:12:29 2022 +0300

    DHCP: imp wording

commit 2bafa9263e60d0b3a3e924dcc6ebff9caa7a73bb
Author: Eugene Burkov <E.Burkov@AdGuard.COM>
Date:   Fri Aug 26 12:39:23 2022 +0300

    DHCP: desc del option
Eugene Burkov 2022-08-26 14:30:44 +03:00
parent bb6eca5d5b
commit c2a4393e70
1 changed files with 25 additions and 4 deletions

29
DHCP.md

@ -43,10 +43,16 @@ The `options` field accepts four types of values: `hex`, `ip`, `ips`, and
255] range. See also [RFC 2132, sec. 3][rfc-2132]. 255] range. See also [RFC 2132, sec. 3][rfc-2132].
In accordance with [RFC 2131, sec. 4.3.1][rfc-2131], these options override the In accordance with [RFC 2131, sec. 4.3.1][rfc-2131], these options override the
default options set by Adguard Home. Which means that if you want to set DNS default options' values set by Adguard Home and requested by a client. Which
server addresses using option `6`, you should also add Adguard Home's own means that if you want to set DNS server addresses using option `6`, you should
addresses there. Otherwise, AdGuard Home's filtering won't work for the DHCP also add Adguard Home's own addresses there. Otherwise, AdGuard Home's
clients who receive these DNS server addresses. filtering won't work for the DHCP clients who receive these DNS server
addresses.
Option `del` has been added in **v0.107.12**. It is used to unconditionally
remove options from the server's responses, which may lead to weird behaviors.
Use with caution. On example where this option is useful is when a client
doesn't accept a lease because of an option, see [issue 4337].
* The `hex` format is: * The `hex` format is:
@ -112,6 +118,21 @@ clients who receive these DNS server addresses.
- '252 text http://example.com' - '252 text http://example.com'
``` ```
* The `del` format (since **v0.107.12**) allows you to remove an option. For
example:
```yaml
# …
'dhcp':
# …
'dhcpv4':
# …
'options':
- '61 del'
```
[issue 4337]: https://github.com/adguardTeam/adGuardHome/issues/4337
### <a id="config-6" href="#config-6">DHCPv6 Options</a> ### <a id="config-6" href="#config-6">DHCPv6 Options</a>