In this post I will discuss Vlan access control lists (VACL), also called VLAN access Map or VLAN Map. A VLAN Access-map allows us to filter incoming and outgoing traffic in a switch Vlan. VLAN access-map configuration is very similar to the Route-map configuration.
A Vlan access-map is placed on the whole Vlan, which means that the incoming and outgoing traffic in a Vlan are filterd by the VLan access-map. We can apply a VLAN access-map to a Layer3 access-list and also to a mac access-list.
We know that the usual access control list (ACL), which is the most well known concept, has an implied DENY IP ANY ANY at the end. Of course, a VACL has the same implied deny statement, but this is not recommended, as we will see next.
Because a normal ACL checks only Layer 3 packet traffic, therefore it doesn’t block Layer 2 protocols like STP, VTP, ARP etc. On the other hand, a VLAN access-map blocks L2 protocols (in addition to Layer3), if we don’t explicitly allow them. That’s why it’s recommended to have an implicit deny all at the end.
Looking now at the details, let’s consider the following example: we have two Routers R1 and R2 which are in the same VLAN (Broadcast Domain) and they are connected to each other via a switch as shown below. Let’s block only Telnet protocol from R1 and permit all the rest.

Before starting configuration, let’s check if telnet works from R1.
R1#telnet 192.168.10.2
Trying 192.168.10.2 … Open
User Access Verification
Password:
R1#quit
[Connection to 192.168.10.2 closed by foreign host]
R1#
As we see, telnet is working, so now let’s start the VLAN access-map configuration which will block telnet and permit everything else.
!Create access-list, by which interesting traffic will be matched. As I’ve already said, the principle of VLAN access-map config is similar to the route-map working principle. Later we snap this access-list to a VLAN access-map.
switch(config)#ip access-list extended restrict_telnet_R2
switch(config-ext-nacl)#permit tcp host 192.168.10.1 host 192.168.10.2 eq 23
After this we’ll create a vlan access-map, which has two main parameters: action and match.
Match: by this parameter the interesting traffic is matched and here RACL or MAC ACL can be applied as well.
Action: what to do with matched traffic. Two main parameters exist: Drop and Forward. In case of Drop, matched traffic will be dropped, and in case of forward, matched traffic will be allowed. Also, on High-End devices, a Redirect and Capture parameters also exist in the Action statement.
In our case we must block matched traffic and permit all the rest.
switch(config-ext-nacl)#vlan access-map VACL 10
switch(config-access-map)#action drop
switch(config-access-map)#match ip address restrict_telnet_R2
switch(config-access-map)#vlan access-map VACL 20
switch(config-access-map)#action forward
switch(config-access-map)#exit
After creating the VLAN access-map, it should be applied to a VLAN or VLANs. In this case we’ll apply it to VLAN 10 which is specified by “vlan-list 10”.
switch(config)#vlan filter VACL vlan-list 10
By this configuration is completed. Let’s see if telnet is blocked and ping works.
R1#ping 192.168.10.2
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.10.2, timeout is 2 seconds:
!!!!!
R1#telnet 192.168.10.2
Trying 192.168.10.2 …
% Connection timed out; remote host not responding
As we see, ping is okay from R1 and telnet is blocked as we planned.
The picture on the left illustrates the Cisco Certification Pyramid. If you are familiar with the pyramids of Egypt, you must know by now that they have stood the test of time, withstanding harsh climate conditions for thousands of years. When we are looking at a pyramid, instinctively we look at the tip first, and then our eyes move down to the base. The same happens with the Cisco certification pyramid. The Architect and Expert certifications are looked at with amazement, and every network engineer’s wish is to obtain one of these prestigious qualifications. However, the base of the pyramid is what makes it strong and robust. Therefore, in my opinion the most important Cisco certifications are the ones you see on the base, that is the entry level and associate level (I.e CCNA) certifications.
So, if you really want to be a successful CCIE or Architect, you must become a successful CCNA and CCNP first. If you become master in CCNA and CCNP certifications, it is a sure fire way to become a successful CCIE, and hence a successful high-level professional.
Indeed, the reasons that the pyramids of Egypt are so strong and the reason they have lasted for thousands of years, is that their foundation (base) is so strong. The same analogy can be drawn for Cisco career certifications. If you built a strong foundation (CCNA, CCNP), then the skills that you will acquire from these levels will follow you and support your whole future career. Therefore, becoming a CCIE depends on how strong your knowledge base is. Indeed, your CCNA studies are the most important studies of your career as a network engineer. If you don’t master basic concepts, such as subnetting, IP addressing, basic routing and switching functionality, binary math, routing protocols functionality and so on, how do you think you will become a successful CCIE? So, keep this in mind: When you’re studying for your CCNA, you’re not just studying for a certification exam – you’re building the foundation for the rest of your Cisco certifications and the rest of your career.
So, take your CCNA studies seriously, learn as much material and theory as you can absorb, and you will not be disappointed. My 15 years in the field of networking have taught me that .
This is a question that I get from time to time in my work environment either from colleagues or customers. I will show you a couple of ways to do this.
In ASA, for traffic to pass through interfaces, several conditions must be met. Since we are talking here for inside and outside interfaces, this means from higher security level (inside) to lower security level (outside). The most important conditions to examine here is the NAT (if used) and the access control list. Lets see more details below:
Traffic from inside to outside using NAT
This is the most common scenario. NAT is most commonly used in real networks to hide the internal network range and to translate the non-routable private addresses (internal network) to publicly routable IP addresses on the outside.
We can have two types of NAT:
- Dynamic NAT (with Port Address Translation – PAT being a subcategory of this)
- Static NAT (internal addresses are permanently mapped to external public addresses)
Here we will examine the most common scenario which is PAT. This is a many-to-one translation which allows us to translate all internal IP addresses into a single public IP address which is assigned to us by the ISP and exists on the outside of the ASA. For ASA to keep track of all these many-to-one translations, it uses port numbers. A different port number (out of the range of 65000) is assigned to a different internal IP address.
Lets see the configuration for allowing all traffic from inside to outside using PAT:
Assume the following:
inside LAN range: 192.168.1.0/24
Public IP addresses available: 100.100.100.1 – 100.100.100.32
ASA outside interface IP address: 100.100.100.1
Option1:
Using the ASA interface IP (100.100.100.1) to translate all internal addresses:
ciscoasa(config)# nat (inside) 1 192.168.1.0 255.255.255.0
ciscoasa(config)# global (outside) 1 interface
Commands for ASA version 8.3 and later:
ciscoasa(config)# object network internal_lan
ciscoasa(config-network-object)# subnet 192.168.1.0 255.255.255.0
ciscoasa(config-network-object)# nat (inside,outside) dynamic interface
Option2:
Using one of the other available public IP addresses for translation:
ciscoasa(config)# nat (inside) 1 192.168.1.0 255.255.255.0
ciscoasa(config)# global (outside) 1 100.100.100.2 netmask 255.255.255.255
Commands for ASA version 8.3 and later:
ciscoasa(config)# object network internal_lan
ciscoasa(config-network-object)# subnet 192.168.1.0 255.255.255.0
ciscoasa(config-network-object)# nat (inside,outside) dynamic 100.100.100.2
After taking care of the NAT commands, we need to see our access-list commands. By default, if you don’t have an access-list applied on the inside interface, then all traffic is allowed to pass because the inside is the highest security level (100). However, if for any reason you apply an access-list to the inside interface, then you must explicitly allow all IP traffic to pass using the ACL.
ciscoasa(config)#access-list INSIDE_IN extended permit ip any any
ciscoasa(config)# access-group INSIDE_IN in interface inside
Traffic from inside to outside without NAT
There are some cases where we don’t want to have NAT between inside to outside. In this scenario, the ASA works like a router but it still applies firewall inspection to the traffic. All you have to do here is to disable NAT and then allow traffic with an ACL:
ciscoasa(config)#no nat-control
ciscoasa(config)#access-list INSIDE_IN extended permit ip any any
ciscoasa(config)# access-group INSIDE_IN in interface inside
Thats it.
One of the most important skills that a network engineer must learn and develop is troubleshooting. I have designed, configured and managed hundreds of networking projects. Its very rare to configure a network (especially complex ones) and have everything running as expected from the first shot. Most of the times a lot of troubleshooting activity needs to take place in order to bring everything up and have your network run flawlessly.
For CCNA/CCNP candidates, the troubleshooting skill is of paramount importance. In the exam, you need to analyze configurations and find what the problem and what the solution is, check debug output data to find what’s going wrong on the router or switch, and in general show your ability to troubleshoot in addition to configuring devices.
Troubleshooting, therefore is an essential skill to learn and to practice. A Cisco CCNA/CCNP engineer will need to perform a lot of it in their career. Ofcourse, if you are a newcomer in the field of networking you will not have enough time from the very beginning to develop and practice your troubleshooting skills. Also, you will not be able to “play” around on the live network of your company or of your clients in order to find out how to solve and troubleshoot problems. So my suggestion is to build a cheap home lab with 1-2 routers and a switch. The troubleshooting skills that you will acquire will be gold knowledge for your career in the future.



