Config Lab: ROAS Basics 1

 In 200-301 V1 Ch17: Routing in LANs, 200-301 V1 Part 5: IPv4 Routing, 200-301 V1 Parts, Config Lab, Config Lab CCNA Vol 1 Part 5, Hands-on

#ROAS can be one of those topics that seemed to be clear when you read about it, but when you see a sample test question, you just sit there and scratch your head wondering exactly what to do. ROAS can require you to connect several small pieces of information to complete a configuration. Today’s lab gives you practice at connecting the ideas.

All about Config Labs

The blog has a series of lab exercises called “Config Labs.” Each lab presents a topology with the relevant initial configuration for each device. The lab also lists new requirements, after which you should create the additional configuration to meet those requirements. You can do the lab on paper, in a text editor, or use software tools like Cisco Packet Tracer or Cisco Modeling Labs.

Once you have created your answer, you can click various tabs at the bottom of this post to see the lab answers, comments about the lab, and other helpful information.

The Lab Exercise


Layer 2 switches forward Ethernet frames using Layer 2 logic, so that frames sent inside one VLAN flow only to devices in that same VLAN. To allow traffic between devices in different VLANs, a Layer 3 routing service must be used, typically in the form of a Layer 3 switch or a router. This lab asks you to configure routing between VLANs with one router, connected to one switch with an 802.1Q trunk, with the router using a Router on a Stick (ROAS) configuration.

Configure both router R1 and switch SW1 (as a Layer 2 switch only) so that R1 will route IP packets between the three subnets shown at the bottom of the figure. The specific rules for this lab are:

  • On the router, configure ROAS using only subinterfaces.
  • On the router, use a subinterface number to match the VLAN ID for subnet
  • On the router, for the other subinterfaces, choose the next two numbers as subinterface numbers. For example, if you picked subinterface 101 for the first subinterface, use 102 and 103 for the next two.
  • On the router, assign the IP addresses used on the trunk by referring to the figure and then choosing the numerically-lowest IP address in the respective subnets.
  • To determine the VLAN IDs to use, refer on the initial configuration of the switch plus the figure.
  • Assume all router interfaces shown in the lab are physically working
  • Assume all PCs have been configured with an address on the correct IPv4 subnet and are working.


Figure 1: ROAS with three VLAN’s

Initial Configuration

Examples 1 and 2 show the beginning configuration state of R1 and SW1.

hostname R1
interface GigabitEthernet0/1
 no shutdown
interface GigabitEthernet0/2
 ip address
 no shutdown

Example 1: R1 Config


hostname SW1
vlan 20
vlan 30
interface GigabitEthernet1/0/1
 switchport mode access
interface GigabitEthernet1/0/2
 switchport access vlan 20
 switchport mode access
interface GigabitEthernet1/0/3
 switchport access vlan 30
 switchport mode access

Example 2: SW1 Config

Answer Options - Click Tabs to Reveal

You can learn a lot and strengthen real learning of the topics by creating the configuration – even without a router or switch CLI. In fact, these labs were originally built to be used solely as a paper exercise!

To answer, just think about the lab. Refer to your primary learning material for CCNA, your notes, and create the configuration on paper or in a text editor. Then check your answer versus the answer post, which is linked at the bottom of the lab, just above the comments section.

You can also implement the lab using the Cisco Packet Tracer network simulator. With this option, you use Cisco’s free Packet Tracer simulator. You open a file that begins with the initial configuration already loaded. Then you implement your configuration and test to determine if it met the requirements of the lab.

(Use this link for more information about Cisco Packet Tracer.)

Use this workflow to do the labs in Cisco Packet Tracer:

  1. Download the .pkt file linked below.
  2. Open the .pkt file, creating a working lab with the same topology and interfaces as the lab exercise.
  3. Add your planned configuration to the lab.
  4. Test the configuration using some of the suggestions below.

Download this lab’s Packet Tracer File

You can also implement the lab using Cisco Modeling Labs – Personal (CML-P). CML-P (or simply CML) replaced Cisco Virtual Internet Routing Lab (VIRL) software in 2020, in effect serving as VIRL Version 2.

If you prefer to use CML, use a similar workflow as you would use if using Cisco Packet Tracer, as follows:

  1. Download the CML file (filetype .yaml) linked below.
  2. Import the lab’s CML file into CML and then start the lab.
  3. Compare the lab topology and interface IDs to this lab, as they may differ (more detail below).
  4. Add your planned configuration to the lab.
  5. Test the configuration using some of the suggestions below.

