10
10
10
Protocols:
Unicast = (0x0f)
CDP = (0x2000)
IPv4 = (0x0800)
IPv6 = (0x86dd)
PPP Advantages
- Multiple Vendors
- Multiple Protocols simultaneously (IPv4, IPv6)
- Authentication and multilink (present multiple interfaces (physical interfaces)
as a single link to higher protocols (IPv4 would think it is a single link))
PPP Authentication
- Layer 2 similar to HDLC
1) PAP Password Authentication Protocol (clear text)
2) CHAP Challenge Handshake Authentication Protocol (MD5 Hash)
PPP Protocols
1) LCP Link Control Protocol
- Manages features (authentications, multilink)
2) NCP Network Control Protocol
> Allow multiple higher layer protocols to traverse single link by using NCP
> NCP for IPv4 = IPCP
> NCP for CDP = CDPCP
> NCP for IPv6 = IPv6CP
- Therefore, to use both IPv4 and IPv6, PPP would need to use both IPCP and IPv6CP
**Again PPP is Layer 2 Protocol, therefore in order to support Layer 3 IPv4 and
IPv6, must use a single leased line with the help of IPCP and IPv6CP
PPP PAP
- Requires ONLY password
- Cleartext Password
- Remote peer is in control of authentication attempt (no protection from repeated
attempts)
- router's running config (local database) stores the usernames/passwords
==TLDR==
R1 <- R2
**[id] is kept
--1) [01][id][random][R2]--
R1 -> R2
--2) [02][id][MD5#][R1]--
Multilink PPP
- Makes 2 or more serial links appear as a single physical link
- If one of the links go down, multilink will still be up. If all links go down,
then multilink goes down
- Accomplished via "Virtual Multilink Interface" by fragmenting packets across both
links
ex. PC1 -> R1 s0/0 & s0/1 R2 -> PC2, R1 will fragment a packet onto the 2 links,
then R2 will join them back again to continue transmission to PC2 - PC2 would not
know fragment took place
- Multilink used to be used on single physical links, because it provides
fragmentation
- Wireshark will show errors about fragments (if 2 or more links), but it will fail
checksum. However, when all links are disabled down to 1 link, then there will be
no error, because on a single link, no fragmentation will take place
- Fragmentation/Reassemble is based on "Sequence number" in the Multilink Protocol
iBGP vs eBGP
- iBGP - inside same AS but still routers on the internet
- iBGP - advertise itself with Loopack
- eBGP - different AS
- eBGP - advertise itself with the physical connected interface
==Configure iBGP==
**BGP relationship is not automatic, manual configuration is required on both
routers
> R1
**Just because BGP is setup, does not mean routes are automatically advertised, it
must be redistribute it or manually advertise
**Router ID is its loopback address (automatically)
*Use loopbacks for Router IP Address
*If "State" is blank, it is running (misleading)
*Same AS
*Even thought, same AS, still use remote-as
R1 17.17.17.1/32 loopback <-> R2 17.17.17.2/32 loopback
R1(config)#router bgp 17
R1(config-router)#neighbor 17.17.17.2 remote-as 17
R1(config-router)#neighbor 17.17.17.2 update-source loopback 0 [when R1 wants to
send to 17.17.17.2, it uses its loopback 0 as the source - this way, 17.17.17.2
expects R1's loopback address to send traffic to 17.17.17.2 and not a random
interface]
> OSPF is used for internal routers, they must be enabled
R1(config-router)#router ospf 1
R1(config-router)#network 0.0.0.0 255.255.255.255 area 0
> If want to advertise a specific ospf network (i.e. 8.1.2.1), then... R1(config-
router)#network 8.1.2.1 0.0.0.0 area 0
> R2, does not want to advertise itself to the internet, hence only 17.0.0.0 was
used
R2(config)#router ospf 1
R2(config-router)#network 17.0.0.0 0.255.255.255 area 0
R2(config-router)#router bgp 17
R2(config-router)#neighbor 17.17.17.1 remote-as 17
R2(config-router)#neighbor 17.17.17.1 update-source loopback 0
==Advertise routes in BGP (redistribute - basically... advertising all of your
routes)==
R1(config-router)#network 17.1.1.0 mask 255.255.255.0
R2(config-router)#network 17.17.17.0 mask 255.255.255.255
R2(config-router)#network 17.17.17.2 mask 255.255.255.255
==Configure eBGP==
**Notice, no "update-source" is needed on eBGP
> R1 <-> R2 s2/0 8.1.1.1/30 (AS17) <-> R3 8.1.1.2/30 s2/0 (AS8)
> R2
R2(config)#router bgp 17
R2(config-router)#neighbor 8.1.1.2 remote-as 8
**R2 needs to advertise this network, otherwise R1 will not know how to get to R3
R2(config-router)#network 8.1.1.0 mask 255.255.255.252
> R3
R3(config)#router bgp 8
R3(config-router)#neighbor 8.1.1.1 remote-as 17
R3(config-router)#network 8.1.1.0 mask 255.255.255.252 [Optional]
***BGP - TLDR***
*Internal BGP, not on CCNA exam
1) Both Internal and External BGP
- Uses remote-as "neighbor y.y.y.y remote-as 17"
- Advertise its networks in exact subnet mask
- When selecting router bgp XX, XX refers to its own bgp
2) Internal BGP - in addition to (1)
- uses OSPF/routing protocols interfaces connecting 2 internal routers
- uses Loopback as its source "neighbor x.x.x.x update-source loopback 0"
3) Administrative Distances
eBGP - 20
iBGP - 200
4) eBGP, iBGP
- eBGP runs outside of AS (different AS #)
- iBGP runs within AS (same AS #)
5) Quick ex. R3 15.1.1.1 /24 <-> R4 15.1.1.2 /24
R3(config)# router bgp 65002
R3(config-router)#neighbor 15.1.1.2 remote-as 65002
R3(config-router)#network 15.1.1.0 mask 255.255.255.0
R4(config)# router bgp 65002
R4(config-router)#neighbor 15.1.1.1 remote-as 65002
MPLS Terminology
- LSR Label Switch Router
> EdgeDevice1 -> R1 -> R2 -> R3 -> R4 -> EdgeDevice2
R2, R3 = Provider Routers
R1, R4 = Provider Edge Routers (Connected to Provider and to Customers)
R1, R4 = Intermediate LSR
ED1, ED2 = Customer Edge Routers (VRF Virtual, Routing, and Forwarding - indicates
Customer Virtual Network)
R1 = Ingress LSR a.k.a Edge LSR (Inserts a "Label" between Layer 2 Header and Layer
3 Header)
R4 = Egress LSR
MPLS Labels
- 32bit header inserted between Layer 2 and 3 Header
[20bit Label][3bit Experimental Field (QoS)][1bit Bottom-of-Stack indicator
(Outer/Inner Label)][3bit Time-to-live (Stop Loops)]
OSPFv3
- 128bit IPv6 Addresses Compatible
- OSPFv3 vs OSPFv2 are independent of each other
-
==Show OSPFv3==
R1#show ipv6 ospf database
R1#show ipv6 ospf int
R1#show ipv6 ospf neighbor
R1#show ipv6 protocols
R1#show ipv6 router
==Ping IPv6==
**Both works
R1#ping ipv6 2001:FACE:1::1
R1#ping 2001:FACE:1::1
==Configure OSPFv3==
[Area 1: R1 G0/0 <-> G0/0 R2]<->[Area 0: R2 G0/1 <-> G0/0 R3]<->[Area 2: R3 G0/1 <-
> R4 G0/0]
> R1 Initial Setup
R1(config)#int loop 0
R1(config-if)#ipv6 address 2001:FACE:1::1/64
R1(config-if)#int g0/0
R1(config-if)#ipv6 address 2001:1::1/64
R1(config-if)#no shut
R1(config-if)#end
> Enable IPv6 routing
R1(config)#ipv6 unicast-routing
R1(config)#ipv6 router ospf 1 (**Remember, this is arbitrary, other routers do not
need to use the same number!)
R1(config-rtr)#router-id 1.1.1.1
R1(config-rtr)#end
> Go into each individual interface to enable OSPFv3
R1(config)#int loop 0
R1(config-if)#ipv6 ospf 1 area 1
R1(config-if)#int g0/0
R1(config-if)#ipv6 ospf 1 area 1
> R2 Initial Setup
R2(config)#int loop 0
R2(config-if)#ipv6 address 2001:FACE:2::1/64
R2(config-if)#int g0/0
R2(config-if)#ipv6 address 2001:1::2/64
R2(config-if)#no shut
R2(config-if)#int g0/1
R2(config-if)#ipv6 address 2001:2::2/64
R2(config-if)#no shut
R2(config-if)#end
> Enable IPv6 routing
R2(config)#ipv6 unicast-routing
R2(config)#ipv6 router ospf 1
R2(config-rtr)#router-id 2.2.2.2
R2(config-rtr)#end
> Go into each individual interface to enable OSPFv3
R2(config)#int loop 0
R2(config-if)#ipv6 ospf 1 area 1
R2(config-if)#int g0/0
R2(config-if)#ipv6 ospf 1 area 1
R2(config-if)#int g0/1
R2(config-if)#ipv6 ospf 1 area 0
> R3
R3(config)#int loop 0
R3(config-if)#ipv6 address 2001:FACE:3::1
R3(config-if)#int g0/0
R3(config-if)#2001:2::3/64
R3(config-if)#no shut
R3(config-if)#int g0/1
R3(config-if)#2001:3::1/64
R3(config-if)#no shut
R3(config-if)#end
R3(config)#ipv6 unicast-routing
R3(config-rtr)#ipv6 routing ospf 1
R3(config-rtr)#route-id 3.3.3.3
R3(config-rtr)#int loop 0
R3(config-if)#ipv6 ospf 1 area 2
R3(config-if)#int g0/0
R3(config-if)#ipv6 ospf 1 area 0
R3(config-if)#int g0/0
R3(config-if)#ipv6 ospf 1 area 2
> R4
R4(config)#int loop 0
R4(config-if)#ipv6 address 2001:FACE:4::1/64
R4(config-if)#int g0/0
R4(config-if)#ipv6 address 2001:3::2/64
R4(config-if)#no shut
R4(config-if)#end
R4(config)#ipv6 unicast-routing
R4(config-rtr)#ipv6 routing ospf 1
R4(config-rtr)#router-id 4.4.4.4
R4(config-rtr)#int loop 0
R4(config-if)#ipv6 ospf 1 area 2
R4(config-if)#int g0/0
R4(config-if)#ipv6 ospf 1 area 2
IPv6 EIGRP
- Advanced Distance Vector routing protocol (Link State)
- [Diff] To form neighbor relationships, uses Link-local addresses, no longer uses
neighbor's IP address
- [Diff] To enable EIGRP on an interface, you must now specify it on the interface.
Network command no longer used
- [Same] Use "Dual Algorithm" for best path to destination network
- [Same] Use RTP Reliable Transport Protocol to send updates/acknowledgements
- [Same] Use Multicast FF02::A (10) == 224.0.0.10 for updates - No longer Broadcast
- [Same] Support both equal and unequal cost load balancing - topology and neighbor
tables are both created
==Show commands==
> Check eigrp is enabled on interfaces
R1#show ipv6 eigrp int
R1#show ipv6 eigrp neigh
R1#show ipv6 route eigrp