dhcpd (Suomi) - ArchWiki

Jump to content
From ArchWiki

Aiheeseen liittyen

- dhcpcd

dhcpd on Internet Systems Consortiumin kehittämä DHCP palvelin. Se on käytännöllinen esimerkiksi laitteelle joka toimii reitittimenä LAN verkossa.

Huomautus: dhcpd (DHCP (server) daemon) ei ole sama kuin dhcpcd (DHCP client daemon).

## Asennus

Asenna dhcp paketti, joka löytyy virallisista pakettilähteistä.

## Käyttö

dhcpd sisältää kaksi yksikkötiedostoa `dhcpd4.service` ja `dhcpd6.service`, joita voidaan käyttää hallitsemaan taustaprosessia. Ne käynnistävät taustaprosessin kaikki verkkokäyttöliittymät IPv4 ja IPv6 vastaavasti. Katso #Vain yhden käyttöliittymän kuuntelu vaihtoehtoiselle ratkaisulle.

## Konfiguraatio

Ohje staattisen IPv4 osoitteen asettamiseen käyttöliittymään, jota halutaan käyttää (tässä esimerkissä `eth0`). Ensimmäiset 3 tavua tästä osoitteesta eivät saa vastata muiden käyttöliittymien osoitteiden ensimmäisiä tavuja.

    # ip link set up dev eth0
    # ip addr add 139.96.30.100/24 dev eth0 # arbitrary address

Vinkki: Yleisesti jotain seuraavista käytetään yksityisissä verkoissa, jotka erityisesti tätä varten on varattuna ja eivät siksi aiheuta ristiriitoja minkään hostin kanssa verkossa:

- `192.168/16` (subnet `192.168.0.0`, netmask `255.255.0.0`)
- `172.16/12` (subnet `172.16.0.0`, netmask `255.240.0.0`)
- `10/8` (suurille verkoille; subnet `10.0.0.0`, netmask `255.0.0.0`)

Katso myös RFC 1918.

Asettaaksesi staattisen ip osoitteen bootissa, katso Network configuration (Suomi)#Staattinen IP osoite.

Oletus `dhcpd.conf` sisältää monia kommentoimattomia esimerkkejä, joten kopioi se:

    # cp /etc/dhcpd.conf /etc/dhcpd.conf.example

Minimi konfiguraatio tiedosto voi näyttää tältä:

    /etc/dhcpd.conf

    option domain-name-servers 8.8.8.8, 8.8.4.4;
    option subnet-mask 255.255.255.0;
    option routers 139.96.30.100;
    subnet 139.96.30.0 netmask 255.255.255.0 {
      range 139.96.30.150 139.96.30.250;
    }

Jos kiinteälle IP osoitteelle on tarve yhdessä erityisessä laitteessa, voit määrittää isäntä osat:

    /etc/dhcpd.conf

    option domain-name-servers 8.8.8.8, 8.8.4.4;
    option subnet-mask 255.255.255.0;
    option routers 139.96.30.100;
    subnet 139.96.30.0 netmask 255.255.255.0 {
      range 139.96.30.150 139.96.30.250;
    }
    host macbookpro{
      hardware ethernet 70:56:81:22:33:44;
      fixed-address 139.96.30.199;
    }

`domain-name-servers` vaihtoehto sisältää DNS palvelimien osotteita joita syötetään asiakasohjelmille (client). Tässä esimerkissä käytetään Googlen julkisia DNS palvelimia. Jos tiedät paikallisia DNS palvelimia (kuten esimerkiksi palveluntarjoajan omia), voit käyttää myös niitä. Jos olet konfiguroinut oman DNS paikallisessa koneessa, käytä sen osoitetta subnetissä (kuten `139.96.30.100` aikaisemmassa esimerkissä).

`subnet-mask` ja `routers` määrittää subnet peitteen ja listan käytettävistä reitittimistä subnetissä. Valtaosassa tapauksia pienissä verkoissa voidaan käyttää `255.255.255.0` peitteenä ja määrittää IP osoite koneesta missä ollaan konfiguroimassa DHCP palvelinta reitittimenä.

`subnet` osat määrittää vaihtoehdot muille subneteille, jotka on kartoitettu verkonkäyttöliittymiin, missädhcpd on käynnissä. Meidän esimerkissä tämä subnet `139.96.30.0/24` on tälle käyttöliittymälle `eth0`, mille määriteltiin joukko valittavia IP osoitteita. Osoitteet tästä joukosta asetetaan liittyville asiakasohjelmille.

### Vain yhden käyttöliittymän kuuntelu

Jos tietokone on jo osana yhtä tai useampaa verkkoa, se voi ilmentyä ongelmana jos koneesi rupeaa antamaan IP osoitteita muille laitteille muista verkoista. Se voidaan tehdä joko konfiguroimalla dhcpd tai käynnistämällä se taustaprosessina systemctl:än avulla.

#### dhcpd:n konfigurointi

Käyttöliittymän torjumiseen täytyy luoda tyhjä esittely subnetille, joka konfiguroidaan siinä käyttöliittymässä.

Tämä tehdään muokkaamalla konfiguraatio tiedosto (esimerkiksi):

    /etc/dhcpd.conf

    # No DHCP service in DMZ network (192.168.2.0/24)
    subnet 192.168.2.0 netmask 255.255.255.0 {
    }

#### Palvelu tiedosto

Ei ole olemassa palvelu tiedostoja oletukselta, jotka käyttävät dhcpd:tä vain yhdessä käyttöliittymässä, jolloin sellainen pitää luoda. Aloita kopioimalla jo olemassa oleva palvelu:

    # cp /usr/lib/systemd/system/dhcpd4.service /etc/systemd/system/dhcpd4@.service

Sen jälkeen muokkaa ExecStart riviä sisältämään käyttöliittymä:

    /etc/systemd/system/dhcpd4@.service

    ...
    [Service]
    ...
    ExecStart=/usr/bin/dhcpd -4 -q -cf /etc/dhcpd.conf -pf /run/dhcpd4/dhcpd.pid %I
    ...

Tämä on mallinne yksikkö, joka sitoo sen erityiseen käyttöliittymään, esimerkiksi `dhcpd4@eth0.service` missä eth0 on käyttöliittymä, jonka näkee komennolla `ip link`.

### Käyttö PXE:lle

PXE konfiguraatio tehdään kahdella seuraavalla asetuksella:

    /etc/dhcpd.conf

    next-server 192.168.0.2;
    tiedostonimi "/pxelinux.0";

Tämä osa voi olla kokonaisuudessa `subnet` tai vain `host` määritelmässä. `next-server` on TFTP palvelimen IP, ja `tiedostonimi` on tiedoston nimi kuvasta josta bootataan. Enemmän tietoa löytyy PXE artikkelista.

## Katso myös

- ISC DHCP Dokumentaatio

Category:

- DHCP (Suomi)