Download this lab’s CML file!


Network Device Info:

This table lists the interfaces listed in the lab exercise documentation versus those used in the sample CML file.

Device Lab Port  CML Port
SW1 G1/1/1 G1/0
SW1 G1/0/1 G0/1
SW1 G1/0/2 G0/2
SW1 G1/0/3 G0/3


Host device info:

This table lists host information pre-configured in CML, information that might not be required by the lab but may be useful to you.


IP Address










Lab Answers Below: Spoiler Alert

Lab Answers: Configuration (Click Tab to Reveal)



Figure 1: ROAS with three VLAN’s

interface GigabitEthernet0/1.1
 encapsulation dot1Q 1 native
 ip address
interface GigabitEthernet0/1.2
 encapsulation dot1Q 20
 ip address
interface GigabitEthernet0/1.3
 encapsulation dot1Q 30
 ip address

Example 3: R1 Config

interface GigabitEthernet1/1/1
! This next line is needed only in older switches... and in CML/VIRL/PT
 switchport trunk encapsulation dot1q
 switchport mode trunk

Example 4: SW1 Config

Older switches that support both ISL and 802.1Q require the switchport trunk encapsulation dot1q command, which sets the specific type of trunking header. Newer switches support only the 802.1Q standard and will reject that command. So uncomment and use the switchport trunk encapsulation dot1q command as needed.

Commentary, Issues, and Verification Tips (Click Tabs to Reveal)


The configuration of ROAS can often be confusing for those new to routers and VLANs on switches. ROAS configuration allows a router to be used to route between multiple VLANs using a single trunk interface which is connected into the switched network. Using one router interface has an obvious advantage versus having to use a different physical router interface per VLAN. Having to use one physical router interface per VLAN would cause us to quickly run out of physical interfaces on all but the smallest networks.

For this lab, you were tasked with configuring a ROAS configuration on R1, with matching configuration on switch SW1. The lab requirements asked you to use subinterfaces only, and to use a subinterface number equal to the VLAN ID for subnet (the subnet on the left). These instructions require several steps of analysis, as follows:

  1. Per the figure, subnet is listed with port G0/1.
  2. Per the initial configuration of switch SW1, G0/1 is an access port, with no access VLAN defined, so it must be in VLAN 1.
  3. Per the requirements, the R1 configuration should use subinterface .1 for subnet
  4. VLAN 1 is the default VLAN to be used as the native VLAN.

All of these facts combine to result in the first group of three commands in Example 3. Note that because the native VLAN is used with a subinterface, the command encapsulation dot1q 1 native needed to include the native keyword.

The requirements asked that you use the next two subinterface numbers, so Example 3 shows subinterfaces .2 and .3. Note that the subinterface numbers do not have to match the VLAN IDs. To connect to VLAN 20, R1 uses the encapsulation dot1q 20 subcommand under subinterface .2. Similarly, R1 uses the encapsulation dot1q 30 subcommand under the .3 subinterface to connect to VLAN 30.

Finally, note that ROAS would not work without switch configuration as well. Example 4 shows the required configured on SW4’s G1/0 interface, switchport mode trunk, to manually enable 802.1Q trunking on the link connected to R1.

Known Issues in this Lab

This section of each Config Lab Answers post hopes to help with those issues by listing any known issues with Packet Tracer related to this lab. In this case, the issues are:

# Summary Detail
1 CPT does not support the show vlans command on routers. The best command to view the results of ROAS config on routers is the show vlans command. As of our most recent testing (V8.2), CPT does not support this command on routers.


Why Would Cisco Packet Tracer Have Issues?

(Note: The below text is the same in every Config Lab.)

Cisco Packet Tracer (CPT) simulates Cisco routers and switches. However, CPT does not run the same software that runs in real Cisco routers and switches. Instead, developers wrote CPT to predict the output a real router or switch would display given the same topology and configuration – but without performing all the same tasks, an actual device has to do. On a positive note, CPT requires far less CPU and RAM than a lab full of devices so that you can run CPT on your computer as an app. In addition, simulators like CPT help you learn about the Cisco router/switch user interface – the Command Line Interface (CLI) – without having to own real devices.

