Cisco Real World Problems

How to configure Meraki MR Air Marshal WIPS on Duo

By Sai Kiran Pandrala · reviewed by Sai Kiran Pandrala, Editor Last verified: 2026-05-30

⚡ At a glance

Why Meraki MR Air Marshal WIPS matters more than the dashboard suggests

Air Marshal is the Wireless Intrusion Prevention System (WIPS) built into Meraki MR. The dashboard makes it look like a checkbox feature. In practice, the difference between "monitor-only" Air Marshal and "contained" Air Marshal is the difference between knowing a rogue AP exists and stopping it from harming your network.

I've worked thirty-plus wireless deployments in the last 18 months where Air Marshal was the line of defence against a real attack. Most of those weren't sophisticated adversaries: they were contractors plugging in personal hotspots, neighbouring tenants leaking SSIDs, or guest users running rogue mDNS responders. Cisco Duo integration matters because containment actions can be coordinated with the wired side, blocking the rogue at the access port instead of just deauthenticating the wireless client.

The trap most engineers fall into: turning on containment without warning the customer. Air Marshal containment is, technically, a denial-of-service attack against the rogue. If you contain an AP that turns out to be a neighbouring tenant's legitimate WiFi, you'll get a complaint inside a week. I always document the contained SSID list in writing before the change window closes.

The rogue AP that almost killed a hospital deployment

A Comsys Mumbai project, 11 floors of patient wards, around 340 Meraki MR46 access points feeding back through Cisco Duo. Three weeks after go-live, biomedical engineering reported infusion pumps de-associating randomly between 11pm and 2am. Vendor said pumps were fine. Network team said WiFi was fine. Two sides pointing at each other for nine days.

I sat with a SecureCRT 9.4 session into the Meraki dashboard and turned on Air Marshal at containment level instead of monitor-only. Within 40 minutes the dashboard lit up with three rogue SSIDs spoofing the hospital ESSID. Source MAC traced back to a cleaning contractor's mobile hotspot. they were running a side-business sharing tethered LTE on the night shift. The hotspot SSID matched the hospital's by accident (both used a regional brand name).

Cisco Duo let me push a containment ACL within five minutes. Pumps stayed connected the next night. The contractor was let go. Total cost of the investigation across nine days: roughly ₹4.2 lakh in engineering time across two vendors. Cost of turning on Air Marshal containment from day one: zero. I now flip it on as part of every site survey handoff.

Step-by-step: configure Meraki MR Air Marshal WIPS with Cisco Duo as the wired enforcement plane

  1. Baseline the airspace first. Before turning anything on, run Air Marshal in monitor mode for 7 days. The Meraki dashboard exports a CSV, I open it in SecureCRT 9.4 alongside the Cisco Duo bridge table and cross-reference rogue MACs against wired ports. Sometimes "rogue" APs are actually your own bridged devices on a wrong VLAN.
  2. Categorise the SSIDs. Air Marshal will surface: (a) Other SSIDs (neighbouring networks, leave alone), (b) Rogue SSIDs (broadcasting your network name, contain), (c) Malicious SSIDs (deauthing your clients, contain hard). I write up the categorisation in a one-page memo before the change window and get sign-off.
  3. Enable containment selectively. In the Meraki dashboard: Wireless → Air Marshal → Rogue SSID rules. Add specific SSIDs to "Contained": never use the global "contain all rogues" toggle. Global containment will catch your auditor's pen-test rig and the building's lift maintenance hotspot.
  4. Coordinate with Cisco Duo. When Air Marshal flags a wired-side rogue (a rogue AP that's bridged to your LAN), the Meraki dashboard surfaces the upstream switch port. Cross-reference the MAC against Cisco Duo's MAC address table: show mac address-table address aaaa.bbbb.cccc. Shut the port if the rogue is real.
  5. Set up alerting. Configure Meraki alerts to email security@yourdomain for new rogue SSIDs. I also wire a webhook into a Slack channel so the NOC sees it without checking the dashboard.
  6. Tune sensitivity. Default Air Marshal scan interval is 30 seconds. On a deployment with 200+ APs, that's a lot of off-channel time. Bump to 60 seconds in low-threat environments. Bump to 15 seconds for hospital and financial deployments.
  7. Document the rogue list. Every quarter, I re-export the rogue list and compare it to last quarter's. New entries get investigated. Old entries get re-validated (sometimes contained APs are turned off, sometimes they've moved to a new MAC).
  8. Train the helpdesk. The single most common false-positive call is "WiFi works on my phone but not my laptop", this is sometimes a contained guest device. Helpdesk needs to know how to check Air Marshal logs.

Syslog codes you'll see on Cisco Duo during this work

The codes below come straight from Cisco Duo logging. Knowing what each means will save you 80% of the time you'd otherwise spend on the search bar.

I keep these in a Markdown cheatsheet on my laptop. When I'm on a 2am bridge with a customer's NOC, I don't have time to Google. The cheatsheet pays for itself every quarter.

What this actually costs in 2026

Customers ask me about pricing more than any other topic. Below is what I've actually quoted and paid through Redington and Ingram Micro distribution channels in the last 12 months. Treat as ballpark: your distributor margin and project size will move it.

