{"id":169495,"date":"2026-06-22T15:51:09","date_gmt":"2026-06-22T12:51:09","guid":{"rendered":"https:\/\/computingforgeeks.com\/?p=169495"},"modified":"2026-06-22T15:51:09","modified_gmt":"2026-06-22T12:51:09","slug":"cisco-dhcp-snooping-configuration","status":"publish","type":"post","link":"https:\/\/computingforgeeks.com\/cisco-dhcp-snooping-configuration\/","title":{"rendered":"Configure Cisco DHCP Snooping to Block Rogue Servers"},"content":{"rendered":"<p>When a PC boots, it trusts the first DHCP server that answers. It cannot tell the company&#8217;s real server from a cheap router someone plugged into a wall jack, so whichever replies first hands out the IP address, the subnet mask, and the default gateway. Point that gateway at an attacker&#8217;s machine and every packet the victim sends to the internet runs through it. DHCP snooping is the switch feature that ends the race.<\/p>\n\n<p>DHCP snooping makes the switch inspect every DHCP message and decide which ports are allowed to send server replies. The port facing the real server is trusted; every other port is untrusted, and a DHCP offer arriving on an untrusted port is dropped before it reaches a single client. As it watches the legitimate exchanges, the switch also builds a binding table of which MAC leased which IP on which port, the table that dynamic ARP inspection and IP source guard later depend on.<\/p>\n\n<p>This guide enables DHCP snooping, trusts the uplink to the real server, reads the binding table, then plants a rogue DHCP server on an untrusted port and watches the switch drop its offers. Every command and the rogue-server block below were captured on Cisco IOS 15.2 in June 2026.<\/p>\n\n<h2>How DHCP snooping works<\/h2>\n\n<p>Snooping splits the switch ports into two camps. A trusted port may carry any DHCP message, including the server-to-client replies (OFFER, ACK, NAK) that hand out addresses. An untrusted port may carry only the client-to-server messages (DISCOVER, REQUEST) that a normal host sends. The moment a server reply appears on an untrusted port, the switch drops it, which is exactly how a rogue server is silenced.<\/p>\n\n<p>Only the links to legitimate DHCP servers and the uplinks toward them should be trusted. Every access port facing a user is left untrusted, because a user device has no business answering DHCP. While snooping watches the real handshakes complete, it records each lease in the DHCP snooping binding table: the client MAC, the leased IP, the VLAN, the port, and the lease time. That table is the durable record other <a href=\"https:\/\/computingforgeeks.com\/network-security-concepts-explained\/\">network security<\/a> features read.<\/p>\n\n<h2>The lab topology<\/h2>\n\n<p>The lab has a switch, a real DHCP server, a client, and a rogue server. SW1 runs DHCP snooping on its <a href=\"https:\/\/computingforgeeks.com\/cisco-vlans-configuration-guide\/\">VLAN<\/a>. Gi0\/1 to the real server is the only trusted port. The client on Gi0\/2 and the rogue server on Gi0\/3 are both untrusted, which is what lets the switch drop the rogue&#8217;s offers while the client still gets a real lease.<\/p>\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1360\" height=\"720\" src=\"https:\/\/computingforgeeks.com\/wp-content\/uploads\/2026\/06\/dhcp-snooping-topo.png\" alt=\"DHCP snooping topology where SW1 trusts only the real DHCP server port Gi0\/1 and drops rogue DHCP offers from the untrusted Gi0\/3\" class=\"wp-image-169490\" title=\"\" srcset=\"https:\/\/computingforgeeks.com\/wp-content\/uploads\/2026\/06\/dhcp-snooping-topo.png 1360w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2026\/06\/dhcp-snooping-topo-300x159.png 300w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2026\/06\/dhcp-snooping-topo-1024x542.png 1024w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2026\/06\/dhcp-snooping-topo-768x407.png 768w\" sizes=\"auto, (max-width: 1360px) 100vw, 1360px\" \/><\/figure>\n\n\n<p>The same four nodes built in GNS3, where the configuration below was applied and tested on real Cisco IOS:<\/p>\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1100\" height=\"600\" src=\"https:\/\/computingforgeeks.com\/wp-content\/uploads\/2026\/06\/dhcp-snooping-gns3.png\" alt=\"GNS3 canvas with a client, SW1, a legitimate DHCP server, and a rogue DHCP server for the DHCP snooping lab\" class=\"wp-image-169491\" title=\"\" srcset=\"https:\/\/computingforgeeks.com\/wp-content\/uploads\/2026\/06\/dhcp-snooping-gns3.png 1100w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2026\/06\/dhcp-snooping-gns3-300x164.png 300w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2026\/06\/dhcp-snooping-gns3-1024x559.png 1024w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2026\/06\/dhcp-snooping-gns3-768x419.png 768w\" sizes=\"auto, (max-width: 1100px) 100vw, 1100px\" \/><\/figure>\n\n\n<p>With the topology in place, turn snooping on.<\/p>\n\n<h2>Configure DHCP snooping<\/h2>\n\n<p>Snooping is enabled globally and then armed per VLAN. Nothing is inspected until you name the VLANs to watch:<\/p>\n\n\n<pre class=\"wp-block-code code\"><code>ip dhcp snooping\nip dhcp snooping vlan 1<\/code><\/pre>\n\n\n<p>At this point every port is untrusted, including the one facing your real server, so DHCP would break for everyone until you fix it. Trust the link toward the legitimate server, and only that link:<\/p>\n\n\n<pre class=\"wp-block-code code\"><code>interface GigabitEthernet0\/1\n ip dhcp snooping trust\n exit<\/code><\/pre>\n\n\n<p>One more line saves a confusing failure on a flat access switch. By default the switch inserts DHCP option 82 into requests, but with no relay in the path and a zero giaddr, that request looks spoofed and the switch drops it on the untrusted port. On a simple Layer 2 segment, turn the insertion off:<\/p>\n\n\n<pre class=\"wp-block-code code\"><code>no ip dhcp snooping information option<\/code><\/pre>\n\n\n<p>That is the whole configuration: snooping armed on the VLAN, the server port trusted, and option 82 out of the way. Confirm it took before relying on it.<\/p>\n\n<h2>Verify DHCP snooping is on<\/h2>\n\n<p>The summary command confirms snooping is enabled, which VLANs it is operating on, and which ports are trusted. Everything that matters is in one screen:<\/p>\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"2560\" height=\"966\" src=\"https:\/\/computingforgeeks.com\/wp-content\/uploads\/2026\/06\/wm-ds-status.png\" alt=\"Cisco IOS show ip dhcp snooping output: snooping enabled and operational on VLAN 1 with GigabitEthernet0\/1 trusted\" class=\"wp-image-169492\" title=\"\" srcset=\"https:\/\/computingforgeeks.com\/wp-content\/uploads\/2026\/06\/wm-ds-status.png 2560w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2026\/06\/wm-ds-status-300x113.png 300w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2026\/06\/wm-ds-status-1024x386.png 1024w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2026\/06\/wm-ds-status-768x290.png 768w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2026\/06\/wm-ds-status-1536x580.png 1536w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2026\/06\/wm-ds-status-2048x773.png 2048w\" sizes=\"auto, (max-width: 2560px) 100vw, 2560px\" \/><\/figure>\n\n\n<p>Snooping is enabled and operational on VLAN 1, option 82 insertion is off, and the trust table lists a single trusted interface, Gi0\/1. Every other port, including the rogue&#8217;s Gi0\/3, is untrusted by default and never appears in that list. That one trusted entry is the whole policy.<\/p>\n\n<h2>Block the rogue server and read the binding table<\/h2>\n\n<p>With both servers powered on, the client boots and broadcasts a DISCOVER. Both servers answer, but the rogue&#8217;s offer arrives on the untrusted Gi0\/3 and the switch drops it, so the client only ever sees the real server&#8217;s reply. The client ends up with an address from the legitimate 192.168.10.0\/24 pool, not the rogue&#8217;s 10.6.6.0\/24:<\/p>\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"2560\" height=\"596\" src=\"https:\/\/computingforgeeks.com\/wp-content\/uploads\/2026\/06\/wm-ds-client.png\" alt=\"Cisco client show ip interface brief and show dhcp lease confirming it leased 192.168.10.2 from the real server, not the rogue 10.6.6.0 pool\" class=\"wp-image-169494\" title=\"\" srcset=\"https:\/\/computingforgeeks.com\/wp-content\/uploads\/2026\/06\/wm-ds-client.png 2560w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2026\/06\/wm-ds-client-300x70.png 300w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2026\/06\/wm-ds-client-1024x238.png 1024w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2026\/06\/wm-ds-client-768x179.png 768w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2026\/06\/wm-ds-client-1536x358.png 1536w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2026\/06\/wm-ds-client-2048x477.png 2048w\" sizes=\"auto, (max-width: 2560px) 100vw, 2560px\" \/><\/figure>\n\n\n<p>The lease is bound to 192.168.10.1, the real server. On the switch, the binding table records that lease and the statistics counter proves the rogue was stopped:<\/p>\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"2560\" height=\"550\" src=\"https:\/\/computingforgeeks.com\/wp-content\/uploads\/2026\/06\/wm-ds-binding.png\" alt=\"Cisco IOS show ip dhcp snooping binding table with one client lease and statistics showing 2 packets dropped from untrusted ports\" class=\"wp-image-169493\" title=\"\" srcset=\"https:\/\/computingforgeeks.com\/wp-content\/uploads\/2026\/06\/wm-ds-binding.png 2560w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2026\/06\/wm-ds-binding-300x64.png 300w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2026\/06\/wm-ds-binding-1024x220.png 1024w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2026\/06\/wm-ds-binding-768x165.png 768w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2026\/06\/wm-ds-binding-1536x330.png 1536w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2026\/06\/wm-ds-binding-2048x440.png 2048w\" sizes=\"auto, (max-width: 2560px) 100vw, 2560px\" \/><\/figure>\n\n\n<p>One binding exists, the client&#8217;s real lease on the untrusted Gi0\/2, exactly the entry dynamic ARP inspection will later check ARP replies against. The statistics line is the proof of the block: two packets dropped, both from untrusted ports, which are the rogue server&#8217;s offer and acknowledgement that never reached the client. The attack failed silently, and the user never knew there was a second server on the wire.<\/p>\n\n<h2>Practice DHCP snooping<\/h2>\n\n<p>Run the questions to lock in trusted versus untrusted ports, what the binding table holds, and the messages an untrusted port may carry, then use the flashcards for quick recall.<\/p>\n\n<div class=\"cfg-quiz\" data-quiz=\"{\n  &quot;id&quot;: &quot;dhcp-snooping&quot;,\n  &quot;title&quot;: &quot;Cisco DHCP snooping quiz&quot;,\n  &quot;objective&quot;: &quot;Configure and verify DHCP snooping (5.7)&quot;,\n  &quot;intro&quot;: &quot;Ten questions on Cisco DHCP snooping: trusted versus untrusted ports, the messages each may carry, the binding table, the option 82 gotcha, and how a rogue server is blocked. Each answer has a written explanation.&quot;,\n  &quot;questions&quot;: [\n    {&quot;q&quot;: &quot;DHCP snooping classifies every switch port as one of which two kinds?&quot;, &quot;options&quot;: [&quot;Access or trunk&quot;, &quot;Trusted or untrusted&quot;, &quot;Primary or secondary&quot;, &quot;Static or dynamic&quot;], &quot;answer&quot;: 1, &quot;explanation&quot;: &quot;Snooping splits ports into trusted and untrusted. Trusted ports may carry any DHCP message, untrusted ports may carry only client-sourced messages.&quot;, &quot;validated&quot;: &quot;doc&quot;},\n    {&quot;q&quot;: &quot;On an untrusted port, which DHCP messages does snooping drop?&quot;, &quot;options&quot;: [&quot;Client messages like DISCOVER and REQUEST&quot;, &quot;Server messages like OFFER, ACK, and NAK&quot;, &quot;All DHCP messages&quot;, &quot;Only DHCP renewals&quot;], &quot;answer&quot;: 1, &quot;explanation&quot;: &quot;Untrusted ports may carry client-to-server messages but never server-to-client replies. A server reply on an untrusted port is how a rogue DHCP server is detected, so it is dropped.&quot;, &quot;validated&quot;: &quot;lab&quot;},\n    {&quot;type&quot;: &quot;multi&quot;, &quot;q&quot;: &quot;Which DHCP messages may an untrusted port still forward? Select all that apply.&quot;, &quot;options&quot;: [&quot;DISCOVER&quot;, &quot;REQUEST&quot;, &quot;OFFER&quot;, &quot;ACK&quot;], &quot;answers&quot;: [0, 1], &quot;explanation&quot;: &quot;DISCOVER and REQUEST are client-sourced and allowed on untrusted ports. OFFER and ACK are server replies and are dropped on untrusted ports.&quot;, &quot;validated&quot;: &quot;lab&quot;},\n    {&quot;q&quot;: &quot;Which port should be configured as trusted?&quot;, &quot;options&quot;: [&quot;Every access port&quot;, &quot;The port or uplink toward the legitimate DHCP server&quot;, &quot;The port to the rogue server&quot;, &quot;No port should be trusted&quot;], &quot;answer&quot;: 1, &quot;explanation&quot;: &quot;Only the path to the real DHCP server is trusted: the server&#039;s port and any uplink or trunk that carries its replies. Everything facing users stays untrusted.&quot;, &quot;validated&quot;: &quot;lab&quot;},\n    {&quot;type&quot;: &quot;numeric&quot;, &quot;q&quot;: &quot;After only the global `ip dhcp snooping` command, with no VLAN specified, how many VLANs does snooping actually inspect? Type the number.&quot;, &quot;answer&quot;: &quot;0&quot;, &quot;hint&quot;: &quot;It does nothing until you arm it per VLAN.&quot;, &quot;placeholder&quot;: &quot;e.g. 1&quot;, &quot;explanation&quot;: &quot;The global command alone inspects nothing. You must arm it with ip dhcp snooping vlan &lt;id&gt;; the verification output then lists that VLAN as configured and operational.&quot;, &quot;validated&quot;: &quot;lab&quot;},\n    {&quot;q&quot;: &quot;What does the DHCP snooping binding table record for each lease?&quot;, &quot;options&quot;: [&quot;Only the client IP address&quot;, &quot;The client MAC, IP, VLAN, port, and lease time&quot;, &quot;The DNS servers handed out&quot;, &quot;The switch&#039;s own MAC address&quot;], &quot;answer&quot;: 1, &quot;explanation&quot;: &quot;Each binding holds the client MAC, the leased IP, the VLAN, the port, and the lease time. It is the durable record other features read.&quot;, &quot;validated&quot;: &quot;lab&quot;},\n    {&quot;q&quot;: &quot;Which security feature relies on the DHCP snooping binding table?&quot;, &quot;options&quot;: [&quot;Spanning Tree Protocol&quot;, &quot;Dynamic ARP inspection&quot;, &quot;VTP&quot;, &quot;CDP&quot;], &quot;answer&quot;: 1, &quot;explanation&quot;: &quot;Dynamic ARP inspection (and IP source guard) check traffic against the snooping binding table, which is why DHCP snooping must be enabled first.&quot;, &quot;validated&quot;: &quot;doc&quot;},\n    {&quot;type&quot;: &quot;match&quot;, &quot;q&quot;: &quot;Match each command to its purpose.&quot;, &quot;pairs&quot;: [{&quot;left&quot;: &quot;ip dhcp snooping&quot;, &quot;right&quot;: &quot;Enable snooping globally&quot;}, {&quot;left&quot;: &quot;ip dhcp snooping vlan 1&quot;, &quot;right&quot;: &quot;Arm snooping on a VLAN&quot;}, {&quot;left&quot;: &quot;ip dhcp snooping trust&quot;, &quot;right&quot;: &quot;Trust a port toward the server&quot;}], &quot;explanation&quot;: &quot;Enable globally, arm per VLAN, then trust only the path to the real server. Without the VLAN command nothing is inspected, and without the trust command the server&#039;s own replies are dropped.&quot;, &quot;validated&quot;: &quot;lab&quot;},\n    {&quot;q&quot;: &quot;After enabling DHCP snooping, every client stops getting an address. What is the most likely cause?&quot;, &quot;options&quot;: [&quot;The clients need rebooting&quot;, &quot;The port or uplink toward the DHCP server was not trusted&quot;, &quot;DHCP snooping cannot coexist with DHCP&quot;, &quot;The VLAN was deleted&quot;], &quot;answer&quot;: 1, &quot;explanation&quot;: &quot;An untrusted server path means the switch drops the real server&#039;s replies exactly like a rogue&#039;s. The fix is almost always a missing ip dhcp snooping trust on the path to the server.&quot;, &quot;validated&quot;: &quot;lab&quot;},\n    {&quot;q&quot;: &quot;On a flat Layer 2 access switch with no relay, why might clients fail to get a lease after enabling snooping, even with the server port trusted?&quot;, &quot;options&quot;: [&quot;The switch inserts DHCP option 82 and drops the request as spoofed&quot;, &quot;DHCP snooping blocks all broadcast traffic&quot;, &quot;The binding table is full&quot;, &quot;The VLAN became untrusted&quot;], &quot;answer&quot;: 0, &quot;explanation&quot;: &quot;By default the switch inserts option 82 with a zero giaddr, which looks spoofed on an untrusted port and is dropped. On a flat segment, disable it with no ip dhcp snooping information option.&quot;, &quot;validated&quot;: &quot;lab&quot;}\n  ]\n}\n\" data-quiz-count=\"10\"><div class=\"cfg-quiz-loading\">Loading quiz...<\/div><\/div>\n\n\n<p>Flip through the deck until the trust rule, the binding table fields, and the option 82 gotcha are automatic, or grab the Anki pack to review them anywhere:<\/p>\n\n<div class=\"cfg-fc\" data-fc=\"{\n  &quot;id&quot;: &quot;dhcp-snooping&quot;,\n  &quot;title&quot;: &quot;Cisco DHCP Snooping Flashcards&quot;,\n  &quot;objective&quot;: &quot;Configure and verify DHCP snooping (5.7)&quot;,\n  &quot;intro&quot;: &quot;The DHCP snooping facts worth knowing cold: trusted versus untrusted ports, which messages each carries, the binding table, the enable and trust commands, the option 82 gotcha, and how a rogue server is blocked. Tap a card to flip it, then mark whether you knew it.&quot;,\n  &quot;cards&quot;: [\n    {&quot;front&quot;: &quot;What does DHCP snooping do?&quot;, &quot;back&quot;: &quot;It makes the switch inspect DHCP messages and decide which ports may send server replies, blocking rogue DHCP servers and building a binding table of legitimate leases.&quot;},\n    {&quot;front&quot;: &quot;Trusted vs untrusted ports&quot;, &quot;back&quot;: &quot;A trusted port may carry any DHCP message, including server replies. An untrusted port may carry only client-sourced messages; a server reply there is dropped.&quot;},\n    {&quot;front&quot;: &quot;What does an untrusted port drop?&quot;, &quot;back&quot;: &quot;Server-to-client messages: OFFER, ACK, and NAK. That is how a rogue DHCP server on a user port is silenced.&quot;},\n    {&quot;front&quot;: &quot;What may an untrusted port carry?&quot;, &quot;back&quot;: &quot;Client-to-server messages: DISCOVER and REQUEST. A normal host only ever sends these, so they are allowed.&quot;},\n    {&quot;front&quot;: &quot;Which ports should be trusted?&quot;, &quot;back&quot;: &quot;Only the path to the legitimate DHCP server: its port plus any uplink or trunk that carries its replies. Every user-facing access port stays untrusted.&quot;},\n    {&quot;front&quot;: &quot;What is in the DHCP snooping binding table?&quot;, &quot;back&quot;: &quot;One entry per lease: client MAC, leased IP, VLAN, port, and lease time. It is the record dynamic ARP inspection and IP source guard read.&quot;},\n    {&quot;front&quot;: &quot;Which features depend on the binding table?&quot;, &quot;back&quot;: &quot;Dynamic ARP inspection and IP source guard. Both check traffic against the snooping bindings, so DHCP snooping must be enabled first.&quot;},\n    {&quot;front&quot;: &quot;Enable DHCP snooping&quot;, &quot;back&quot;: &quot;ip dhcp snooping (global), then ip dhcp snooping vlan &lt;id&gt; to arm it per VLAN. The global command alone inspects nothing.&quot;},\n    {&quot;front&quot;: &quot;Trust a port&quot;, &quot;back&quot;: &quot;interface &lt;id&gt;, then ip dhcp snooping trust. Apply it only to the link toward the real DHCP server.&quot;},\n    {&quot;front&quot;: &quot;Default trust state after enabling snooping&quot;, &quot;back&quot;: &quot;Every port is untrusted, including the one facing your real server. DHCP breaks until you trust that path.&quot;},\n    {&quot;front&quot;: &quot;Why does global enable do nothing on its own?&quot;, &quot;back&quot;: &quot;Snooping inspects only the VLANs you name with ip dhcp snooping vlan. Until you arm a VLAN, the verification output lists no operational VLANs.&quot;},\n    {&quot;front&quot;: &quot;The option 82 gotcha&quot;, &quot;back&quot;: &quot;On a flat L2 switch with no relay, the switch inserts option 82 with a zero giaddr, which looks spoofed and is dropped. Fix it with no ip dhcp snooping information option.&quot;},\n    {&quot;front&quot;: &quot;DHCP stopped working after enabling snooping&quot;, &quot;back&quot;: &quot;Almost always a server-facing port or uplink that was not trusted, so the real server&#039;s replies are dropped like a rogue&#039;s. Add ip dhcp snooping trust on the path to the server.&quot;},\n    {&quot;front&quot;: &quot;Verify snooping is on&quot;, &quot;back&quot;: &quot;show ip dhcp snooping shows whether it is enabled, which VLANs are operational, option 82 state, and which interfaces are trusted.&quot;},\n    {&quot;front&quot;: &quot;See the leases and drops&quot;, &quot;back&quot;: &quot;show ip dhcp snooping binding lists the recorded leases. show ip dhcp snooping statistics shows packets forwarded and dropped, including drops from untrusted ports.&quot;},\n    {&quot;front&quot;: &quot;How is a rogue server blocked?&quot;, &quot;back&quot;: &quot;Its OFFER and ACK arrive on an untrusted port, so the switch drops them before any client sees them. The client only receives the real server&#039;s reply and the drop counter increments.&quot;}\n  ]\n}\n\" data-fc-anki=\"https:\/\/computingforgeeks.com\/wp-content\/uploads\/2026\/06\/ccna-dhcp-snooping-flashcards.apkg\"><div class=\"cfg-fc-loading\">Loading flashcards...<\/div><\/div>\n\n\n<h2>When DHCP stops working after you enable snooping<\/h2>\n\n<p>The most common DHCP snooping failure is self-inflicted: you enable it, every address lease across the switch stops, and the cause is a port that should be trusted but is not. The uplink toward the DHCP server, or any inter-switch trunk that carries DHCP toward it, has to be trusted, or the server&#8217;s replies are dropped exactly like a rogue&#8217;s would be. If DHCP dies the moment you turn snooping on, the fix is almost always one missing <code>ip dhcp snooping trust<\/code> on the path to the server, plus the option 82 line on a flat segment.<\/p>\n\n<p>Snooping is the foundation the rest of Layer 2 security builds on. Its binding table feeds <a href=\"https:\/\/computingforgeeks.com\/cisco-dynamic-arp-inspection-configuration\/\">dynamic ARP inspection<\/a> and IP source guard, and it sits alongside <a href=\"https:\/\/computingforgeeks.com\/cisco-port-security-configuration\/\">port security<\/a> and <a href=\"https:\/\/computingforgeeks.com\/cisco-access-control-lists-configuration\/\">access control lists<\/a> as the access-layer defenses every switched VLAN should carry. The <a href=\"https:\/\/computingforgeeks.com\/quickly-prepare-for-ccna-200-301-exam\/\">CCNA 200-301 study roadmap<\/a> shows where each of these features fits in the bigger picture.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>When a PC boots, it trusts the first DHCP server that answers. It cannot tell the company&#8217;s real server from a cheap router someone plugged into a wall jack, so whichever replies first hands out the IP address, the subnet mask, and the default gateway. Point that gateway at an attacker&#8217;s machine and every packet &#8230; <a title=\"Configure Cisco DHCP Snooping to Block Rogue Servers\" class=\"read-more\" href=\"https:\/\/computingforgeeks.com\/cisco-dhcp-snooping-configuration\/\" aria-label=\"Read more about Configure Cisco DHCP Snooping to Block Rogue Servers\">Read more<\/a><\/p>\n","protected":false},"author":3,"featured_media":169496,"comment_status":"open","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[299,55],"tags":[524,525],"cfg_series":[39888],"class_list":["post-169495","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-how-to","category-networking","tag-ccna","tag-cisco","cfg_series-ccna-200-301"],"_links":{"self":[{"href":"https:\/\/computingforgeeks.com\/wp-json\/wp\/v2\/posts\/169495","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/computingforgeeks.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/computingforgeeks.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/computingforgeeks.com\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/computingforgeeks.com\/wp-json\/wp\/v2\/comments?post=169495"}],"version-history":[{"count":1,"href":"https:\/\/computingforgeeks.com\/wp-json\/wp\/v2\/posts\/169495\/revisions"}],"predecessor-version":[{"id":169497,"href":"https:\/\/computingforgeeks.com\/wp-json\/wp\/v2\/posts\/169495\/revisions\/169497"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/computingforgeeks.com\/wp-json\/wp\/v2\/media\/169496"}],"wp:attachment":[{"href":"https:\/\/computingforgeeks.com\/wp-json\/wp\/v2\/media?parent=169495"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/computingforgeeks.com\/wp-json\/wp\/v2\/categories?post=169495"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/computingforgeeks.com\/wp-json\/wp\/v2\/tags?post=169495"},{"taxonomy":"cfg_series","embeddable":true,"href":"https:\/\/computingforgeeks.com\/wp-json\/wp\/v2\/cfg_series?post=169495"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}