CPT can have issues compared to real devices because CPT does not run the same software as Cisco devices. CPT does not support all commands or parameters of a command. CPT may supply output from a command that differs in some ways from what an actual device would give. Those differences can be a problem for anyone learning networking technology because you may not have experience with that technology on real gear – so you may not notice the differences. So this section lists differences and issues that we have seen when using CPT to do this lab.

Beyond comparing your answers to this lab’s Answers post, you can test in Cisco Packet Tracer (CPT) or Cisco Modeling Labs (CML). In fact, you can and should explore the lab once configured. For this lab, once you have completed the configuration, try these verification steps. 

  1. From each of the PCs, attempt to ping the other PCs.
  2. To verify the configuration on R1 you could either check the configuration directly with the show running-config command or by displaying the current ROAS configuration on the device by using the show vlans command.

More Labs with Related Content!

Config Lab: IPv4 Static Routes 3
Config Lab: Layer 3 Switching 1
Notify of

Newest Most Voted
Inline Feedbacks
View all comments

For the SW1 config solution the trunk should be on interface GigabitEthernet1/1/1 (currently it says interface GigabitEthernet1/0).

Punya Athma

Hi, Wendell,

Good day,

In the above topology diagram,
SW1, GigEth interfaces are marked as, 1/0/1, 1/0/2, and 1/0/3.
But in the above Example2: SW1 Config, these same interfaces, perhaps, marked as, GigEth 0/1, 0/2, and, 0/3 respectively.

This creates a doubt, is this, a print error or not?


Hi Punya (and Emil),
Yep, there were errors, just fixed. The older version of this lab used other interface IDs, and looks like we failed to update the example text for the newer interface ID convention when we updated the .pkt and CML files. Thanks for letting me know. Should be good now.


hello Mr Odom
can we use the switchport mode dynamic desirable between a switch and a router???
and please can you give me an example on how to configure the physical interface, (not on the subinterface) in a router to consider this physical interface to be using the native VLAN.


1) Nope. The routers do not support dynamic negotiation of trunking. The switch needs “switchport mode trunk” instead when connected to a router.
2) It’s easy, because it looks just like there’s no trunking. Seriously.
interface gigabitEthernet 0/0
ip address

That’s it, not mention of VLAN ID, of trunking, etc. The router does not tag frames for the interface. Then subinterfaces configure the other VLANs and the associated interfaces. Check out Chapter 17 of the CCNA 200-301 OCG Volume 1 for details.

John Rambo


Thank you for the pkt lab.

Should the interface G0/1 on the router be configured with the command ‘no ip address’ before configuring the sub interfaces


Hi John,
You could if you want to ensure there’s no IP address configured there. The starting point of this lab showed no IP address on the physical interface, so the lab doesn’t need one. As long as you understand the physical interface should not have an IP address configured on it, you’re good.


in example 17-2 of the book there is an option to put the native vlan ip address on the physical interface. so for gi0/1 you could put ip address if there was NO requirement for the lab to use ONLY subinterfaces. Am i correct?

Last edited 5 months ago by lefty
John Rambo

Hello grendal,

Thank you for the lab. Mai ask please why the keyword native added in’ encapsulation dot1Q 1 native’ i thought the keyword native is only appended to set the native VLAN to something other than VLAN 1.

However, the native VLAN is 1 in this case?

Thank you


Hi John,
To configure a router to associate the native VLAN with a subinterface, rather than the physical interface, that’s when you use the “native” keyword. VLAN 1 is the default native VLAN. But it’s really just a matter of what Cisco chose when they made up the commands.


Hi I achieved the correct config but used g0/1 w/ instead of using the subinterface as shown in the answer and I still achieved connectivity between all devices.

Ermundo Russell

Hey Wendell,

The switchport trunk encapsulation dot1q command is rejected at the interface configuration mode level in CPT. I have seen this throughout my studies with the labs using CPT. Current version I am using is Version This can indeed be confusing for newer users as they understand the command is essential to support 802.1q trunking. I do see your note about newer switches only supporting 802.1q standard versus older ones that support ISL as well but I don’t see a note in the “known packet tracer issues” tab regarding the rejection of this command. Just FYI and thanks a bunch.


With the show vlans command on R1 doesn’t show the vlans configured and trucking on the results


Hi Wendell,
I did this lab on PT, also adding the allowed VLANs on SW1. Is that also okay? I suppose the difference is that, without adding the VLANs, all VLANs are allowed by default?

Contact Us

We're not around right now. But you can send us an email and we'll get back to you, asap.

Would love your thoughts, please comment.x