Difference between revisions of "Cisco OSPF"

From HackerNet
Jump to: navigation, search
Line 1: Line 1:
Open Shortest Path First kommunicerar med multicast som alltid har ttl satt till 1. OSPF använder IP protokoll #89. RFC 2328
+
Link-state routing protokoll känner till alla länkar i topologin och deras ''operational states'' och lagrar detta i en LSDB. Routrar måste ha ett OSPF-id för att kunna skicka meddelanden. Open Shortest Path First kommunicerar med multicast som alltid har ttl satt till 1. OSPF använder IP protokoll #89. RFC 2328
  
Type: Link State
+
* Type: Link State
 +
* Algorithm: Dijkstra
 +
* AD: 110
 +
* Metric: Cost (Bandwidth)
 +
* Protocols: IP
  
Algorithm: Dijkstra
+
'''Router ID''' <br/>
 +
På Ciscoenheter väljs ID enligt följande ordning:
 +
# router-id kommandot
 +
# Högsta IP-adressen på ett no-shut loopback interface (som ej är assignat någon annan OSPF-process)
 +
# Högsta IP-adressen på ett no-shut interface (som ej är assignat någon annan OSPF-process)
 +
Interfacen behöver inte vara nåbara eller ha något med OSPF att göra utan alla interface jämförs. ID ändras endast när processen startas om eller router-id-kommandot körs.
  
AD: 110
+
'''Paket-typer''' <br/>
 +
* Hello: Upptäcka grannar. Innehåller mask, timers, flaggor, DR/BDR (om det finns) och router-ID för grannar.
 +
* Database Description: Innehåller LSA headers under den initiala topologi-synken
 +
* Link-State Request: Innehåller vilka LSA:er som avsändaren vill ha alla detaljer om
 +
* Link-State Update: Innehåller alla detaljer om LSA:er och skickas på förfrågan eller vid topologiändring
 +
* Link-State Acknowledgment: LSU confirmation
  
Metric: Cost (Bandwidth)
+
'''Grannskap''' <br/>
 
 
Protocols: IP
 
 
 
===Grannskap===
 
 
Neighbors måste komma överens om:
 
Neighbors måste komma överens om:
 
* Subnät/Mask
 
* Subnät/Mask
Line 23: Line 33:
 
Graceful shutdown, en OSPF router skickar ett HELLO utan grannar då tas grannskapet ner.
 
Graceful shutdown, en OSPF router skickar ett HELLO utan grannar då tas grannskapet ner.
  
'''Neighbor states'''
+
'''Neighbor states''' <br/>
 +
Kronologisk ordning
 +
* Down: Initial state. Om det inte kommer in några OSPF-paket under Dead interval blir grannen down.
 +
* Attempt: Gäller endast NBMA och point-to-multipoint nonbroadcast.
 +
* Init: Ett hello (utan mottagarens router-ID) har tagits emot.
 +
* 2-way: Ett hello med mottagarens router-ID har tagits emot.
 +
* ExStart: Utbyta tomma DD för att bestämma master/slave.
 +
* Exchange: Utbyta database description
 +
* Loading: LSA:er tankas över
 +
* Full: Allt klart
  
===LSA-typer===
+
'''LSA-typer''' <br/>
 +
 
 +
'''Designated Router''' <br/>
  
 
===Rekommendationer===
 
===Rekommendationer===
Line 61: Line 82:
 
'''AD'''
 
'''AD'''
 
  router ospf 1
 
  router ospf 1
   distance 80
+
   distance ospf intra-area 200
 +
  distance ospf inter-area 100
 +
  distance ospf external 120
  
 
DR/BDR election, multiaccess network
 
DR/BDR election, multiaccess network
Line 142: Line 165:
  
 
===Filtering===
 
===Filtering===
 +
'''Inter-area'''
 
  router ospf 1
 
  router ospf 1
 
  area 1 filter-list prfix PFXLIST out
 
  area 1 filter-list prfix PFXLIST out
