Spring til hovedindhold

DHCP

AdGuard Home kan anvendes som en DHCP-server. Denne side beskriver, hvorledes dette gøres.

Forudsætninger​

  1. Sørg for, at der anvendes et OS, under hvilket AdGuard Home understøtter DHCP. Vi understøtter p.t. ikke DHCP på Windows.

  2. Sørg for, at maskinen er opsat med en statisk IP-adresse.

Opsætning​

Se oversigten over DHCP-opsætningsindstillingerne. Der er flere DHCP-parametre, som ikke kan opsættes via AdGuard Home-administratorpanelet. Disse beskrives nedenfor.

bemærk

AdGuard Home opsætter som standard sig selv som DNS-server for DHCP-klienterne. Standardlejeperioden er 24 timer.

DHCPv4-indstillinger​

Feltet options bruges til eksplicit at angive værdierne for DHCP-indstillinger og ændre svaret. I overensstemmelse med Afsnit 4.3.1 i RFC 2131 tilsidesætter disse indstillinger standardindstillingernes værdier, som er indstillet af Adguard Home og anmodet om af en klient, hvilket betyder, at såfremt en tilpasset DNS-serveradresser ønskes opsat via indstilling 6 (Domænenavnserver), bør Adguard Homes egne adresser også tilføjes dér. Ellers virker AdGuard Homes filtrering ikke for de DHCP-klienter, som modtager disse DNS-serveradresser.

Hver valgmulighed begynder med en kode skrevet som et decimalt heltal. Se RFC 2132 for de faktiske DHCP-indstillingskoder og tilladte længder. Koden efterfølges af indstillingens type og værdi. P.t. understøttes flg. typer:

  • bool: Læsevenlig form af en boolesk værdi og har en længde på 1 oktet.

    Eksempel:

    'options':
    - '19 bool 0' # Deaktivér IP-videresendelse for værter.
    - '20 bool t' # Aktivér ikke-lokal kilderutning for værter.
    - '29 bool F' # Deaktivér registrering af undernetmaske.
    - '30 bool true' # Aktivér levering af maske for understøttende værter.
    - '36 bool False' # Få værterne til at bruge RFC 894 til Ethernet-indkapsling.
  • del: Indstillingen uden værdi bruges til ubetinget at fjerne indstillinger fra serverens svar (hvilket kan føre til mærkelig adfærd, så anvend med forsigtighed).

    Da listen over indstillinger fortolkes sekventielt fra den første til den sidste, kan den efterfølgende indstilling tilsidesætte de foregående. Så dette:

    'options':
    - '19 bool T'
    - '19 del'
    - '20 del'
    - '20 bool F'

    angiver, at indstillingen 19 skal fjernes, og at indstillingen 20 skal sættes til false.

  • dur: En læsevenlig repræsentation af en varighed i intervallet fra 0 til 4.294.967.296 sekunder (ca. 136 dage) bestående af 4 oktetter, ligesom et 32-bit heltal uden fortegn.

    Eksempel:

    'options':
    - '24 dur 10m'
  • hex: En sekvens af hexadecimale tal af vilkårlig længde.

    Eksempel:

    'options':
    - '25 hex 0044012801FC03EE05D407D211001FE645FA'
  • ip: Accepterer en IPv4-adresse og har en længde på 4 oktetter, ligesom selve IPv4-adressen.

    Eksempel:

    'options':
    - '28 ip 192.168.0.255'
  • ips: Accepterer en kommasepareret liste over IPv4-adresser. Den har en vilkårlig længde, men er altid et multiplum af 4 oktetter.

    Eksempel:

    'options':
    - '6 ips 1.2.3.4,1.2.3.5'
  • text: Accepterer en vilkårlig UTF-8-kodet streng og har længden af den kodede tekst.

    Eksempel:

    'options':
    - '252 text http://server.domain/proxyconfig.pac'
  • u8: Et decimaltal i intervallet 0 til 255, der fylder 1 oktet, ligesom et 8-bit heltal uden fortegn.

    Eksempel:

    'options':
    - '23 u8 64'
  • u16: Et decimaltal i intervallet 0 til 65535, der fylder 2 oktetter, ligesom et 16-bit heltal uden fortegn.

    Eksempel:

    'options':
    - '22 u16 576'
bemærk

Kontrollér grundigt, at indstillingens format og værdi er gyldige for den valgte type i overensstemmelse med RFC 2132 eller andre. AdGuard Home udfører ingen indstillingsspecifikke valideringer.

Der er p.t. et sæt indstillinger angivet i Bilag A i RFC 2131 med standardværdierne valgt iht. de dokumenter, som er nævnt der:

IndstillingVærdi
IP-videresendelseDeaktiveret
Ikke-lokal kilderutningDeaktiveret
Maksimal størrelse på datagramgensamling576 byte
Standard-IP-levetid64 sekunder
Indstilling for sti-MTU-aldringstimeout10 minutter
Stil-MTU-plateautabelSe Table 7.1 in RFC 1191
MTU-grænseflade576 byte
Alle undernet er lokaleFalsk
Udfør maskeopdagelseFalsk
MaskeleverandørFalsk
Udfør routeropdagelseSand
Router-anmodningsadresse224.0.0.2
Broadcastadresse255.255.255.255
Anvend trailerindkapslingFalsk
ARP-cachetimeout1 minut
Ethernet-indkapslingsversionRFC 894
Standard TCP-TTL60 sekunder
TCP-keepalive-interval2 timer
Indsæt TCP Keepalive-skrammelSand
Routeregateway_ip fra opsætning
Undernetmaskesubnet_mask fra opsætning

Nogle af disse værdier kan virke forældede eller forårsage problemer med visse DHCP-klientimplementeringer. Ifølge RFC 2131 returneres indstillingerne kun, hvis klienten anmoder om dem i indstilling 55 (Parameter Request List), når de ikke er opsat eksplicit.

DHCPv6-indstillinger​

Er indstillingen dhcp.dhcpv6.ra_slaac_only angivet til true, sender den RA-pakker, som tvinger klienterne til at bruge SLAAC. DHCPv6-serveren startes ikke i dette tilfælde.

Er indstillingen dhcp.dhcpv6.ra_allow_slaac angivet til true, sender den RA-pakker, som tillader klienterne at vælge mellem SLAAC og DHCPv6.

Automatiske værter​

Maskiner på netværket kan nemmere tilgås vha. de værtsnavne, de sender i DHCP-anmodningerne, med et opsætbart topdomæne (TLD). Som standard er TLD'et lan. Findes f.eks. en maskine med navnet “workstation” på netværket, og den sender en DHCP-anmodning med indstilling 12 angivet som workstation, kan den tilgås via HTTP på værten http://workstation.lan.

Der kan også angives et tilpasset TLDA eller domænenavn via feltet dns.local_domain_name i opsætningsfilen.

Gemte lejemål​

DHCP-lejemål gemmes i data/leases.json. Filformatet er ikke stabilt og kan ændres i fremtidige udgivelser.