Το DHCP (Πρωτόκολλο Δυναμικής Ρύθμισης Κόμβων), είναι ένα μέσο με το οποίο ένας υπολογιστής κατα την εκκίνηση του μπορεί να πάρει μια διεύθυνση IP. Όταν ο πελάτης υπολογιστής ξεκινάει, στέλνει μια αίτηση στο Τοπικό Δίκτυο (LAN) για να βρει αν υπάρχει κάποιος DHCP server να του αποδώσει μια διεύθυνση IP. Ο DHCP έχει μια δεξαμενή απο διαθέσιμες IP διευθύνσεις και θα απαντήσει στην αίτηση με μια IP διεύθυνση απο τη δεξαμενή, μαζί με έναν χρόνο απόδοσης. Μόλις ο χρόνος αυτός λήξει, ο πελάτης υπολογιστής πρέπει να επικοινωνήσει ξανά με τον server και να επαναλάβει την διαπραγμάτευση.
Ο πελάτης αφού δεχτεί την διεύθυνση IP απο τον server ρυθμίζει τη συγκεκριμένη διεπαφή (interface) με την διεύθυνση IP . Οι πελάτες DHCP χρησιμοποιούν για διαπραγμάτευση με τον server την τελευταία IP που τους είχε ανατεθεί την προηγούμενη φορά. Αν αυτό δεν είναι εφικτό, ο server θα τους αποδώσει καινούργια διεύθυνση. Έτσι η επικοινωνία έχει ως εξήςs :
πελάτης:
Υπάρχει
κάποιος DHCP server
διαθέσιμος
στο LAN?
Server: Ναι,
εγώ.
πελάτης: Χρειάζομαι
μια διεύθυνση IP.
Server:
Μπορείς να
πάρεις την 192.168.10.10
για 19200
δευτερόλεπτα.
πελάτης:
Ευχαριστώ.
πελάτης:
Υπάρχει
κάποιος DHCP server
διαθέσιμος
στο LAN?
Server:Ναι, εγώ.
πελάτης:Χρειάζομαι
μια
διεύθυνση
IP .Την
τελευταία
φορά που
μιλήσαμε, είχα
την 192.168.10.10.
Μπορώ να τη
χρησιμοποιήσω ξανά?
Server:Ναι,
μπορείς ( ή "Όχι,
δεν μπορείς,
πάρε την
192.168.10.12" ).
πελάτης:
Ευχαριστώ.
Ο πελάτης DHCP στο Linux είναι το /sbin/dhcpcd. Στο /etc/rc.d/rc.inet1 φαίνεται οτι το /sbin/dhcpcdκαλείται στη μέση του script. Το dhcpcd πέρα απο την παραπάνω διαπραγμάτευση, κρατάει επίσης το χρόνο που παραμένει για να λήξει η τρέχουσα IP διεύθυνση και αυτόματα θα επικοινωνήσει τον DHCP server με αίτηση να ανανεώσει το χρόνο όταν αυτό χρειαστεί. Επίσης μπορεί να χειρειστεί σχετικές πληροφορίες, όπως τι ntp server να χρησιμοποιήσει, ποια route να χρησιμοποιείσει για τη δρομολόγηση κτλ.
Η ρύθμιση του DHCP στο Slackware είναι απλή, εκτελούμε την εντολή netconfig και διαλέγουμε DHCP. Η διεπαφή eth0 είναι η default, οπότε αν θέλουμε να ρυθμίσουμε κάποια άλλη διεπαφή, πρέπει να αλλάξουμε τη σχετική μεταβλητή για τη συγκεκριμένη διεπαφή σε "YES" στο αρχείο /etc/rc.d/rc.inet1.conf.