Enterprise Campus Network Design
Kapitel 2 fra CCDP ARCH bogen.
Contents
- 1 Modulært design
- 2 Lag 2 anbefalinger
- 3 Lag 3 anbefalinger
- 4 Infrastruktur Services
- 5 Eksterne henvisninger
Modulært design
Ved at anvende skalerbare modulære netværks blokke, opnås der mange fordele.
- Netværket bliver mere overskueligt
- Nemmere at tilpasse netværket til ændrede krav
- Det bliver nemmere at fejlfinde
Access Layer
High Avalabilty (Stor tilgængelighed)
- Hardware:
- Anvendelse af redundante strømforsyninger
- Anvendelse af redundante service moduler i switchene
- Software:
Convergens (Samling af funktioner)
- Anvendelse af Power over Ethernet (PoE til IP telefoner og Wireless Access Points
Security (Sikkerhed)
Accesslaget har til opgave at give yderligere sikkerhed imod uautoriseret adgang til netværket ved at anvende værktøjer som for eksempel
QoS - Quality of Service
Access laget har ansvaret for
IP Multicast
- Supporterer IGMP
Distribution Layer
Distributions laget samler trafikken fra Access laget og kan anvende Policy-based connectivity, det vil sige, regler for trafik flowet.
Tilgængelighed, Load Balancing, QoS og styring af båndbredde (provisioning) er vigtige faktorer på Distributions laget.
- Høj tilængelighed indføres ved at have redundante linier til Core laget samt fra Access laget. Se figur 2.
Routning og pakke filtrering foregår på Distributions laget. Ligeledes kan Distributions laget være et Redistributions punkt mellem forskellige Routnings domæner eller et Demarcation Point mellem statiske Router og dynamiske Router.
Distributions laget kan også lave Route Summarization.
Terminering af VLAN fra Access laget kan også foregå på Distributions laget.
Distributions laget anvender Default Gateway redundans ved at anvende FHRP som for eksempel HSRP,GLBP eller VRRP.
Core Layer
Core laget er et høj hastigheds OSI lag 3 Switch netværk med hardware accelereret services. Det vil sige dedikeret hardware som for eksempel Cisco CEF. Der er anvendt redundante Point-to-Point forbindelser mellem alle enheder.
Fordelen ved at anvende et Core lag er at trfikken bliver samlet i et højhastigheds netværk. Se figur 4, hvor der ikke anvendes et separat Core lag. Her er det nødvendigt at alle Distributions Switche er forbundet til alle andre Distributions Switche - altså et fuldt Mesh. Det gør netværket kompliceret og dyrt at udvide, da tilføjelse af endnu en Switchblok med distributionslag skal forbindes til alle andre. Sammenlign figur 4 og figur 5 hvor der anvendes et Core lag. I Core laget kan anvendes Non-Stop forwading (NSF) i high-end Switche for at minimere nedetid ved fejl i Switchene. |
Cisco IOS Software modul arkitektur
Se http://www.cisco.com/en/US/prod/collateral/switches/ps5718/ps708/prod_bulletin0900aecd80313e15.html
- Konsistent konfiguration: IOS modularitet ændrer ikke ved kommandoer for at konfigurere udstyret, men tilføjer nye kommandoer.
- Afskærmet hukommelse: Hukommelses akitekturen er ændret så hver process har sin egen beskyttet hukommelse.
- Fejl afskærmning: Fordelen ved Afskærmet hukommelse er forhøjet tilgængelighed da en process ikke kan påvirke andre.
- Genstart af process: Enkelse processer kan nu genstartes uden hele kassen skal genstartes.(process restart <process-navn>)
Lag 2 anbefalinger
Spanning Tree best Practices
Cisco anbefaler at man skal bruge RPVST+ Rapid Per-VLAN Spanning tree plus. RPVST+ er en Cisco proprietær protokol. Ellers anvendes MST Multiple Spanning Tree er en IEEE standard.
- Spanning tree
- Spanning Tree protocol history
- Cisco STP Toolkit som er en udvidelse af Spanning tree
VLAN Trunking
Best pratices
Cisco anbefaler anvendelsen af IEEE 802.1Q som Trunk protokol.
DTP - Dynamic trunking Protocol
Cisco anbefalet at Trunks konfigureres som Desireable. Det giver den fordel at man kan se om Trunken fungerer med en show kommando. Ellers er det god praksis at tvinge porten til Trunking.
Dist2#<input>conf terminal</input>
Enter configuration commands, one per line. End with CNTL/Z.
Dist2(config)#<input>interface fastethernet 0/1</input>
Dist2(config-if)#<input>switchport trunk encapsulation dot1q</input>
Dist2(config-if)#<input>switchport mode dynamic desirable</input>
Dist2(config-if)#<input>^Z</input>
Dist2#<input>show interfaces trunk</input>
Port Mode Encapsulation Status Native vlan
Fa0/1 <notice>desirable</notice> 802.1q <notice>trunking</notice> 1
Port Vlans allowed on trunk
Fa0/1 1-4094
Port Vlans allowed and active in management domain
Fa0/1 1,100
Port Vlans in spanning tree forwarding state and not pruned
Fa0/1 1,100
Native VLAN
Cisco anbefalet for at undgå VLAN Hopping at det Native VLAN ikke anvendes. Enten ved at VLAN'et ikke er konfigureret eller ved at anvende tagged native VLAN option. tagged native VLAN option er ikke implementeret på alle switch
Dist2#<input>conf terminal</input>
Enter configuration commands, one per line. End with CNTL/Z.
Dist2(config)#<input>interface fastethernet 0/5</input>
Dist2(config-if)#<input>switchport trunk encapsulation dot1q</input>
Dist2(config-if)#<input>switchport mode dynamic desirable</input>
Dist2(config-if)#<input>switchport trunk native vlan 1</input>
Dist2(config-if)#<input>switchport native vlan tag</input>
UDLD
Cisco anbefaler at UDLD (Unidirectional Link Detection) enables globalt.
Se Understanding and Configuring the Unidirectional Link Detection Protocol Feature
EtherChannel
EtherChannel er typisk anvendt mellem Distributions-Laget og Core-Laget og mellem Core-Switche. Cisco anbefalet brugen af PAgP med den ene ende af EtherChannelen til Desireable og den anden ende til Auto eller Desireable.
port-channel load-balance dst-mac
!
interface fastethernet 0/1
switchport trunk encapsulation dot1q
switchport trunk allowed vlan 1,100-199
switchport mode trunk
switchport nonegotiate
duplex full
speed 100
channel-group 2 mode desireable
!
interface fastethernet 0/2
switchport trunk encapsulation dot1q
switchport trunk allowed vlan 1,100-199
switchport mode trunk
switchport nonegotiate
duplex full
speed 100
channel-group 2 mode desireable
Lag 3 anbefalinger
For at opnå høj tilgængelighed og hurtig konvergens skal der tages hensyn til mange variable. Herunder:
- Styring af båndbredde
- Link-Load balancing
- Routings protokoller
- FHRP First-Hop Redundancy Protocol
Styring af båndbredde
Typiske netværk er designet til at håndtere mere data end normalforbruget. Cisco anbefaler at båndbredden imellem Access-Switche og Distributions-Switch designes i forholdet 20:1. Imellem Distributions-Switch og Core-udstyr i forholdet 4:1.
Med disse båndbredde forhold vil der sjældent opstå Congestion. Det er nødvendigt at anvende QoS når disse opstår.
Hvis der ofte opstår Congestion, er netværket ikke designet med tilstrækkelig båndbredde.
EtherChannel
- Ved blot at tilføje flere porte til en EtherChannel øges CPU-fobruget på de deltagende Switche, samt der er mere EtherChannel trafik.
- OSPF vil øge Link-Cost hvis en forbindelse i en EtherChannel går ned, og forsøge at Reroute trafikken.
- OSPF vil på en Cisco Hybrid-based switch (En større switch fx. Catalyst 6000, hvor både IOS og CatOs er installeret) ikke forøge Link-Cost, hvilket betyder at der er mindre båndbredde tilgængelig end OSPF tror hvis en eller flere af forbindelserne i EtherChannelen går ned.
- Det er muligt med EtherChannel LACP at angive min-links, for at angive hvor minimum antal forbindelser der skal være i drift for at EtherChannel linket er oppe.
Link Load Balancing
På tegningen nedenfor kan det ses at der er flere veje mellem de to Access-Switche. For at udnytte båndbredden bedst muligt skal alle mulige veje belastes så ens som muligt.
Cisco Express Forwarding (CEF) er en algoritme der genkender pakker i en strøm af data og sender pakkerne den samme vej. Det kan resultere i at det meste trafik sendes samme vej og overbelaster en linie, medens en anden næsten ikke bruges.
Default vil Cisco Express Forwarding (CEF) lave en hash-værdi baseret på OSI lag 3 afsender og modtager IP adresse. Det er muligt at ændre hash-værdien til også at medtage OSI lag 4. Der er forskelle mellem Switche når dette indføres.
- 3560 (ip cef load-sharing algorithm)
- 6500 (mls ip cef load-sharing full)
Cisco anbefaler at der anvendes OSI lag-3 og OSI lag-4 CEF på distributionslaget og OSI lag-3 på Corelaget.
EtherChannel Link load balancing
På samme måde anbefaler Cisco at der anvendes OSI lag-3 og OSI lag-4 Load Balancing på EtherChannel links. Se tegningen til højre, hvordan belastningen typisk fordeles bedre mellem de to links.
Der er forskel på de forskellige EtherChannel Load Balancing algoritmer på de forskellige switche. På Cisco Catalyst 6500 kan OSI lag-4 Load Balancing startes med den globale kommando port-channel load-balance src-dst-port. På 3600 serien af switche er der mulighed for at vælge imellem OSI lag-2 og OSI lag-3. Se EtherChannel#Distributing traffic in the EtherChannel
Routnings Protocol design
Routnings Protokoller anvendes normalt mellem Distribution-to-Core og Core-to-Core.
Byg redundante trekanter
Anvend redundante equal-cost trekanter som vist i Model A til højre. Hvis en link fejler er det en lokal hardware-fejl, og Routenings protokollen som for eksempel OSPF og EIGRP behøver ikke genberegne nettet, men vil umiddelbart bare anvende.
I Model B til højre, vil en link-fejl initiere nye routetabeller i alle enheder. Passive interfaces til AccessAnvend passive interfaces fra Distributions-Switchene mod Access-Switchene. Route SummarizationKonfigurer Route Summarization på Distributions-Laget, således så få opdateringer som muligt sendes videre til Core-Laget. |
First Hop RedundancyHvis designet som vist på tegningen herunder anvender OSI lag 2 på Access-Switchene, anvender de tilsluttede Computere Distributions-Switchene som Default Gateway. Derfor anvendes en FHRP (First-Hop Redundancy Protocol) på Distributions-Switchene. Anvend HSRP,VRRP eller GLBP til at lave FHRP. GLBP anbefales da den giver bedre load-balancing. Se tegningen herunder. Preempt Delay tuningDer er ønskværdigt at den Distributions-Switch som er First-Hop set fra Distributions-Switchen også er Spanning tree root Switch, for at undgå at pakkerne sendes via den anden Distributions-Switch. Så er der et OSI lag 2 hop mere. Det er derfor nødvendigt at anvende Preempt i FHRP. Default sat til i VRRP og GLBP, men skal konfigureres i HSRP. Konfigurer Hello-Timeren ned til fx. 250 msec og Hold-Timeren til 750 ms. Konfigurer Preempt-Minimum-Delay til 1,5 * Boot-tid. Hvis der anvendes OSI lag 3 i Access-Switchene (Ikke vist på tegningen) er det ikke nødvendigt med en FHRP, da de tilsluttede Computere anvender Access-Switchenes IP adresser som Default Gateway.
|
Forskellige modeller fra Access til Distribution
Samme VLAN på flere Access switcheHvis designet anvender samme VLAN's på flere Access-Switche og der anvendes OSI Lag 2, mellem Access-Switchene og Distributions-Switchene kan designet give problemer, da Spanning tree vil blokere porte som vist på tegningen til højre. Dette kan medføre trafikken skal Switches igennem en Distributions-Switch før den når First-Hop på den anden Distributions-Switch. |
|
For at hjælpe lidt på Spanning tree kan OSI lag 2 linken mellem Distributions-Switchene tvinges til at blokkere ved at anvende spanning-tree cost interface kommandoen. Men det er stadig ikke en 100% optimal løsning. | |
HSRP med samme VLAN på Acess-Swithene. Der anvendes OSI Lag 2 trunks mellem Access-Switche og Distributions-Switche. Spanning tree blokerer portene imod Distributions-Switchen til højre, hvorfor al trafik passerer Distributions-Switchen til venstre. Ikke optimalt. | |
Forskellige VLAN på Access switchenePå tegningen til højre anvendes forskellige VLAN på Access-Switchene. Spanning tree Root Switchen sættes til at være den samme som den aktive HSRP Router.
|
|
Samme eksempel som ovenstående med GLBP | |
anvendelse af OSI lag 3 mellem Access og Distributions-Switche.Ved at anvende OSI lag 3 mellem Access og Distributions-Switchene opnås hurtigere konvergens, da for eksempel EIGRP er hurtigere til at konvergere end Spanning tree. Designet er nemmere at konfigurere, da Spanning tree ikke skal tilrettes HSRP eller GLBP. Da hostene anvender access-switchen som default gateway anvendes der ikke HSRP eller GLBP i dette design. De samme VLAN kan ikke anvendes på flere Access-Switche. OSPF eller EIGRP konfigureres med lave Hello og Hold timers. Ulempe: Access-Switche skal være lag 3 switche, som er dyrere. |
Potentielle design problemer
Daisy Chaining Access Layer SwitchesHvis Access-Switchene sammenkobles som en juletrækæde som vist til højre, hvor der anvendes OSI lag 3 på Access-Switchene vil en link-fejl som vist dele netværket i to halvdele. Derfor er der 50% chance for at trafikken når frem. |
|
For meget redundansHvis der anvendes for meget redundans, som for eksempel Distributions-Switch nummer tre, som vist på tegningen til højre. Dette gør konfigurationen meget kompleks.
|
|
For lidt redundansI den øverste tegning til højre er det "sparet" en forbindelse mellem de to Distributions-Switche. Hvis der opstår en Link-fejl som vist i nederste tegning til højre:
|
|
Asymetrisk RoutningI tegningen til højre kan der opstå følgende. Når en host på VLAN 2 skal have fat i sin Defaulte Gateway udsender den en ARP Request. Denne ARP Request opfanges af begge Distributions-Switche da de begge er med i HSRP. Hosten's MAC adresse kommer i ARP tabellen som har en Default Timeout på 4 timer. Samtidig lægges en linie i Content Addressable Memory (CAM) tabellen. Denne har en Default Timeout på 5 minutter. Da der ingen trafik er fra Hosten til HSRP Standby Routeren (Distributions-Switch A) vil CAM tabellen Time ud og blive fjernet efter 5 minutter. Da der anvendes Equal-Cost Load Balancing vil halvdelen af retur trafikken til Hosten komme til Distributiones-Switch A. Distributions-Switch A kender MAC-Adressen på hosten da den står i ARP tabellen men da der ikke står i CAM tabellen hvilken af portene - tilsluttet VLAN2 - Hosten er tilsluttet, vil Distributions-Switch A sende trafikken til alle Access-Switche. De fleste Access-Switche kender ikke Hostens MAC-adresse og flooder derfor trafikken til alle porte. For at undgå dette kan ARP tabellens Timeout sættes til det samme som CAM tabellens Timeout. Altså 5 minutter. nu vil Distributions-Switch A udsende en ARP Request når den modtager trafik til Hosten og lægge en linie i CAM tabelen. Men bedst af alt. Undgå at bruge samme VLAN på flere Access-Switche. |
Infrastruktur Services
IP telefoni
En Cisco IP telefon er en tre ports Switch og flytter kanten af netværket fra Access-Switchens port til porten i IP telefonen der er tilsluttet til brugerens PC.
en IP Telefon har som sagt en tre ports Switch indbygget. Porten der vender mod Access-Switchen kan fungere som en IEEE 802.1Q Trunk hvor data sendt fra telefonen kommer i et Voice VLAN og data fra PC'en sendes som default i native VLAN.
Quality of Service
Et Campus netværk er overdesignet således at der er mere båndbredde tilstede end der normalt anvendes. Tommelfingerreglen er at båndbredden mellem Access og Distributions-Switchene har 20 gange mere båndbredde end normalt anvendt. Imellem Distribution og Core-Switchene designes med 4 gange mere båndbredde end normalt.
På trods af den store båndbredde opstår der Congestion Points i netværket hvor traffik forsinkes eller kassereres. Derfor er det nødvendigt at differentiere mellem trafiktyper og konfigurere udstyret til at kassere det mindst prioriterede trafik, således Businress Critical trafik kommer igennem, og IP Telefoni ikke forsinkes. Derfor implementeres QoS.
Cisco Catalyst Sikkerheds funktioner
Port Security forhindrer MAC-adresse baserede angreb
Hvis en angriber laver et MAC address flooding angreb sender angriberen tilfældige MAC-adresser afsted til Switchen. Switchens CAM tabel vil blive fyldt, og Switchen kan ikke huske alle MAC-adresser. Derfor begynder Switchen at Floode pakkerne ud af alle porte, da den ikke ved hvilke MAC adresser der er på hvilke porte. Her kan angriberen således se trafik til andre Host og misbruge det.
Switch(config)# interface fastethernet 0/1 - 24
Switch(config-if)switchport port-security maximum 5
Switch(config-if)switchport port-security violation restrict
DHCP Snooping beskytter mod uaftoriserede DHCP servere
Dynamic ARP Inspection beskytter mod ARP Poisoning
IP Source Guard beskytter mod Spoffed IP Adresser
Konfigurations eksempel
ip dhcp snooping
ip dhcp snooping vlan 2-10
!
interface fastethernet 0/4
switchport mode access
switchport port-security maximum 3
switchport port-security
switchport port-security aging time 2
switchport port-security violation restrict
switchport port-security aging type inactivity
ip arp inspection limit rate 100
ip verify source port-security
ip dhcp snooping limit rate 100
!