Wat is DHCP Snooping?
DHCP Snooping is een beveiligingsfunctie op managed switches die DHCP-verkeer inspecteert, alleen antwoorden van vertrouwde DHCP-servers doorlaat en per poort vastlegt welk IP-adres aan welk MAC-adres is uitgedeeld. Zo kan een laptop, rogue device of verkeerd aangesloten router geen valse IP-configuratie meer uitdelen, wat anders kan leiden tot Spoofing, afluisteren of netwerkuitval. De bindingstabel die DHCP Snooping opbouwt, is bovendien de basis voor IP Source Guard en Dynamic ARP Inspection.
In OT-netwerken voorkomt DHCP Snooping dat een laptop, rogue Switch of gehackt veldapparaat het verkeer van PLC’s of SCADA-servers omleidt via een valse IP-configuratie.
🧠 Welk probleem lost DHCP Snooping op?
DHCP (vastgelegd in RFC 2131 uit 1997) kent geen authenticatie: een client accepteert het eerste aanbod dat binnenkomt. Wie een eigen DHCP-server op het netwerk zet, kan clients daardoor een eigen gateway en DNS-server meegeven en zo een Man-In-The-Middle-positie innemen. DHCP Snooping richt zich op vier risico’s:
- Rogue DHCP-servers - een geïmproviseerd access point, een thuisrouter of een laptop met internetdeling die adressen uitdeelt
- DHCP-starvation - een aanvaller vraagt met steeds andere MAC-adressen alle adressen uit de pool op, zodat legitieme apparaten geen adres meer krijgen
- Vervalste vrijgave - een aanvaller stuurt namens een ander apparaat een DHCPRELEASE en laat zo diens lease beëindigen
- Ontbrekend overzicht - zonder bindingstabel weet u niet welk apparaat op welke poort welk adres gebruikt
Daarnaast verhoogt de functie de netwerkstabiliteit in OT: dubbele adressen en verkeerd gerouteerd verkeer door een foutief aangesloten apparaat worden voorkomen. Dat maakt DHCP Snooping een logische bouwsteen naast MAC Binding, Port Security en een Zero Trust Architecture.
⚙️ Hoe werkt DHCP Snooping?
De switch verdeelt zijn poorten in trusted en untrusted. Standaard is elke poort untrusted; alleen de poort richting de echte DHCP-server of de uplink naar de distributielaag wordt trusted gemaakt. Vervolgens beoordeelt de switch elk DHCP-bericht:
| Situatie | Gedrag van de switch |
|---|---|
| Serverbericht (DHCPOFFER, DHCPACK, DHCPNAK, DHCPLEASEQUERY) op untrusted poort | Wordt verworpen |
| Clientbericht (DHCPDISCOVER, DHCPREQUEST) op untrusted poort | Wordt doorgelaten, mits bron-MAC en client-hardwareadres overeenkomen |
| DHCPRELEASE of DHCPDECLINE voor een binding op een andere poort | Wordt verworpen |
| Pakket met relay-adres (giaddr) of option 82 op untrusted poort | Wordt standaard verworpen |
| DHCPACK van trusted poort | Switch schrijft MAC, IP, lease-tijd, VLAN en poort in de bindingstabel |
Die bindingstabel is het belangrijkste product van DHCP Snooping. IP Source Guard gebruikt haar om pakketten met een vervalst bron-IP te blokkeren, en Dynamic ARP Inspection controleert ARP-antwoorden ertegen om ARP Spoofing te stoppen.
🔧 Welke instellingen en standaardwaarden zijn gangbaar?
De exacte opties verschillen per fabrikant. Bij Cisco IOS, ook op de industriële IE-switches, gelden onder meer deze uitgangspunten:
| Instelling | Typische waarde of standaard |
|---|---|
| DHCP Snooping globaal en per VLAN | Standaard uit; pas actief als het per VLAN is ingeschakeld |
| Controle bron-MAC versus client-hardwareadres | Standaard aan |
| Option 82 (Relay Agent Information, RFC 3046) invoegen | Standaard aan |
| Rate limit op untrusted poorten | Standaard geen; advies maximaal 100 pakketten per seconde |
| Overschrijding rate limit | Poort gaat in err-disabled toestand |
| Wegschrijven bindingsdatabase (write-delay) | 300 seconden |
| Maximale aantal bindingen (Catalyst 3750) | 8.192 |
Twee details verdienen aandacht. Ten eerste de bindingsdatabase: na een herstart is de tabel leeg, tenzij de switch haar naar flash of een server wegschrijft. Om lease-tijden correct op te slaan is NTP nodig. Zonder NTP schrijft een Cisco-switch de database wel weg, maar kloppen de verlooptijden na het herladen niet; is NTP wel geconfigureerd maar de tijdserver onbereikbaar, dan schrijft de switch nieuwe bindingen helemaal niet meer weg. Ten tweede option 82: als de switch deze optie invoegt en de DHCP-server in hetzelfde VLAN staat, weigeren sommige servers het verzoek omdat het relay-adres 0.0.0.0 is. Zet het invoegen dan uit of configureer de server om dit te accepteren.
Industriële switches van onder meer Cisco (IE-serie) en Hirschmann (HiOS) bieden DHCP Snooping samen met IP Source Guard en Dynamic ARP Inspection. Ondersteuning en opties verschillen per model en firmwareversie, dus controleer de datasheet. Unmanaged switches kunnen het niet; een managed switch is dus een voorwaarde.
🏭 Hoe zet u DHCP Snooping in een OT-netwerk in?
OT-netwerken verschillen van kantoornetwerken: veel PLC’s, I/O-modules en drives hebben een statisch IP-adres, en PROFINET-apparaten krijgen hun naam en adres meestal via DCP van de controller, niet via DHCP. EtherNet/IP-apparaten staan daarentegen vaak af fabriek op BOOTP of DHCP. Een praktische aanpak:
- Inventariseer per VLAN welke apparaten DHCP of BOOTP gebruiken en welke een vast adres hebben, bijvoorbeeld vanuit uw Asset Inventory.
- Bepaal trusted poorten: alleen uplinks en de poort naar de eigen DHCP-server. Laat alle eindapparaatpoorten untrusted.
- Schakel in per VLAN, begin met een onderhouds- of engineering-VLAN waar laptops wisselend worden aangesloten.
- Stel een rate limit in op untrusted poorten, ruim genoeg voor opstartpieken (bijvoorbeeld na een stroomuitval van een hele kast).
- Voeg statische bindingen toe voor apparaten met vaste adressen voordat u IP Source Guard of Dynamic ARP Inspection activeert; anders blokkeert u legitiem procesverkeer.
- Bewaar de bindingsdatabase met een gesynchroniseerde klok en stuur meldingen over verworpen pakketten via Syslog naar uw SIEM.
- Test in een onderhoudsvenster en documenteer de configuratie als onderdeel van uw hardening-baseline.
| OT-scenario | Wat DHCP Snooping doet |
|---|---|
| Onderhoudslaptop met actieve internetdeling | Zijn DHCP-aanbiedingen worden op de untrusted poort verworpen |
| Productienetwerk met vaste IP-range | Een storing of foutief apparaat kan geen adressen meer uitdelen |
| Rogue device probeert verkeer om te leiden | Valse gateway komt niet bij de clients aan |
| Koppeling met Asset Inventory | Bindingstabel toont welk apparaat welk IP kreeg, op welke poort |
🛡️ Met welke maatregelen combineert u DHCP Snooping?
DHCP Snooping is één laag in een defense-in-depth-aanpak en werkt het best samen met andere laag-2- en toegangsmaatregelen:
| Maatregel | Wat het toevoegt |
|---|---|
| IP Source Guard | Blokkeert pakketten met een vervalst bron-IP-adres |
| Dynamic ARP Inspection | Controleert of ARP-verkeer overeenkomt met de bindingstabel |
| Port Security | Beperkt het aantal MAC-adressen per poort en dempt starvation |
| 802.1X | Authenticeert apparaten vóór ze toegang krijgen |
| VLAN-isolatie | Scheidt onbetrouwbare poorten en apparaten van procesverkeer |
| Netwerksegmentatie | Beperkt de schade tot één zone, in lijn met IEC 62443 |
De klassieke DHCP Snooping-functie beschermt alleen IPv4. Voor IPv6 bestaan vergelijkbare functies: DHCPv6-Shield (RFC 7610, bij Cisco DHCPv6 Guard genoemd) en RA-Guard (RFC 6105).
❓ Veelgestelde vragen
Werkt DHCP Snooping ook als al mijn OT-apparaten een vast IP-adres hebben?
DHCP Snooping blijft nuttig, omdat het rogue DHCP-servers blokkeert die laptops en tijdelijke apparaten een valse configuratie geven. Apparaten met een vast adres komen echter niet automatisch in de bindingstabel. Voeg daarom statische bindingen toe voordat u IP Source Guard of Dynamic ARP Inspection inschakelt.
Wat is het verschil tussen een trusted en een untrusted poort bij DHCP Snooping?
Op een trusted poort laat DHCP Snooping alle DHCP-berichten door, ook antwoorden van servers. Op een untrusted poort verwerpt de switch serverberichten zoals DHCPOFFER en DHCPACK. Alleen uplinks en de poort naar de echte DHCP-server horen trusted te zijn.
Waarom gaat een poort in err-disabled na het inschakelen van DHCP Snooping?
Een poort gaat bij DHCP Snooping in err-disabled wanneer er een rate limit is ingesteld en het aantal DHCP-pakketten de ingestelde rate limit overschrijdt. Dat gebeurt soms legitiem, bijvoorbeeld bij een access point of veel apparaten die tegelijk opstarten. Verhoog dan de limiet of stel automatisch herstel in.
Waarom heeft DHCP Snooping NTP nodig?
DHCP Snooping slaat bindingen met hun lease-tijd op in een database op flash of een server. Zonder correcte tijd via NTP kloppen de verlooptijden na een herstart niet. Is een NTP-server geconfigureerd maar onbereikbaar, dan schrijven Cisco-switches nieuwe bindingen helemaal niet meer weg, waardoor die na een herstart ontbreken.
Beschermt DHCP Snooping ook tegen PROFINET-aanvallen?
DHCP Snooping inspecteert alleen DHCP- en BOOTP-verkeer en ziet PROFINET DCP, waarmee PROFINET-apparaten hun naam en IP-adres krijgen, niet. Voor PROFINET zijn segmentatie, poortbeveiliging en monitoring nodig. DHCP Snooping is daar hooguit een aanvulling voor laptops en IT-apparatuur in dezelfde zone.
Is DHCP Snooping verplicht onder NIS2 of de Cyberbeveiligingswet?
Nee, NIS2 en de Cyberbeveiligingswet noemen DHCP Snooping niet als specifieke maatregel. Ze eisen wel passende technische maatregelen voor netwerkbeveiliging. DHCP Snooping is een goedkope manier om daaraan bij te dragen, omdat de functie al in de meeste managed switches zit.
📌 Samengevat
DHCP Snooping laat alleen vertrouwde DHCP-servers adressen uitdelen en legt per poort vast welk apparaat welk IP-adres heeft; daarmee vormt het de basis voor IP Source Guard en Dynamic ARP Inspection in uw OT-netwerk.
Schakel het per VLAN in, maak alleen uplinks trusted, stel een rate limit in, zorg voor NTP en voeg statische bindingen toe voor apparaten met vaste adressen. Zo krijgt u meer spoofingbescherming en meer zicht op uw netwerk, zonder legitiem procesverkeer te verstoren.