Line 147: Line 171:
 
  ip prefix-list PFXLIST seq 5 deny 10.10.0.0/24
 
  ip prefix-list PFXLIST seq 5 deny 10.10.0.0/24
 
  ip prefix-list PFXLIST seq 10 permit 0.0.0.0/0 le 32
 
  ip prefix-list PFXLIST seq 10 permit 0.0.0.0/0 le 32
 +
 +
'''Intra-area''' <br/>
 +
Går att göra med en distribute-list dock måste alla routrar vara konfade likadant annars kan det bli blackholing.
 +
router ospf 1
 +
  distribute-list 1
 +
access-list 1 deny 172.16.3.1
 +
access-list 1 permit any
 +
Alternativt
 +
summary-address 10.0.0.0 255.255.255.0 not-advertise
  
 
===Virtual Link===
 
===Virtual Link===

Revision as of 18:47, 8 March 2016

Link-state routing protokoll känner till alla länkar i topologin och deras operational states och lagrar detta i en LSDB. Routrar måste ha ett OSPF-id för att kunna skicka meddelanden. Open Shortest Path First kommunicerar med multicast som alltid har ttl satt till 1. OSPF använder IP protokoll #89. RFC 2328

  • Type: Link State
  • Algorithm: Dijkstra
  • AD: 110
  • Metric: Cost (Bandwidth)
  • Protocols: IP

Router ID
På Ciscoenheter väljs ID enligt följande ordning:

  1. router-id kommandot
  2. Högsta IP-adressen på ett no-shut loopback interface (som ej är assignat någon annan OSPF-process)
  3. Högsta IP-adressen på ett no-shut interface (som ej är assignat någon annan OSPF-process)

Interfacen behöver inte vara nåbara eller ha något med OSPF att göra utan alla interface jämförs. ID ändras endast när processen startas om eller router-id-kommandot körs.

Paket-typer

  • Hello: Upptäcka grannar. Innehåller mask, timers, flaggor, DR/BDR (om det finns) och router-ID för grannar.
  • Database Description: Innehåller LSA headers under den initiala topologi-synken
  • Link-State Request: Innehåller vilka LSA:er som avsändaren vill ha alla detaljer om
  • Link-State Update: Innehåller alla detaljer om LSA:er och skickas på förfrågan eller vid topologiändring
  • Link-State Acknowledgment: LSU confirmation

Grannskap
Neighbors måste komma överens om:

  • Subnät/Mask
  • Area
  • Timers
  • Olika router-ID
  • Flaggor: Stub, NSSA
  • MTU
  • Authentication type
  • Kompatibla nätverkstyper, DR-election eller ej

Graceful shutdown, en OSPF router skickar ett HELLO utan grannar då tas grannskapet ner.

Neighbor states
Kronologisk ordning

  • Down: Initial state. Om det inte kommer in några OSPF-paket under Dead interval blir grannen down.
  • Attempt: Gäller endast NBMA och point-to-multipoint nonbroadcast.
  • Init: Ett hello (utan mottagarens router-ID) har tagits emot.
  • 2-way: Ett hello med mottagarens router-ID har tagits emot.
  • ExStart: Utbyta tomma DD för att bestämma master/slave.
  • Exchange: Utbyta database description
  • Loading: LSA:er tankas över
  • Full: Allt klart

LSA-typer

Designated Router

Rekommendationer

  • Set your maximum LSA settings to keep from killing weak boxes
  • Baseline your network so you know how many LSAs normally float around
  • Configure LSA warnings to alert of problems
  • Crash each type of box on your network in a lab environment so you know what it will do under stress.

Konfiguration

router ospf [process-id]

router-id for this OSPF process (in IPv4 address format)

router-id [OSPF router-id] 
log-adjacency-changes

Uppdatera reference bandwidth till 100G

router ospf 1
auto-cost reference-bandwidth 100000
exit
show ip ospf interface | i Cost

Enable routing on an IP network

network [network-number] [wildcard-mask] area [area-id]

