- A
Use the ios_vlan module with parameters vlan_id=100 and name='Users' and set state=present. The module will create the VLAN if it does not exist or update the name if it exists with a different name.
The ios_vlan module idempotently creates or updates VLAN; it will rename the existing VLAN if needed.
- B
First use the ios_command module to run 'show vlan name Users' and then conditionally create VLAN 100 if no output is returned.
Why wrong: This approach is more complex and error-prone; the ios_vlan module handles idempotency.
- C
Use the ios_config module to directly apply the configuration 'vlan 100\n name Users' and then use the 'parents' directive to ensure idempotency.
Why wrong: Using ios_config is lower-level and may not handle idempotency as gracefully as ios_vlan.
- D
Use the ios_vlan module with vlan_id=100 and state=present, but omit the name parameter.
Why wrong: Omitting the name may cause the VLAN to be created with a default name, but does not address the name conflict.
Quick Answer
The correct approach is to use the `ios_vlan` module with `vlan_id=100`, `name='Users'`, and `state=present`, relying on the module’s built-in idempotency to create or update VLAN 100 without conflicting with existing VLAN names. This works because the module checks the VLAN ID first: if VLAN 100 does not exist, it creates it with the specified name; if VLAN 100 exists but has a different name, it updates the name to 'Users'. The error you saw—'VLAN name is already in use'—occurs only when a *different* VLAN ID already owns the name 'Users', which is exactly the conflict the module cannot resolve on its own. On the Cisco DevNet Associate 200-901 exam, this scenario tests your understanding of Ansible module idempotency versus pure state management: a common trap is assuming `state=present` will silently rename another VLAN, but the module only modifies the target VLAN ID. Memory tip: think "ID first, name second"—the module cares about the VLAN number, not the name, so a name conflict on a different ID will still fail.
200-901 Application Deployment and Security Practice Question
This 200-901 practice question tests your understanding of application deployment and security. The scenario asks you to isolate a root cause — eliminate options that address a different problem before choosing. After answering, compare your reasoning against the explanation and wrong-answer breakdown below. Once you have made your selection, read the full explanation to reinforce the concept and understand why each distractor is designed to mislead on exam day.
A network engineer is automating the deployment of a new VLAN across multiple Cisco switches using Ansible. The engineer has written a playbook that uses the ios_vlan module to create VLAN 100 with name 'Users'. The playbook runs successfully on the first switch but fails on the second switch with the error message: 'VLAN name is already in use'. The engineer checks the second switch and confirms that VLAN 100 does not exist, but a different VLAN with the name 'Users' exists. The engineer wants to ensure that the playbook creates VLAN 100 with the exact name 'Users' only if it does not already exist, and without conflicting with existing VLANs. Which approach should the engineer take?
Clue words in this question
Noticing these words before you look at the options changes how you read each choice.
Clue:
"first"Why it matters: Order matters here. You are being tested on which action comes before the others — not which action is generally useful.
Answer choices
Why each option matters
Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.
Correct answer & explanation
Use the ios_vlan module with parameters vlan_id=100 and name='Users' and set state=present. The module will create the VLAN if it does not exist or update the name if it exists with a different name.
Option A is correct because the `ios_vlan` module with `state=present` ensures idempotency: if VLAN 100 does not exist, it creates it with the specified name; if VLAN 100 exists but has a different name, it updates the name to 'Users'. This directly resolves the conflict where a different VLAN ID already uses the name 'Users', as the module will not attempt to reuse a name that is already assigned to another VLAN — instead, it will fail with the observed error only if the name is already in use by a different VLAN ID. The engineer's goal is to create VLAN 100 with name 'Users' only if it does not already exist, and the module's default behavior (without additional checks) will fail when the name is taken, so the correct approach is to rely on the module's built-in idempotency to create or update VLAN 100 without conflicting with existing VLAN names.
Key principle: Answer the scenario, not the keyword: identify the specific constraint before choosing the most familiar-sounding option.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✓
Use the ios_vlan module with parameters vlan_id=100 and name='Users' and set state=present. The module will create the VLAN if it does not exist or update the name if it exists with a different name.
Why this is correct
The ios_vlan module idempotently creates or updates VLAN; it will rename the existing VLAN if needed.
Clue confirmation
The clue word "first" in the question point toward this answer.
Related concept
Read the scenario before looking for a memorised answer.
- ✗
First use the ios_command module to run 'show vlan name Users' and then conditionally create VLAN 100 if no output is returned.
Why it's wrong here
This approach is more complex and error-prone; the ios_vlan module handles idempotency.
- ✗
Use the ios_config module to directly apply the configuration 'vlan 100\n name Users' and then use the 'parents' directive to ensure idempotency.
Why it's wrong here
Using ios_config is lower-level and may not handle idempotency as gracefully as ios_vlan.
- ✗
Use the ios_vlan module with vlan_id=100 and state=present, but omit the name parameter.
Why it's wrong here
Omitting the name may cause the VLAN to be created with a default name, but does not address the name conflict.
Common exam traps
Common exam trap: answer the scenario, not the keyword
Cisco often tests the misconception that omitting the `name` parameter or using raw config modules like `ios_config` can bypass name conflicts, but the actual trap is that the `ios_vlan` module's idempotency only works when the VLAN ID exists — it cannot resolve a name conflict where a different VLAN ID already owns the desired name, so the correct answer is to rely on the module's default behavior of creating or updating the VLAN by ID, which will fail gracefully if the name is taken, prompting the engineer to handle the conflict separately.
Detailed technical explanation
How to think about this question
The `ios_vlan` module in Ansible interacts with the Cisco IOS CLI via SSH, sending commands like `vlan 100` and `name Users` under the global configuration mode. Under the hood, the module parses the output of `show vlan brief` or `show vlan id 100` to determine the current state; if the VLAN exists but the name differs, it issues the `name` command to update it — but if the name is already in use by another VLAN ID, the IOS device rejects the command with the error 'VLAN name is already in use', which the module reports as a failure. In a real-world scenario, this often occurs in brownfield deployments where VLAN naming conventions are not strictly enforced, requiring either a pre-check to rename the conflicting VLAN or a design that uses unique names per VLAN ID.
KKey Concepts to Remember
- Read the scenario before looking for a memorised answer.
- Find the constraint that changes the correct option.
- Eliminate answers that are true in general but not in this case.
TExam Day Tips
- Watch for words such as best, first, most likely and least administrative effort.
- Review why wrong options are wrong, not only why the correct option is correct.
Key takeaway
Answer the scenario, not the keyword: identify the specific constraint before choosing the most familiar-sounding option.
Real-world example
How this comes up in practice
A help-desk technician troubleshoots why a newly connected PC cannot reach shared printers on the same floor. The cable is good, the switch port is active, but the PC is in VLAN 20 and the printers are in VLAN 10. The uplink trunk only allows VLAN 10. A trunk being up does not mean every VLAN crosses it.
What to study next
Got this wrong? Here's your next step.
Identify which exam domain this question belongs to, review the core concept, then practise similar questions from the same domain.
- →
Application Deployment and Security — study guide chapter
Learn the concepts, then practise the questions
- →
Application Deployment and Security practice questions
Targeted practice on this topic area only
- →
All 200-901 questions
505 questions across all exam domains
- →
Cisco DevNet Associate 200-901 study guide
Full concept coverage aligned to exam objectives
- →
200-901 practice test guide
How to use practice tests most effectively before exam day
Related practice questions
Related 200-901 practice-question pages
Use these pages to review the topic behind this question. This is how one missed question becomes focused revision.
Software Development and Design practice questions
Practise 200-901 questions linked to Software Development and Design.
Understanding and Using APIs practice questions
Practise 200-901 questions linked to Understanding and Using APIs.
Cisco Platforms and Development practice questions
Practise 200-901 questions linked to Cisco Platforms and Development.
Application Deployment and Security practice questions
Practise 200-901 questions linked to Application Deployment and Security.
Infrastructure and Automation practice questions
Practise 200-901 questions linked to Infrastructure and Automation.
Network Fundamentals practice questions
Practise 200-901 questions linked to Network Fundamentals.
200-901 fundamentals practice questions
Practise 200-901 questions linked to 200-901 fundamentals.
200-901 scenario practice questions
Practise 200-901 questions linked to 200-901 scenario.
200-901 troubleshooting practice questions
Practise 200-901 questions linked to 200-901 troubleshooting.
Practice this exam
Start a free 200-901 practice session
Short sessions build daily habit. Longer sessions build exam-day stamina. Try a timed session to simulate real conditions.
FAQ
Questions learners often ask
What does this 200-901 question test?
Application Deployment and Security — This question tests Application Deployment and Security — Read the scenario before looking for a memorised answer..
What is the correct answer to this question?
The correct answer is: Use the ios_vlan module with parameters vlan_id=100 and name='Users' and set state=present. The module will create the VLAN if it does not exist or update the name if it exists with a different name. — Option A is correct because the `ios_vlan` module with `state=present` ensures idempotency: if VLAN 100 does not exist, it creates it with the specified name; if VLAN 100 exists but has a different name, it updates the name to 'Users'. This directly resolves the conflict where a different VLAN ID already uses the name 'Users', as the module will not attempt to reuse a name that is already assigned to another VLAN — instead, it will fail with the observed error only if the name is already in use by a different VLAN ID. The engineer's goal is to create VLAN 100 with name 'Users' only if it does not already exist, and the module's default behavior (without additional checks) will fail when the name is taken, so the correct approach is to rely on the module's built-in idempotency to create or update VLAN 100 without conflicting with existing VLAN names.
What should I do if I get this 200-901 question wrong?
Identify which exam domain this question belongs to, review the core concept, then practise similar questions from the same domain.
Are there clue words in this question I should notice?
Yes — watch for: "first". Order matters here. You are being tested on which action comes before the others — not which action is generally useful.
What is the key concept behind this question?
Read the scenario before looking for a memorised answer.
About these practice questions
Courseiva creates original exam-style practice questions with explanations and wrong-answer analysis. It does not publish real exam questions, exam dumps, or protected exam content. Learn why practice questions differ from exam dumps →
Keep practising
More 200-901 practice questions
- A company uses a CI/CD pipeline to deploy network configurations. The pipeline includes a stage that runs automated test…
- Which TWO statements about REST API design best practices are correct?
- A network engineer is using the Cisco Meraki API to retrieve a list of SSIDs for a specific network. The API returns an…
- When designing a REST API client for a Cisco DNA Center deployment, which authentication method should be used to obtain…
- A Python script uses the Cisco Meraki API to create a new network and then immediately attempts to configure an SSID on…
- A DevOps team manages a multi-site Cisco Meraki network with 50 MX appliances and 200 MR access points. They use a Pytho…
Last reviewed: Jun 11, 2026
This 200-901 practice question is part of Courseiva's free Cisco certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the 200-901 exam.
Question Discussion
Share a tip, memory trick, or ask about the reasoning behind this question. Do not post real exam questions, leaked content, braindumps, or copyrighted exam material. Comments are moderated and may be removed without notice.
Sign in to join the discussion.