7
7
ACL Process
**ACL goes through a sequential list (permit, deny)
**Must have at least one permit statement, otherwise might as well unplug the cable
1) No ACL permit match? Goes to next line in the sequential list
- If next line, ACL permits? Permit, process stops
- If next line, ACL does not permit? Deny, process stops
2) If no ACL permit match by the end of the sequential list? Implicit deny, process
stops
Inbound ACL:
- ACL determines whether to allow/deny traffic before it hits router
1) ACL -> 2) Router
Outbound ACL:
1) Router -> 2) ACL
**It is more efficient to bind an ACL for inbound traffic
ACL uses:
1) IPSec tunneling - ACL determines which routes need to be encrypted
2) Redistribute routing protocols - ACL determines which routing protocols such as
EIGRP needs to be redistributed to EIGRP. Not all EIGRP needs to be redistributed,
therefore ACL can control which ones need to be redistributed
3) NAT - ACL controls which set of routes need to be translated
Standard ACL
- Checks source IP Address ONLY
- Permits or denies entire protocol suite
- Numbered 1-99, 1300-1999
- Names (you specify)
*Remark = ACL description in IOS
Extended ACL
- Checks source IP Address and Destination IP Address
- Permits or denies individual protocols, applications, ports, etc...
- Numbered 100-199, 2000-2699
- Names (you specify)
**Remember, an access list has to bind in order for it to be active. You can create
all the access list you want, but if you don't activate it, then you might as well
delete it
**Also, non-existent access list can be bind to interfaces - bad practice, do not
to have access list bind if the access list does not exist
**Order of processing is important. ACL is top-down process
ex. (b) would not be evaluated
a) access-list 1 permit all
b) access-list 1 deny host 10.1.1.1
**Standard ACL: Placement of ACLs closest to destination - prevent any unwanted
deny because it only accounts for source IP
**Extended ACL: Placement of ACLs closest to source - does not matter because it
accounts for both source and destination IP along with its with protocols
==Standard ACL==========================================
10.1.1.1 + 10.1.1.2 <-> f0/0 R1 f0/1 <-> 10.1.2.1 server
R1#conf t
R1(config)#access-list 4 permit 10.1.1.1 0.0.0.0
R1(config)#int f0/1
R1(config-if)#ip access-group 4 out
==Standard ACL==========================================
10.1.1.1 <-> f0/0 R1 f0/1 <-> 10.1.2.1 server
==Standard ACL==========================================
10.1.1.1 <-> f0/0 R1 f0/1 <-> 10.1.2.1 server
R1#conf t
R1(config)#access-list 6 permit 10.1.1.1
R1(config)#line vty 0 4
R1(config-line)#access-class 6 in
==Extended ACL==========================================
10.1.1.1 <-> f0/0 R1 s0/0 <-> s0/0 R2 f0/0 <-> 10.1.2.1 server
R1#conf t
R1(config)#access-list 100 permit tcp 10.1.1.1 0.0.0.0 host 10.1.2.1 eq 80 (or www)
R1(config)#access-list 100 deny ip 10.1.1.0 0.0.0.255 host 10.1.2.1
R1(config)#access-list 100 permit ip 10.1.1.0 0.0.0.255 any
R1(config)#int f0/0
R1(config-if)#ip access-group 100 in
==Extended ACL==========================================
10.1.1.1 <-> f0/0 R1 s0/0 <-> s0/0 R2 f0/0 <-> 10.1.2.1 server
Permit http and tftp traffic from subnet 10.1.1.0/24 to server 10.1.2.1
Deny all other traffic from subnet 10.1.1.0/24 to server 10.1.2.1
Permit all other traffic from subnet anywhere else
R1#conf t
R1(config)#access-list 101 permit tcp 10.1.1.0 0.0.0.255 host 10.1.2.1 eq 80
R1(config)#access-list 101 permit udp 10.1.1.0 0.0.0.255 host 10.1.2.1 eq 69
OR
R1(config)#access-list 101 permit udp 10.1.1.0 0.0.0.255 10.1.2.1 0.0.0.0 eq 69
R1(config)#access-list 101 deny ip 10.1.1.0 0.0.0.255 host 10.1.2.1
OR
R1(config)#access-list 101 deny ip 10.1.1.0 0.0.0.255 10.1.2.1 0.0.0.0
R1(config)#access-list 101 permit ip 10.1.1.0 0.0.0.255 any
R1(config)#int f0/0
R1(config-if)#ip access-group 101 in
==Extended ACL==========================================
10.1.1.1 <-> f0/0 R1 s0/0 <-> s0/0 R2 f0/0 <-> 10.1.2.1 server
===================================================
**Static and Dynamic NAT is not good for when your network has 100 devices. This is
when NAT Overloading is beneficial
**PAT Port Address Translation is able to differentiate the sessions based on Port
Number, hence the term Port Address Translation
**In previous examples, we NAT to the Router's IP address, we will now NAT to a
Public IP address
**TDLR: Static NAT, Dynamic NAT = everytime a device wants to send data out, it
will need a public IP address
**TDLR: Therefore, PAT is more useful because it is NAT overloading and uses 1
public IP address with different ports (hence, 'Port Address' translation) for each
private IP device
__________________________________________________________
Router1> en
Router1# conf t
Enter configuration commands, one per line. End with CNTL/Z.
Router1(config)# ip nat inside source static 10.1.1.1 192.168.1.2
Router1(config)# int s0/0
Router1(config-if)# ip nat outside
Router1(config-if)# int f0/0
Router1(config-if)# ip nat inside
Create NAT translation on the router for the server. The inside global address is
1.2.3.4
Configure the Serial interface as the outside interface
Configure the Fast Ethernet interface as the inside interface
Router1> en
Router1# conf t
Enter configuration commands, one per line. End with CNTL/Z.
Router1(config)# ip nat inside source static 10.1.1.1 1.2.3.4
Router1(config)# int s0/0
Router1(config-if)# ip nat outside
Router1(config-if)# int f0/0
Router1(config-if)# ip nat inside
Step 1: Create a nat pool with the name "natpool" with address range: 192.168.1.1
to 192.168.1.10 and netmask 255.255.255.240
Step 2: Bind access list 1 to the nat pool
Step3: Create access list 1 and permit network 10.1.1.0/24
Step 4: Configure interface Serial 0/0 as the outside interface
Step 5: Configure interface FastEthernet 0/0 as the inside interface
Router1> en
Router1# conf t
Enter configuration commands, one per line. End with CNTL/Z.
Router1(config)# ip nat pool natpool 192.168.1.1 192.168.1.10 netmask
255.255.255.240
Router1(config)# ip nat inside source list 1 pool natpool
Router1(config)# access-list 1 permit 10.1.1.0 0.0.0.255
Router1(config)# int s0/0
Router1(config-if)# ip nat outside
Router1(config-if)# int f0/0
Router1(config-if)# ip nat inside
Router1> en
Router1# conf t
Enter configuration commands, one per line. End with CNTL/Z.
Router1(config)# ip nat inside source list 1 interface serial 0/0 overload
Router1(config)# access-list 1 permit 10.1.1.0 0.0.0.255
Router1(config)# int s0/0
Router1(config-if)# ip nat outside
Router1(config-if)# int f0/0
Router1(config-if)# ip nat inside
__________________________________________________________
Converged Networks
- Single Network for Voice, Data and Video (before it was all on different
networks)
QOS requirements
Voice/Video latency <= 150ms
Jitter <= 30ms
Loss <= 1%
Video bandwidth +20% (ex. 384kbps + 20% requires 460kbps)
Implement QOS
1) CLI - no templates
2) Modular QoS CLI (MQC) - can create templates
3) AutoQoS - can create templates
3a) AutoQoS VoIP (voice ONLY)
- DOES NOT looks at traffic
- Router & Switches
3b) AutoQoS Enterprise (voice, video and data)
- looks at traffic and also offer suggestions
- Routers ONLY
4) QoS Policy Manager (QPM)
- Centralized QoS Management platform, enables network wide QoS
3 models of QoS
1) Best effort
- no QoS is applied to packets
- does scale, no gurantee delivery
2) IntServ
- applications signal to network that they require special QoS
- does not scale, gurantee delivery (ex. "you bought First Class ticket, you will
be guranteed a seat in First Class")
3) DiffServ
- disregard application, network recognize classes that require special QoS
- does scale, no gurantee delivery (ex. "just because you want to be treated like
First Class, does not gurantee you will be treated like First Class")
**Real world, IntServ (mission-control) and DiffServ (QoS) work together
**Real world, Best Effort is used on the Internet
**IP Phones use the enhanced LLDP MED (Media Endpoint Discovery) instead of the
standard LLDP
==[Recommended - Multiple VLAN Access Ports] Configure Data and Voice VLAN==
> PC (VLAN 2) -> IP Phone (VLAN 2) -> Switch
**PC is also on VLAN 2 because it is one access port
**Learned from previous lecture, Access Port only belongs to a single VLAN, this is
not actually true
**This method uses 802.1p between switch and IP Phone, prioritizing voice traffic
(CoS Class of Service field of 5) allowing high priority than data traffic
**Advantages?
- Multi-VLAN access port is secured
- Voice VLAN ID can be discovered using CDP/LLDP-MED
- Scalable (allocate seperate subnet for PC and Phone)
- Easier to implement QoS, ACLs, security
- Minimize cabling - using a single port for both PC with IP Phone
uc500#conf t
uc500(config)#vlan 2
uc500(config-vlan)#name VV
uc500(config-vlan)#int range f0/1/1-3
uc500(config-if-range)#switchport mode access
uc500(config-if-range)#switchport voice vlan dot1p
uc500(config-if-range)#switchport access vlan 2
802.1Q Frame
(Dest)(Src)(Tag)(Len/Etype)(Data)(FCS)
- Inserts a tag (TPID, PRI, CFI, VLAN ID)
> PRI field is XXX (0,1), higher the value, the more priority.
**Voice has PRI # of 101 = 5
**Voice has VLAN ID of 0 (even though it is VLAN 2)
SCCP TLDR
- Whatever phone wants to do, SCCP will say do it
1) Phone -> SCCP, SCCP says sure, do that
2) SCCP -> Phone will do
~RTP stream is direct between 2 phones (bypass CUCM)
uc500
- It is a router, switch, firewall, voice mail system in a single device
uc500 commands
uc500#show version
uc500#show voice port sum
=======================IP Phone - End=======================
EIGRP Enhanced Interior Gateway Routing Protocol
**Best route based on: Bandwidth, Load, Delay, Reliability
- Used for exchanging routes between routers
- Cisco Proprietary (industry standard: OSPF)
- Classless (subnet mask included with route)
- Support discontiguous networks, auto-summarization is enabled by default
- Above Layer 3 (Network) port 88
- Uses RTP Reliable Transport Protocol because below TCP/UDP layer 4 (NOT Realtime
Transport Protocol in VoIP)
- Advanced distance vector protocol
- Uses link-local multicast 224.0.0.10, unicast, not broadcast (IGRP uses
broadcast)
- Features Hybrid: Takes best principals from (Link State Routing Protocol and
Distance Vector Routing Protocol)
- Features 100% loop free classless routing - DUAL Diffusing Update Algorithm (OSPF
uses SPF algorithm)
- Features Partial updates send to pre-existing neighbours and Full updates on new
neighbours (RIP sends entire routing table every 30seconds, OSPF database
synchronization every 30 minutes)
- Features load balancing across equal and unequal cost paths (10packets in 10mbs
link and 2packets in 2mbs link) - can use lower speed links
- Features Rapid Convergence - backup routes (Feasible Successors) are pre-
calculated
> Back-up routes is immediately installed in routing table when best route
(Successor) is lost
> In RIP, when the best route is lost, back-up routes are calculated then, whereas
EIGRP, routes are pre-calculated
EIGRP K values
**K valuve used to determine best path and route to destination
- Values from 0 - 255
K1 = Bandwidth modifier
K2 = Load modifier
K3 = Delay modifier
K4 = Reliability modifier
K5 = Additional Reliability modifier
EIGRP Metrics
**Metrics weights must match
K Values are not metrics themselves, 0-255
- 6 K values in total, but the below 4 are used in vector computing
K1 = Bandwidth (default = 1)
> slowest bandwidth between source and destination
K2 = Load (0) [by default, not used]
K3 = Delay (1)
> 10s of ms, cumulative interface delay from your router to destination network
K4 = Reliability (0) [by default, not used]
~K5 = Additional Reliability modifier (0)
- Last 2: MTU Maximum Transmission Unit, Hop count
**Load and Reliability, if not used is in EIGRP because it was originally used by
IGRP and was kept during migration
***Composite Metric Formula = Final Value of all K values
***Metric = 256 * (bandwidth + delay)
Metric = 256 * (bandwidth of slowest link + sum of delays) since all other values
are 0 or not used
MTU
- Maximum amount of data that you can insert in a single packet over a physical
medium
- MTU is exchanged in EIGRP packets
- Used as a tie breaker between 2 equal paths, those with the lowest MTU is not
used, only for INBOUND updates
Hop count
- Maximum 255 or 224
- Used to limit EIGRP AS to 255 or 224 hops
EIGRP TLDR
1) EIGRP routers send "hello" by default on multicast 224.0.0.10
2) EIGRP routers listens for "hello" on interfaces with EIGRP enabled
3) Once received "hello", those neighbours are added to EIGRP neighbor tables
4) EIGRP table is populated from its learned EIGRP neighbours along with its
interface
5) EIGRP Topology table contains not only the best routes, but all the routes
learned (successor routes, fessible routes, distances)
6) EIGRP will use composite metric to determine the best routes, and put those best
routes in the EIGRP routing table (successor routes)
==Show EIGRP==
R1#show ip prot
R1#show ip eigrip topology x.x.x.x 255.255.255.255
==Setup EIGRP==
> Do this on both routers, then it will connect R1 <-> R2
R1#conf t
R1(config)#router eigrp 100 (this is the AS)
R1(config-router)#network 10.0.0.0
[Optional] R1(config-router)#metric weights 0 1 0 1 0 0 (K0 K1 K2 K3 K4 K5)
R2#conf t
R2(config)#router eigrp 100 (this is the AS)
R2(config-router)#network 10.0.0.0
[Optional - enable EIGRP on all interfaces] R2(config-router)#network 0.0.0.0
255.255.255.255
==Change Bandwidth/Delay==
R1(config)#int s0/1
R1(config-if)#bandwidth 64
R1(config-if)#delay 1000
==Show EIGRP==
> Shows the neighboring device wtih EIGRP enabled along with its interface
R1#show ip eigrp neigh
> Shows the topology
R1#show ip eigrp topology
**P 2.0.0.0 .......... FD is 40640000
....................... <40640000/128256>, Serial 1/0
> To get to 2.0.0.0, Feasible Distance is the total cost to get to that route is
40640000
> Advertise distance: 128256 (from Router 2 to Router 1)
> Total cost (feasible distance) = Advertise distance + cost of the link