Slå på routing för alla nät och styr grannskap/uppdateringar med passive-interface

passive-interface default
network 0.0.0.0 0.0.0.0 area 0
no passive-interface [interface]

Default route

default-information originate

Eller om man inte har någon gateway of last resort

default-information originate always

AD

router ospf 1
 distance ospf intra-area 200
 distance ospf inter-area 100
 distance ospf external 120

DR/BDR election, multiaccess network

interface [interface]
ip ospf priority [number]  #default 1
exit

Advertise a maximum metric so that other routers do not prefer the router as an intermediate hop

max-metric router-lsa on-startup 60

Authentication

Enable MD5 authentication in Area 0

area 0 authentication message-digest

Enable OSPF authentication on an interface

interface [interface]
ip ospf 1 area 0
ip ospf message-digest-key 10 md5 [password]
exit

Key-chain

key chain TEST
key 1
key-string SECRET
cryptographic-algorithm hmac-sha-512
int gi2
ip ospf authentication key-chain TEST

OSPFv3, IPsec

int gi2
ospfv3 encryption ipsec spi 2001 esp aes-cbc 256 0 ABC123... sha1 0 CBA321...
ipv6 ospf encryption ipsec spi 2001 esp aes-cbc 256 0 ABC123... sha1 0 CBA321...

Summarization

ABR

router ospf 1
area 10 range 10.10.0.0 255.255.252.0
exit

ASBR

router ospf 1
summary-address 10.10.0.0 255.255.252.0
exit

Tuning protocol parameters

ip ospf hello-interval seconds
ip ospf dead-interval seconds
ip ospf retransmission-interval seconds
ip ospf transmit-delay seconds

Timers

router ospf 1
timers throttle spf 100 1000 10000
timers pacing flood 50
timers paciong retransmission 75
timers throttle lsa all 10 4000 6000
timers lsa arrival 2000

Area types

Stub No LSA type 5

area 1 stub

Stub bit is sent in hello packets

Totally Stubby No LSA type 3,4,5. Default route only.
ABR

area 1 stub no-summary

Others

area 1 stub

NSSA LSA type 7

area 1 nssa

NSSA Totally Stubby LSA type 7. No LSA type 3,4.

area 1 nssa no-summary

Filtering

Inter-area

router ospf 1
area 1 filter-list prfix PFXLIST out
ip prefix-list PFXLIST seq 5 deny 10.10.0.0/24
ip prefix-list PFXLIST seq 10 permit 0.0.0.0/0 le 32

Intra-area
Går att göra med en distribute-list dock måste alla routrar vara konfade likadant annars kan det bli blackholing.

router ospf 1
 distribute-list 1
access-list 1 deny 172.16.3.1
access-list 1 permit any

Alternativt

summary-address 10.0.0.0 255.255.255.0 not-advertise

Virtual Link

Virtual link är rekommenderat som backup- eller temporär anslutning.

R1

router ospf 1
network 10.0.1.0 0.0.0.255 area 1
network 1.1.1.0 0.0.0.255 area 0
area 1 virtual-link 3.3.3.3  #Router-ID

R3

router ospf 1
network 10.0.1.0 0.0.0.255 area 1
network 10.0.2.0 0.0.0.255 area 2
network 3.3.3.0 0.0.0.255 area 2
area 1 virtual-link 1.1.1.1  #Router-ID

Show

show ip ospf virtual-links

LFA

Loop-Free Alternate Fast Reroute

Diverse

Loopback

ip ospf network point-to-point
exit

MTU mismatch

ip ospf mtu-ignore

Discard

no discard-route external

Redistribution

Default seed metric: 20 (except BGP)

Static

redistribute static

RIP

redistribute rip subnets

EIGRP

redistribute eigrp 1 subnets 

Troubleshoot

show ip ospf neighbor
ping 224.0.0.5
show ip ospf interface brief
show ip protocols
show ip ospf events
show ip ospf border-routers
show ip ospf topology-info
show ip ospf database router

Reset database and neighbors

clear ip ospf process