642-901 BSCI-Kompendium - Andrzej Doniczka Web Site

Transkrypt

642-901 BSCI-Kompendium - Andrzej Doniczka Web Site
642-901 BSCI - Kompendium
642-901 BSCI - Building Scalable Cisco Intetworks. (1/4 CCNP)
KOMPENDIUM na podstawie CCNP BSCI Official Exam Certification Guide
Copyright by www.andrzejdoniczka.net
Gliwice, styczeń 2007
Spis Treści:
Chapter 1
Chapter 2
Chapter 3
Chapter 4
Chapter 5
Chapter 6
Chapter 7
Chapter 8
EIGRP Protocol
OSPFv2 Protocol
IS-IS Protocol
Manipulating Routing Updates
BGP4 Protocol
Multicasting IGMPv2
IPv6 Protocol
DHCP
2007 Copyright by www.andrzejdoniczka.net
str.2
str.4
str.7
str.9
str.11
str.14
str.15
str. 17
1
642-901 BSCI - Kompendium
Chapter 1 EIGRP Protocol (Cisco Proprietary, no RFC)
RTR(config)# router eigrp 65250
RTR(config-router)# network 213.227.72.0 0.0.0.255
RTR(config-if)# bandwidth 64 (kbps) (dla serial link PPP lub HDLC - bandwidth ustawiać na line
speed)
RTR(config)# ip default-network 87.204.36.0 - ogłasza w AS-ie trase domyślną (gateway of last resort
= default route)
ogłaszana sieć musi być osiągalna (za pomocą trasy statycznej albo przez redystrybucje do EIGRP)
RTR# sh ip eigrp neighbors
(adres sąsiada/int. na tym routerze przez który sąsiad jest widoczny/Hold T./
Uptime/SRTT/RTO/Queue Cnt./Seq nr)
RTR# sh ip route eigrp
(routing prot./IP/metric/via IP/time/int.)
RTR# sh ip protocols
(routing prot./in-out filters/EIGRP metric K1-K5/max hop count/variance
redistributing/max path/routing for net's/routing info sources IP/distance)
RTR# sh ip eigrp interfaces
(int. na którym jest EIGRP/Peers/X-mit queue)
RTR# sh ip eigrp topology
(stan trasy-Passive/Active/Update/Query/Reply/SIA, osiągalna sieć /FD-AD/int.)
Sumaryzacja
RTR(config-router)# no auto-summary - router EIGRP wykonuje automatyczną sumaryzację na
granicy klas
RTR(config-if)# ip summary-address eigrp 65250 172.16.0.0. 255.255.0.0 [Admin dist. 0-255]
W sieciach nieciągłych wyłączyć automatyczną sumaryzację na routerach odległych .
Load balancing
RTR(config-router)# maximum-paths (1-6, 4-default)
RTR(config-router)# variance (1-128, 1 default)
RTR(config-if)# ip bandwith-percent eigrp 65250 110
Defaultowo router EIGRP uzywa do 50% pasma na interfejsie lub subint.
Na interfejsach multipoint ustawić BW=min.CIR/ ilość VC
Uwierzytelnienie EIGRP
RTR(config-if)# ip authentication mode eigrp 65250 md5
RTR(config-if)# ip authentication key-chain eigrp 65250 dupachain
RTR(config)# key-chain dupachain
RTR(config-keychain)# key 1
RTR(config-keychain)# key-string A4b2as6
RTR(config-keychain)# accept-lifetime 20:00:00 infinite
RTR(config-keychain)# send-lifetime 20:00:00 infinite
Auth. verifying: # sh eigrp neighbors. #debug eigrp packets
RTR(config-router)# eigrp stub [receive-only|connected|static|summary] - connected/summary-default
connected - tylko jeŜeli jest ogłoszone przez #network A.B.C.D
EIGRP nie wymaga specjalnej konfiguracji dla róŜnych protokołów L2 zarówno LAN jak i WAN
uŜywa unicastów i multicastów na 224.0.0.10, wysyła triggered partial update-y
Neighbor discovery przez pakiety Hello. W warstwie 2giej uzywa protokołu RTP (guaranteed, ordered
packet delivery to neighbors)
2007 Copyright by www.andrzejdoniczka.net
2
642-901 BSCI - Kompendium
PDM-y w warstwie 3ciej
Wszystkie bezpośrednio połączone routery z którymi router ustanowił sąsiedztwo znajdują sie w
neighbor table
Successor (S)- trasa podstawowa w routing table
Feassible successors (FS) - trasy zapasowe ( 4, max 6) w topology table - tt. zawiera: Dest., FD i AD
via kaŜdy neighbor
AD - advertised distance - koszt między next-hop router a destination
FD - Feasible distance - koszt z local router do destination = local router cost + AD next hop router
NajniŜszy koszt = najniŜszy FD
Warunek wyboru FD: AD(FS) < FD(S)
Pakiety EIGRP:
Hello - neighbor discovery. Multicast bez potwierdzeń
Update - wysyłane przez RTP tylko do wybranych routerów na unicas lub multicast
Query - wysyłane do sąsiadów gdy router nie ma Ŝadnego FS-a - multicast, ale retransmitowane jako
unicast
Reply - RTP unicast
ACK - potwierdzenia update, query, reply. Unicastowe pakiety hello
Metryka EIGRP (32 bity)
Metric = (K1*BW) + [{K2*BW)/(256-LOAD)]+(K3*DELAY)
K1=K3=1, K2=K4=K5=0 - w pakietach hello
Metric = BW(najniŜsza)+DELAY(suma na trasie) - metryka trasy
DELAY = SUMA( 10 * us) *256
BW = (10E7/kbps) * 256
EIGRP metric = IGRP metric * 256
Stany tras (w topology table)
Passive (normalny stan), Active, Update, Query, Reply, Stuck-in-Active - ( czyli jest przesrane-problem
z konwergencją)
2007 Copyright by www.andrzejdoniczka.net
3
642-901 BSCI - Kompendium
Chapter 2 OSPFv2 Protocol RFC 2328 OSPFv3 (dla IPv6) RFC 2740
RTR(config)# router ospf 1
RTR(config-router)# network 213.227.72.1 0.0.0.255 area 0 - globalnie na routerze
lub
RTR(config-if)# ip ospf 1 area 3 - na interfejsie (np. int. ABR-a)
RTR(config-router)# router-id A.B.C.D - ID Routera
RTR# clear ip ospf process - restart procesu po zmianie ID-a
RTR(config-if)# ip ospf priority(0-255,1-default)
RTR# clear ip ospf process - restart procesu po zmianie priority
Warunki DR/BDR- 1.priority, 2.router ID, 3.Loopback, 4. najwyŜszy IP
RTR(config-if)# ip ospf cost (1-65535) - default int. cost 100E6/speed (bps)
RTR(config-router)# auto-cost reference-bandwidth (1-4294967)
RTR# sh ip ospf
(OSPF proces/router-ID/ ilosc obszarow na tym routerze/auth.ilosc int w obszarze)
RTR# sh ip protocols
RTR# sh ip route ospf 1 - (routing prot.,dest. IP, AD/metric, via IP,int)
RTR# sh ip ospf interface s0/1 - (IP, Area,Process,Router ID, net type,state, priority,DR/BDR,
timers,adjacent with IP)
RTR# sh ip ospf neighbor [detail] - (neighbor ID's, priority, state(init/exstart/full),DR/BDR, int)
Typ sieci OSPF w sieciach NBMA (hello 30sec/dead 120sec)
RTR(config-if)# ip ospf network [non-broadcast | point-to-multipoint| - RFC
non-brodacast - 1 podsieć IP, Neighbors-konfig ręcznie, DR/BDR wybierane, full-mesh/partial mesh)
point-to-multipoint - 1 podsieć IP, multicast OSPF hello-aut.wykrywanie sąsiadów, no DR/BDR,
partial mesh/star)
broadcast - 1 podsieć IP, Neighbors-aut., DR/BDR wybierane, full mesh/partial mesh
point to point - osobna podsieć na subinterfejsach, brak DR/BDR
point to multipoint non-broadcast - Neighbors-konfig ręcznie, brak DR/BDR
RTR(config-if)# ip ospf network [broadcast | non-broadcast | point-to multipoint [non-broadcast] |
point-to point]
RTR(config-router)# neighbor 172.16.25.10 priority 10 cost 10 - (0-defalult) cost (1-65535, int.costdef.)
RTR(config)# int serial 0/1/0.1 point-to-point - subinterfejs p2p/ osobne subnety/kaŜdy PVC na swoim
sub-int.,no DR/BDR
RTR(config)#int serial 0/1/0.1 multipoint - ten sam subnet, nonbroadcast -default, DR/BDR/, statyczne
ust. sąsiadów
RTR(config-router)#area 1 virtual-link A.B.C.D - area-obszar przejściowy, ABCD-far end router
RTR(config-router)# max-lsa 100 - overload prot.
Sumaryzacja
RTR(config-router)# area 1 range 172.16.32.0 255.255.224.0 cost 10 - konsoliduje trasy na ABR-e
RTR(config-router)# summary-address 172.16.32.0 255.255.224.0 - konsoliduje zewn. trasy na
ASBR-e
RTR(config-router)# default-information originate [always] metric 10 metric-type 1 | 2 - 2 default
(external route O *E2)
włącza ogłaszanie trasy domyślnej - pod warunkiem Ŝe router ją ma - [always] - ogłasza zawsze
2007 Copyright by www.andrzejdoniczka.net
4
642-901 BSCI - Kompendium
RTR(config-router)# area 2 stub - stub area (na wszystkich routerach w danym obszarze - łącznie a
ABR-em)
RTR(config-router)# area 2 default-cost 10 - default 1 - ustawia koszt trasy domyślnej wysylanej do
stub area
RTR(config-router)# area 2 stub no summary - totally stuby
RTR(config-router)# area 2 nssa [no-redistribution] [default-information-originate [metric 10] [metrictype 2]] [no-sumarry]
NSSA - pozwala na injekcje zewnętrznych tras w ograniczonym zakresie - NSSA ASBR tworzy LSA 7
(O N1 lub O N2)
Authentication
RTR(config-if)#ip ospf authentication-key A5k3sd
RTR(config-if)#ip ospf authentication
MD5
RTR(config-if)#ip ospf message-digest-key (1-255) md5 A5kjH7ag
RTR(config-if)ip ospf authentication message-digest
RTR# debug ip ospf adj
Typy pakietów OSPF
Hello (neighbors, adjacencies)
DBD (database synchro)
LSR (specific link state record request)
LSU ( odpowiedź na LSR = pakiet LSA - 11 typów pakietów LSA, kaŜdy pakiet ma seq. nr
Seq nr od 0x80000001 do 0x7FFFFFFF, LSA flooding co 30 min)
LSAck
Nagłówek pakietu OSPF- pakiet OSPF enkapsulowany wewnątrz IP - IP protocol ID=89 # debug
ip ospf packet
Version
Type (typ pakietu OSPF)
Packet length
Router ID
Area ID
Checksum
Auth. type
Auth
Data ( pakiety Hello, DBD, LSR, LSU, LSAck)
Pakiet Hello zawiera:
Router ID,
Hello / Dead Interval (10/40 sec w multicess, 30/120 w NBMA)
Neighbors
Area ID,
Router Priority
DR/BDR IP address
Auth. password
Stub area flag.
Sekwencja wymiany i synchronizacji LSDB
1. Down - rozłączone
2. INIT - wymiana pakietów Hello na multicas 224.0.0.5
3. TWO-WAY - przyleganie ustanowione
4. EXSTART - sprawdzenie kto ma wyŜszy router ID
5. EXCHANGE - wymiana pakietów DBD
6. LOADING - wymiana LSR/LSU/LSAck
7. FULL - LSAck - routery zsynchronizowane - mogą routować
Typy pakietów LSA
2007 Copyright by www.andrzejdoniczka.net
5
642-901 BSCI - Kompendium
Typ 1 - Router LSA - generowane przez kaŜdy router w obszarze, ID=router ID, opisuje zbiorczy stan
podłączonych linkow (typ linka)
floods tylko wewnątrz obszaru, nie wychodza przez ABR-y
Typ 2 - Network LSA - generowane przez DR w obszarze, ID=IP interfejsu który ogłasz ten LSA,
opisuje liste dołączonych routerów. LSA floods tylko w obszarze
Typ 3 - Sumary LSA - generowane przez ABR-y, ogłasza sieci z danego obszaru do pozostałych
obszarów
inne ABR-y powodują regenerację tch LSA, ID=Net nr + mask, trasy defaultowo nie są
sumaryzowane
Typ 4 - Summary LSA - generowane przez ABR tylko jeŜeli w obszarze jest ASBR, LSA ogłasza
router ASBR do
innych obszarów w AS-ie, Link state ID=ASBR router ID
Typ 5 - External LSA - generowane przez ASBR, LSA ogłasz sieci z innych AS-ów, defaultowo trasy
nie są sumaryzowane
Typy tras OSPF
O - intra-area, LSA typ 1 i typ 2
O IA - inter-area, LSA typ 3
O E1 - external, jeŜeli wiele ASBRów ogłasza zewn trase do tego samego ASa, cost=ext. cost+int.
cost
O E2 - external, jezeli 1 ASBR oglasz trasa do AS-a, cost=ext. cost only
2007 Copyright by www.andrzejdoniczka.net
6
642-901 BSCI - Kompendium
Chapter 3 IS-IS Protocol RFC 995, 1195
RTR(config)# router isis
RTR(config)# clns routing - domyślnie wyłączony
RTR(config-router)# net 49.0001.001A.AB1A.0F0A.00
RTR(config-if)# ip router isis
RTR(config-router)# is-type {level-1 | level-1-2 | level-2-only} - default 1-2 - typ routera
RTR(config-if)# isis circuit-type {level-1 | level-1-2 | level-2-only} - default 1-2 - typ linku
RTR(confg-if)# isis metric(1-63) {level-1 | level-2} - -default 10 / level 1+2
RTR(config-if)# isis priority (0-127) [level-1 | level-2] - 64 default - (do wyboru DIS-a)
...no i oczywiście w sieciach IP adres IP na interfejsie :)
Sumaryzacja
RTR(config-router)# summary-address 10.3.2.0 255.255.254 level 2 metric 10 - default values
na routerach L1-L2
Weryfikacja
RTR# sh clns, #sh clns interface, #sh clns neighbors
RTR# sh isis route, # sh clns route, # sh isis database, #sh isis topology
IS-IS - uŜywa CLNS jako protokolu L3 do identyfikacji routerów i budowy LSDB
Integrated IS-IS - uzywa L2 PDU jako transportu - taguje trasy CLNP informacjami o sieciach i
podsieciach IP
Routery
Level 1 - trasy wewnątrz obszaru (maja ten sam Area ID, sprawdza System ID)
Level 2 - trasy między obszarami (sprawdza Area ID)
Level 1-2 - trasy wewn. i zewn. ( tak jak ABR )
Najlepsza trasa = najniŜszy koszt
Backbone = połączone routery L2 i L1-2
Granice między obszarami leŜą na linkach
Metryki tras
Default 6 bit - interfejs, 10 bit - trasa. Domyślna metryka interfejsu = 10
Nowa metryka 24 bit - interfejs, 32 bity - trasa
Routing Levels
Level 0 - ES-IS
Level 1 - IS-IS w tym samym obszarze
Level 2 - IS-IS w róŜnych obszarach
Level 3 - między domenami (nie impl. w CISCO)
ES-IS protocol - formuje przylegania między ES-ami i IS-ami, identyfikuje area prefix, tworzy datalink-to-network mappings
ES-y transmitują ESHello do IS-ów ogłaszając swoją obecność
IS-y transmitują ISHello do ES-ów
IS-y transmitują IIHello do IS-ów
CLNS ( Connectionless Network Service) = NSAP (Network Service Access Point)
JeŜeli bajt NSEL=0, to NSAP = NET (Network Entity Title)
NSAP reprezentuje cały node (router) - nie interfejs
Struktura adresu Int. IS-IS
ID Obszaru (1-13 bit) - ID Systemu (6bit-const) - NSEL (1bajt)
49.0001.0000.0c12.3456.00 - 49=AFI, 0001=Area ID, System ID ( np. MAC interfejsu-unikalny w
obszarze i domenie !), NSEL
AFI: 39= ISO DCC, 45 E164, 47=ISO ICD, 49=Locally admin (private) - AFI określa format adresu
SNPA (Subnetwork Point of Attachment) - odpowiednik adresu L2 (MAC) moŜe to być MAC lub IP,
Virtual Circuit, lub DLCI
2007 Copyright by www.andrzejdoniczka.net
7
642-901 BSCI - Kompendium
Circuit ID - odpowiednik interfejsu - słuŜy do rozróŜnienia interfejsu
IS-IS PDU - opisują router
IS-IS: Data link header - IS-IS header - IS-IS TLV - enkapsulowane w protokole L2 !
ES-IS: Data link header - ES-IS header - ES-IS TLV - enkapsulowane w protokole L2 !
CLNP: Data link header - CLNP header - CLNS
Pakiety IS-IS
Hello (ESH, ISH, IIH) - (10sec, dla DIS-a 3,3 sec) ustanawiają przyleganie (W LAN-ie wszystkie
routere ze sobą i z DIS-em)
LSP - dystrybuują link-state info
PSNP - (partial seq nr PDU) - potwierdzanie i Ŝadania info częściowych o stanie łącz
CSNP - (complete seq nr PDU) - W sieciach brodcastowych tylko DIS generuje CSNP (co 10 sec)
W łączach P2P CSNP tylko gdy link wstaje.
Link State Packet ( LSP)
Router opisuje siebie za pomocą LSP składającego się z nagłówka i pól TLV
Osobne pakiety LSP są dla Level 1 i Level 2 routers
Nagłówek LSP:
PDU type / length - LSP ID - LSP seq nr. - LSP lifetime (1200 sec - default)
Pola TLV:
Area address
Neighbor IS
Neighbor ES
Authentication info
IP subnets przyłączone ( dla Int IS-IS)
W sieciach NBMA - implementacja IS-IS tylko dla łaczy P2P na subinterfejsach
W siecich broadcast algorytm SPF wymaga pseudonode-a reprezetowanego przez DIS (Designated
IS)
W sieciach brodcastowych tylko DIS generuje CSNP (co 10 sec)
DIS generuje pseudonode LSP-y, uzywane do zbudowania mapy sieci i obliczenia SPF tree
Kryteria wyboru DIS: Najwyzsze priority, NajwyŜszy SNPA (czyli w LANach MAC adres)
Default Level 1 i 2 priority=64
DIS-y dla Level 1 i Level 2 mogą być róŜne
2007 Copyright by www.andrzejdoniczka.net
8
642-901 BSCI - Kompendium
Chapter 4 Manipulating Routing Updates
Redystrybucja
1. do RIP-a
RTR(config)# router rip
RTR(config-router)# redistribute ospf 1 match internal metric 30 - default metric 0=infinity dla RIPa
RTR(config-router)# redistribute static | connected metric 1 - ( w tym przypadku default metric=1)
lub
RTR(config-router)#redistribute rip route-map mapa_redystrybucji
2. do OSPFa
RTR(config)# router ospf 1
RTR(config-router)# redistribute eigrp 65250 metric 20 metric-type 2 subnets -default 20 dla OSPF-a,
metric-type external
3. do EIGRP
RTR(config)# router eigrp 65250
RTR(config-router)# redistribute ospf 1 metric 10000 100 255 1 1500 - BW=10000kbps,Delay
100x10us,Reliability=255,Load=1,MTU=1500
RTR(config-router)# redistribute static | connected metric 10 - ( w tym przypadku default
metric=metryka interfejsu)
4. do ISIS
RTR(config)# router isis
RTR(config-router)# redistribute eigrp 65250 level 2 metric 0 metric-type internal - default values
RTR(config-router)# passive-interface s1 | default - na wszystkich int. - zapobiega wysyłaniu updateów z tego int.
Zapobiega ustanowieniu relacji przylegania w routerach na protokole link-state
RTR(config-router)# no passive-interface s 2/5 - np. w przypadku default
Listy dystrybucyjne - (nie mają wpływu na ruch który jest generowany przez router)
update-y wychodzące:
RTR(config-router)# distribute-list 7 out s0 | rip
RTR(config)# access-list 7 permit 172.16.0.0. 0.0.255.255
updaty przychodzące:
RTR(config-router)# distribute-list 7 route-map r-mapa in
RTR(config)# access-list 7 permit 172.16.0.0. 0.0.255.255
Route mapy - przetwarzanie - match - OR, set -AND
RTR(config)# route-map r-mapa [permit | deny| 10 -10 sequence nr
RTR(config-route-map)# match interface s0
match ip address 7 23 29 (dest. adres określony przez ACLki 7, 23 i 29)
match ip next-hop 7
match ip route source 7
metric 20
RTR(config-route-map)# set metric 10
set metric-type [internal | extrnal]
set level level-1
set default interface
przykład route mapy w redystrybucji RIP-a do OSPFa
RTR(config)# router ospf 20
RTR(config-router)#redistribute rip route-map redyst_rip
RTR(config)# route-map redyst_rip permit 10
RTR(config-route-map)match ip address 12 14
RTR(config-route-map)set metric 500
2007 Copyright by www.andrzejdoniczka.net
9
642-901 BSCI - Kompendium
RTR(config-route-map)set metric-type type-1
RTR(config)# route-map redyst_rip deny 20 RTR(config-route-map)match ip address 15
RTR(config)#access-list 12 permit 10.0.1.0 0.0.255.255 itd
...czyli to znaczy: trasy pasujące do ACL-ek nr 12 lub 14 będą redystrybuowane z metryką 500 i jako
external typ1
a trasy pasujące do ACL-ki 15 nie będą redystrybuowane
Modyfikacja dystansu administr.
RTR(config-router)# distance administrative (1-255) [address wildaca [access-list]] - wszystkie
protokoly oprócz EIGRP i BGP redistr.
RTR(config-router)# distance eigrp 100 130 -int. dist/ ext. dist.
Dystansy administracyjne:
Connected - 0, Static - 1, EIGRP Summary - 5, External BGP - 20, Internel EIGRP - 90, IGRP - 100
OSPF - 110, IS-IS - 115, RIP - 120, External EIGRP - 170, Internal BGP - 200,
Redystrybucja - mozna redystrybuować trasy statyczne i connected. Redystrybucja zawsze
zachodzi w kierunku "outbound" - czyli "do protokołu" Router redystrybuujący nie zmienia tablicy
routingu.
Redystrybucja musi zachodzić w obu kierunkach.
Przed włączeniem redystrybucji dobrze jest ustawić sumaryzację na routerach z których będą
redystrybuowane trasy.
RTR(config-router)# default metric 5 - ustawia "seed metric" dla wszystkich tras redystrybuowanych
Seed metric powinna być ustawiona na wartość wyŜszą niŜ największa metryka w redystrybuowanym
AS-ie
Ŝeby uniknąć routing loops
Seed metric moŜe być ustawiona przez # default-metric lub w poleceniu redistribute lub przez route
mapy
Domyślne Seed metrics:
RIP - infinity, IGRP/EIGRP - inifinity, OSPF - 20, z wyjątkiem BGP -1, IS-IS - 0, BGP - metryka
protokołu JGP
Redystrybuując do RIP/IGRP/EIGRP - trzeba podać domyślną metryke
Sposoby kontroli i zapobiegania dynamic routing updates:
- Passive interfaces
- Default routes
- Static routes
2007 Copyright by www.andrzejdoniczka.net
10
642-901 BSCI - Kompendium
Chapter 5 Konfiguracja BGP RFC 4271, 1772, 1930, 2918, 2545 (IPv6 ext.)
RTR(config)# router bgp 65250
RTR(config-router)# neighbor 157.158.1.100 remote-as 45210
RTR((config-router)# neighbor 157.158.1.100 update-source loopback 0
pozwala procesowi BGP na uzycie IP-a tego interfejsu jako adresu zrodlowego updat-ów tego sasiada
RTR(config-router)# neighbor 194.204.152.4 ebgp-multihop 2 ( 1 - default)
zwiększa domyślny 1-hop dla EBGP
JeŜeli w EBGP na routerach ustawione są loopbacki, to naleŜy ustawić trase statyczną wskazującą
na adresy fizyczne i uŜyć opcji multihop
RTR(config-router)# neighbor 194.204.152.4 next-hop-self - przejmuje adres next-hop na siebie i
ogłasza sąsiadom IBGP
RTR(config-router)# network 192.168.1.1 mask 255.255.0.0 - pozwala routerowi BGP ogłaszac sieci
ta komenda musi zawierać wszystkie sieci w AS-ie które chcemy ogłaszać
RTR(config-router)# no synchronization - router ogłasza trasy w BGP bez pozyskiwania ich przez IGP
RTR(config-router)# neighbor 157.158.1.100 shutdown - restart polączenia po zmianie parametrów
routingu
RTR(config-router)# no neighbor 157.158.1.100 shutdown
Authentication
RTR(config-router)# neighbor 213.227.72.1 password A8kj4k
Reset
RTR# clear ip bgp * - hard reset - wszystkie połączenia BGP, BGP forwarding table out, BGP sessions
establ.->idle
RTR# clear ip bgp 213.227.72.1 - jw. tylko dla jednego sąsiada
RTR# clear ip bgp {* | 213.227.72.1} soft out - soft reset - trasy nie są utracone, połączenie pozostaje
established,
Inbound Soft Reset
RTR(config-router)# neighbor 194.204.152.34 soft-reconfiguration inbound - zuŜywa duŜo pamięci
RTR# clear ip bgp 194.204.152.34 soft in,
RTR# clear ip bgp 194.204.152.34 [soft in | in] - Route refresh: Dynamic Inbound Soft reset
RTR(config-router)# bgp default local-preference (0-4294967295) -default 100 - określa która ścieŜka
lepsza do wyjścia z AS-a
RTR(config-router)# default-metric 0 -default - zmienia MED - określa jak wejsć do AS-a - niŜszy
MED=lepszy
RTR# sh ip bgp summary - BGP router ID, BGP table ver., Neighbor, Version, AS - sąsiada, MsgRcvd,
MsgSent, InQ,
OutQ, Up/Down, State,
RTR# debug ip bgp events, # debug ip bgp ipv4
...troche teorii
Protokół BGP ogłasza ścieŜki i sieci które są na końcach tych ścieŜek.
ŚcieŜka jest określona przez atrybuty.
BGP jest protokołem path-vector, pracuje na porcie TCP 179
Updat-y - triggered, incremetal. Weryfikacja połączenia TCP przez keepalive-y ( co 60 sec)
BGP Databases
- Neighbor table ( lista sąsiadów BGP)
- BGP table ( forwarding database) - lista wszystkich sieci pozyskana od kaŜdego sąsiada, atrybuty
kaŜdej ścieŜki
2007 Copyright by www.andrzejdoniczka.net
11
642-901 BSCI - Kompendium
- Routing table
Przed ustanowieniem relacji przylegania naleŜy skonfigurować adres kaŜdego sąsiada.
BGP Message types
- Open (version nr, AS nr, holdtime, BGP Router ID, TLV)
- Keepalive
- Update ( path attributes, network)
- Notification ( gdy jest error, gdy połączenie zostało zamknięte)
BGP Speaker - kaŜdy router
BGP peer / BGP neighbor - router który ustanowił relację TCP,
musi być skonfgurowany za pomocą komendy neighbor wskazującej adres tego sąsiada.
EBGP neighbors - domyślnie muszą być połączone bezpośrednio
IBGP neighbors (w tym samym AS-ie) - nie muszą być połączone bezpośrednio, ale muszą być
osiągalne
za pomocą tras statycznych albo protokołów IGP
JeŜeli AS stanowi obszar przejściowy między dwoma innymi AS-ami, to
wszystkie routery muszą mieć wiedzę o trasach zewnętrzych. W tym przypadku nie redystrybuować
BGP do IGP
tylko w ASie odpalić IBGP na wszystkich routerach.
Defaultowo trasy pozyskane przez IBGP nigdy nie są propagowane do innych IBGP peers,
więc potrzebna jest full-mesh IBGP
W pakiecie BGP destination addres jest określony przez komende neighbor,
a source addres przez interfejs wyjściowy który musi być zgodny z tym co odległy router
ma wpisane w neighbor.
JeŜeli router ma skonfigurowany adres loopback to uŜyć # neighbor A.B.C.D update-source loopback
0
tak aby loopback był adresem źrółowym tego routera - to dotyczy IBGP
Next-hop address - to adres przez który wchodzi się do docelowego AS-a
Komenda next-hop-self na routerze - przejmuje ten adres na siebie i ogłasza go sąsiadom IBGP.
Multihoming options
- przekazywanie przez ISP trasy domyślnej do AS-a. JeŜeli router w AS-ie otrzyma kilka tras
domyślnych
to trase wybiera na podstawie najniŜszej metryki IGP
- kaŜdy ISP przekazuje do AS-a domyślną trase i trasy ISP
- kaŜdy ISP przekazuje wszystkie trasy do AS-a
Numery AS-ów prywatnych: 64512 - 65535
Zasada synchronizacji:
Nie ogłaszać zewnętrznym sąsiadom tras IBGP dopóki nie zostały pozyskane przez IGP
JeŜeli wszystkie routery Transit path w AS-ie mają full mesh IBGP to bezpiecznie jest wyłączyć
synchronizacje
Stany BGP neighbors - # debug ip bgp events, # debug ip bgp ipv4
- Idle - router szuka w tablicy routingu czy istnieje trasa do sąsiada - sprawdzić IGP, neighbor
- Connect - router znalazł trase i ukończył TCP 3-way handshake
- Open Sent - wysłano Open message z parametrami sesji BGP
- Open confirm / lub active jeŜeli no response - Active - znalazł sąsiada i wysłał pakiet ale brak
odpowiedzi., brak trasy powrotnej
- Established - #sh ip bgp summary
JeŜeli na zmianę stany idle / active - to błędnie ustawione nr-y AS-ów
2007 Copyright by www.andrzejdoniczka.net
12
642-901 BSCI - Kompendium
Atrybuty BGP ( metryka BGP)
Well-known - muszą być rozpoznawane przez wszystkie routery, są propagowane do sąsiadów
- mandatory - muszą być w updacie ( AS path, Next hop, Origin)
- discretionary - mogą być w updacie ( Local Preference, Atomic aggregate)
Optional - są rozpoznawane przez niektóre routery, rozpoznane są propagowane
- transitive - Aggregator
- nontransitive -MED - Multi exit discriminator
AS -path - lista AS-ów przez które prowadzi trasa do danej sieci
Next hop - adres IP przez który osiągamy docelowy AS ( router Ŝródłowy musi wiedzieć przez IGP jak
osiągnąć ten IP)
Origin - określa pochodzenie danej ścieŜki
( IGP - przez network command, EGP , Incomplete - Redistributed from IGP or static) #sh ip bgp
Local Preference - określa która ścieŜka jest preferowana w AS-ie do wyjścia z tego AS-a
default=100, wyŜsza=lepsza, dotyczy ruchu wychodzącego, LP jest dystrybuowany
do IBGP neighbors w AS-ie
MED - wskazuje preferowany punkt wejsciowy do zewnętrznego AS-a, niŜszy MED=lepsza ścieŜka
dystrybuowany na zewnątrz AS-a
Weight - (tylko CISCO) - tylko lokalnie na routerze, nie jest dystrybuowany,
jeŜeli router ma wiele punktów wyjsciowych, to weight określa ścieŜkę którą wyjść
wyŜszy=lepszy ( weight=0-65535, 3278=default)
Kolejność procesu wyboru ścieŜki BGP
1. WyŜszy Weight
2. WyŜszy Local Preference
3. Preferowana trasa locally originated = next hop 0.0.0.0
4. Krótsza AS-path
5. NiŜszy Origin Code IGP<EGP<incomplete
6. NiŜszy MED
7. Lepsza EBGP path niŜ IBGP
8. Lepsza ścieŜka przez bliŜszego sąsiada IGP
9. Lepsza starsza trasa EBGP
10. Lepsza ściezka przez sąsiada z niŜszym BGP Router ID
11. Lepsza ścieŜka przez sąsiada z niŜszym IP
2007 Copyright by www.andrzejdoniczka.net
13
642-901 BSCI - Kompendium
Chapter 6 Multicasting IGMPv2 RFC 2236
RTR(config)# ip multicast-routing - włącza globalnie routing multicastowy
RTR(config-if)# ip pim { sparse-mode | sparse-dense-mode } - włącza PIM SM na interfejsie
sparse-dense-mode pozwala interfejsowi routera prace w PIM-SM dla grup sparse-dense-mode
(ze znanymi randezvous pointami), a dense mode dla innych grup - s-d-m jest rekomendowane
konfiguracja grup routerów to be and discover RPs dynamicznie
RTR(config)# ip pim send-rp-announce s0/1 scope 10 group list 1 <- ACLka - na routerach które
chcą być RP-ami
taki router wysyła Auto-RP message na 224.0.1.39 oglaszając się jako kandydat na RP-a dla grupy
zdefiniowanej przez ACLke
RTR(config)# ip pim send-rp-discovery s0/1 scope 10 <- ttl - konfiguruje router jako RP mapping
agent. Słucha na 224.0.1.39
i wysyła RP-to-group mapping message na 224.0.0.140. Inne PIM-y słuchają na 224.0.1.40 i
automatycznie wykrywają RPa
RTR# sh ip mroute [group-address] [summary] [count] [active 4 kbps - default] - stan źródeł i grup
multicastowych rozpoznanych
z perspektywy routera. Active - wyświetla szybkość za jaką aktywne źródło wysyla do grupy
RTR# sh ip pim interface s0/1 [count]
RTR# sh ip pim neighbor [typ nr]
RTR# mrinfo [hostname | address] - info o routerach multicastowych które peering z routerem
lokalnym lub z routerem o addresie
RTR# sh ip pim rp [group-name | group-address | mapping] - aktywne RP-y with associated multicast
routing entries
mapping - mapowania group-to-RP
RTR# sh ip rpf { address | name} - jak multicast IP routing robi Reverse Path Forwarding (RPF)
address - adres źródła RP
Weryfikacja IGMP Groups i IGMP Snooping
RTR# sh ip igmp interface s0/1
RTR# sh ip igmp groups [group-address | type number] - grupy multicastowe bezpośrednio połączone
i nauczone przez IGMP
SWITCH# sh multicast group [igmp] [mac_addr] [vlan_id]
SWITCH# sh multicast router [igmp] [mod_num/port_num] [vlan_id]
Adresy IP Multicast
2007 Copyright by www.andrzejdoniczka.net
14
642-901 BSCI - Kompendium
Chapter 7 IPv6 Protocol RFC 2460, 2461, 2462, 2463, 4291
RIPng RFC 2080
OSPF dla IPv6 RFC 2740,
MP-BGP4 dla IPv6 RFC 2545, 2858
RTR(config)# ipv6 unicast-routing
RTR(config)# ipv6 router ospf 1 - globalnie włącza OSPF/RIP i inne prot. routingu
RTR(config-router)# router-id 172.16.10.1
RTR(config)# interface s0/1
RTR(config-if)# ipv6 address 3FFFE:FFFF:1::1/64 [eui-64]
RTR(config-if)# ipv6 ospf 1 area 0 instance 10
RTR(config-if)# router ospf priority 20 - wybór DR/BDR
RTR(config-if)# router ospf cost 10 - koszt na interfejscie dla pakietów wychodzących
Konsolidacja i sumaryzacja tras
RTR(config)# ipv6 router ospf 1
RTR(config-router)# area range 1 2001:0000::/48 [advertise | not-advertise] cost 10
RTR# sh ipv6 interface, # sh ipv6 ospf, itp jak ipv4
Tunelowanie ipv6 przez sieć ipv4 (konfiguracja na obu routereach końcowych - routery dual stack)
RTR(config)# interface tunnel 0
RTR(config-if)# ipv6 address 2001::dba2:7891:a00b
RTR(config)# tunnel source 192.0.2.1
RTR(config)# tunnel destination 192.1.30.1
RTR(config)# tunnel mode ipv6ip
Format pakietu IPv6 - nagłówek 40 oktetów:
Version: 4 bit - Traffic Class: 8 bit - Flow Label 20 bit
Payload length: 16 bit - Next header: 8 bit - Hop limit: 8bit
Source address: 128 bit
Destination addresss: 128 bit
Extension header 1
Extension header 2
.............
Extension header n
Payload - MTU jest określone przez wyŜsze warstwy i jest negocjowane
przez proces discovery za pomocą "ICMP packet too big"
discovery co 5 minut
Format adresu Global Unicast:
Global routing prefix: 48 bitów : Subnet ID: 16 bitów : Interface ID: 16 bitów
Global routing prefix = Registry: /23 bit : ISP prefix: /32 bit : Site prefix: 48/ bit : Subnet prefix: /64
2000::/3 : - IANA - global unicast
FC00::/7 : - Unique Local Unicast
FE80::/10 - link local - zakres ograniczony tylko do linku tworzony dynamicznie
słuŜy do automatycznej konfiguracji, neighbor i router discovery
moŜe łączyć urządzenia w sieci lokalnej
Komunikując sie z tym adresem trzeba podac konkretny interfejs
FF00::/8 - multicast
Interface ID: (U/L-bit)- MAC OUI - FFFE - MAC S/N =64bity
Adresy Multicastowe:
FF00::/8 = FF Flag Scope np. FF02 - permanent/link local
Flag 0-permanent/1-temp
2007 Copyright by www.andrzejdoniczka.net
15
642-901 BSCI - Kompendium
Scope 1-int.local, 2-link local, 3-subnet local, 4 Admin local, 5 Site local, 8-organiz, E-global
FF02::05 OSPF all routers
FF02::06 OSPF all DRs
RIPng - podobnie jak RIPv2: 15 hops, split horizon, poison reverse
uŜywa transportu UDP 521 w IPv6
Updated features w stosunku do IPv4:
- IPv6 prefix, next-hop IPv6 address
- jako adresu updatów uŜywa grupowy (RIP routers) adres multicastowy FF02::9
IS-IS - tak jak dla IPv4 Jeszcze nie ma do tego RFC !
Updated features w stosunku do IPv4:
- 2 nowe atrybuty TLV IPv6 reachability, IPv6 int. address
- nowy identyfikator protokołu
MP-BGP
- Zezwala na protokół inny niŜ IPv4 np. MPLS lub IPv6
- Nowy identyfikator rodziny adresów
- adresy zakresowe: NEXT_HOP zawiera global IPv6 address i i potencjalne link-local adresy
- NEXT_HOP i Network Layer Reachability Information (NLRI) sa wyraŜone jako adres IPv6 i prefix
w atrybutach multiprotokołowych
OSPFv3
Taki sam mechanizm jak v2, takie same pakiety jak v2. OSPF v3 i v2 mogą pracować niezaleŜnie
Updated features w stosunku do IPv4:
- usunięta semantyka związana z IPv4 (Typ 1 i 2 LSA w nagłówku pakietu nie ma adresu IP)
DR i BDR są identyfikowane przez router ID a nie adres IP
- jako adres Ŝródłowy uŜyty adres link-local
- nagłówek pakietu OSPF v3 ma 16 bajtów ( v2-24 bajty)
- version - type - packet length
- router ID
- Area ID
- Checksum - Instance ID - 0
- uwierzytelnienie OSPFv3 zostało przejęte przez funkcję IPv6
- zezwala na wiele instancji na linku (w v2 podobna funkcjonalność przez subinterfejsy)
- przetwarzanie "per link" zamiast "per subnet" (IPv6 zezwala do pojedynczego linka przypisać wiele
subnetów
2 nody mogą gadać na jednym linku, nawet jeśli nie są w tym samym subnecie
oddzielne AS-y mogą uŜywać wspólnego linka
- Typ 1 i 2 LSA zawierają tylko 32bitowy ID
- LSA zawierają zakres floodingu:
- Link Local (wszystkie routery na linku)
- Area
- AS
- Zmienione nazwy LSA typ 3 i 4, 2 nowe typy LSA Typ 8: Link LSA, Typ 9 Intra-area prefix LSA
wymaganie RFC 2461: router musi być w stanie
określić link local address kaŜdego sąsiada, Ŝeby mieć pewność Ŝe target address of redirect
message
identyfikuje sąsiada za pomocą link-local address.
2007 Copyright by www.andrzejdoniczka.net
16
642-901 BSCI - Kompendium
Chapter 8 DHCP Protocol RFC 2131
Server:
RTR(config)# service dhcp -default on
RTR(config)# ip dhcp pool pula-dhcp
RTR(config)# ip dhcp excluded-address 192.168.0.1 192.168.0.16
RTR(config)# ip dhcp database ftp://user:[email protected]/router-dhcp write-delay 120 ustawia agenta bazy danych
RTR(config-dhcp)# network 192.168.1.0 255.255.255.0
RTR(config-dhcp)# default-router 192.168.0.1
RTR(config-dhcp)# dns-server 194.204.152.34
RTR(config-dhcp)# domain-name MyCorp
RTR(config-dhcp)# lease 12
RTR(config-dhcp)# import all - import DNS and WINS from IPCP
Client:
RTR(config-if)# ip address dhcp
IP helper adres - zamienia broadcast na int.wchodzącym na unicast na int. wychodzącym i odwrotnie
RTR(config-if)# ip helper-address 194.204.152/34 - IP-dest.unicast, implement. na interfejsie
wchodzącym
RTR(config)# no ip forward-protocol udp 137 - blokuje niechciany protokół broadcastowy
Weryfikacja
RTR# sh ip dhcp database, # sh ip dhcp server statistics, # sh ip route dhcp, # sh ip dhcp binding
RTR# clear ip dhcp binding
RTR# debug ip dhcp server
Sekwencja DHCP
Klient - DHCP Discover - broadcast
Servery - DHCP Offer - unicast
Klient - DHCP Request - broadcast
Server - DHCP Ack - unicast
UDP Services
Time: 37
TACACS: 49
BOOTP/DHCP: Server 67
BOOTP/DHCP: Client 68
TFTP: 69
NETBIOS NS: 137
NETBIOS Datagram: 138
2007 Copyright by www.andrzejdoniczka.net
17