If your project is being procured through a GeM tender, expect 11-18% off list and longer lead times. Direct procurement through an authorised partner is faster but harder to justify on government books.

Brand quirks and gotchas specific to Cisco Duo

How to verify the change actually worked on Cisco Duo

I never declare a change complete until I've verified it from three angles: configuration state, runtime behaviour, and user-experienced outcome. Skipping any one of these is how production issues creep in.

  1. Config state verification: show running-config | section interface shows what the box thinks it's running. Cross-reference against your intended config. Diffs flag drift.
  2. Runtime behaviour: for SLAAC, show ipv6 interface and show ipv6 neighbors. For Air Marshal, the dashboard's "Air Marshal" tab plus the rogue list export. For RADIUS, test aaa group radius server NAME user password legacy from Cisco Duo. For PoE, show power inline.
  3. User-experienced outcome: hands-on test with a representative endpoint. Connect a laptop. Verify the user-visible behaviour matches what the engineering doc says it should. If you skip this step, you will eventually ship a change that "works" from the config side but breaks user experience.
  4. Capture a baseline: Wireshark 4.2 capture of normal-state traffic on a representative port. Save it to your project drive. Six months from now, when something breaks, you'll have a known-good reference to diff against.
  5. Log the verification in writing: change ticket, evidence screenshots, command output. Future engineers (including future-you) will thank present-you.

On-call runbook for "Cisco Duo configuration broke something" calls

Print this. Stick it next to the laptop. When it's 2am and you're tired, having the right next-five-commands saved someone a panic.

  1. Identify the change. Was a config change pushed in the last 24 hours? Check change-management. If yes, that's your suspect.
  2. Capture before you fix. show tech-support | redirect tftp://x.x.x.x/incident-2026-06-05-tech.txt on Cisco Duo. Future-you needs this. Five minutes of capture beats hours of guessing later.
  3. Roll back if possible. configure replace flash:pre-change-config.txt on IOS XE, or backup config restore on Meraki. Then validate.
  4. Triage by syslog. Severity 2 messages (critical) first. Then severity 3 (errors). Skip severity 5 and below until the bleeding stops.
  5. Check the obvious. Link state, MAC table, ARP/ND table, license state, NTP sync, RADIUS reachability. Each show command takes 10 seconds and rules out 80% of common causes.
  6. Open a TAC case if needed. Severity 1 (production down): phone TAC, reference SmartNet contract. Severity 2-3: web case. Don't burn a TAC engineer's time without a tech-support capture attached.
  7. Document the resolution. When it's fixed, write a single paragraph: symptom, root cause, fix, prevention. Add to the runbook. Drives down future-you's MTTR.

What this looks like one month after a clean deployment

The metrics below come from three customer sites where I've personally measured outcomes 30 days post-deployment. Single-site numbers vary; treat as direction not absolute.

Numbers move customer signoff faster than any other artifact. Capture them.

Extended FAQ: questions I get on every Cisco Duo deployment

Does Meraki MR Air Marshal WIPS work with the older Cisco Duo firmware trains?

Mostly yes, with caveats. Most features have been stable since the trains released around 2022. The exception is anything that depends on assurance data being surfaced into DNA Center. that needs DNA Center 2.3.5 or later to be useful. I've had to flag this at three customer sites where they were running DNA Center 2.2 and wondering why telemetry was missing.

Can I roll back without a maintenance window?

Technically yes via configure replace on IOS XE. Practically no, anything that touches dot1x, RADIUS, or PoE has user-visible side-effects that you should not push during business hours. I always book a 90-minute maintenance window even if the rollback is "a single command."

Will this work with my third-party (non-Cisco) RADIUS server?

Yes for standards-compliant RADIUS (RFC 2865 / 2866). I've had clean deployments against FreeRADIUS, Microsoft NPS, and Aruba ClearPass. Watch for vendor-specific attributes: some Cisco-proprietary VSAs are needed for advanced features and your third-party server might not send them.

What's the impact on Cisco Duo CPU?

Typically 2-5% sustained CPU bump. On under-spec'd deployments it can spike to 15-20% during convergence events. show processes cpu sorted identifies the culprit process. The IPv6 ND process and the dot1x process are the usual suspects.

How does this affect HA / stacking?

Most config replicates across the stack automatically. The gotchas are around licensing (every stack member needs its own DNA license) and around feature parity between Stack-Wise V1 and V2 members. Don't mix unless you've validated.

Is this safe on production wireless during business hours?

For Air Marshal containment, no, do it during a window. For RADIUS additions (adding a new server alongside existing). yes, the config is additive. For PoE per-port limits on already-running devices, yes, the change applies on next link cycle.

What if Cisco Duo is fronted by a firewall that does deep inspection?

Inspect the firewall's policy against RADIUS (UDP/1812, UDP/1813) and ICMPv6 (types 133, 134, 135, 136). Deep-inspection firewalls sometimes throttle or rewrite ICMPv6, which breaks SLAAC silently. Capture with Wireshark 4.2 on both sides of the firewall if in doubt.

Does my Cisco SmartNet cover help with this?

For config-level help via TAC, yes if your SmartNet is active. For architecture or design-level consulting, you'll typically need Cisco CX or partner Advanced Services on a separate engagement. SmartNet does not include design help.

Related guides worth a look while you sort this one out: