现在的位置: 首页 > 综合 > 正文

Demystifying the OSPF database

2012年02月21日 综合 ⁄ 共 13117字 ⁄ 字号 评论 20 条

A lot of people troubleshoot OSPF, without ever once looking at the OSPF database and understanding the LSA types. I think this has more to do with the fact that they do not understand it properly and how to actually get information from it.

I hope to demystify it and show what a powerful troubleshooting tool it can be.

OSPFv2 for IPv4 has 7 main LSA types. You’ll probably only have experience with 6 of them as LSA type 6 was for Multicast Extensions which isn’t supported in IOS and a number of other vendors implementations.

I’ll attempt to show database output for Cisco IOS, Juniper JUNOS as well as Brocade/Foundry’s code. I can’t show all the types with Brocade as I don’t have a Brocade lab handy to create them all.

Let’s first have a look at what each OS gives as as viewable database options. Note that I’ve changed my public IPs and DNS names as appropriate.

Cisco:

CISCO#sh ip ospf database ? adv-router Advertising Router link states asbr-summary ASBR summary link states database-summary Summary of database external External link states internal Internal LSA information multicast Multicast Topology network Network link states nssa-external NSSA External link states opaque-area Opaque Area link states opaque-as Opaque AS link states opaque-link Opaque Link-Local link states router Router link states self-originate Self-originated link states summary Network summary link states topology Unicast Topology

Juniper:

darren@JUNOS> show ospf database ? Possible completions: <[Enter]> Execute this command advertising-router Router ID of advertising router area OSPF area ID asbrsummary Summary AS boundary router link-state advertisements brief Display brief output (default) detail Display detailed output extensive Display extensive output external External link-state advertisements instance Name of OSPF instance link-local Link local link-state advertisements logical-system Name of logical system, or 'all' lsa-id Link-state advertisement ID netsummary Summary network link-state advertisements network Network link-state advertisements nssa Not-so-stubby area link-state advertisements opaque-area Opaque area-scope link-state advertisements router Router link-state advertisements summary Display summary output

Brocade:

SSH@BROCADE#show ip ospf database link-state ? advertise Display link state by advertisement asbr Display link state by asbr link extensive Display detailed info of entries in OSPF database link-state-id Display link state by link-state ID network Display link state by network link nssa Display link state by NSSA opaque-area Display link state by opaque area router Display link state by router link router-id Display link state by router ID self-originate Display self-originated links-states sequence-number Display link state by sequence number summary Display link state by summary link

The database allows us to see information in all of the needed LSAs. Hence it is important to also know what each LSA actually does, and what information it’s supposed to contain. We’ll go through each of them and extract the required information from the database itself. Each time you look at the database itself and specify a type, you need to give an argument. That argument will depend on the lsa type.

Type 1 – Router LSA:
The router LSA is the lsa that each router originates. It contains information about the local router, it’s attached links and associated costs of those links, and routers it is adjacent to. This LSA is kept within the local area in which it is originated from. The argument is the router ID (RID) of each router
Cisco:

CISCO#sh ip ospf database router 10.100.0.33 OSPF Router with ID (196.196.196.196) (Process ID 1) Router Link States (Area 0) Routing Bit Set on this LSA in topology Base with MTID 0 LS age: 1611 Options: (No TOS-capability, DC) LS Type: Router Links Link State ID: 10.100.0.33 Advertising Router: 10.100.0.33 LS Seq Number: 80001FEB Checksum: 0x6B0C Length: 48 Area Border Router AS Boundary Router Number of Links: 2 Link connected to: another Router (point-to-point) (Link ID) Neighboring Router ID: 196.196.196.196 (Link Data) Router Interface address: 10.100.0.33 Number of MTID metrics: 0 TOS 0 Metrics: 1 Link connected to: a Stub Network (Link ID) Network/subnet number: 10.100.0.32 (Link Data) Network Mask: 255.255.255.252 Number of MTID metrics: 0 TOS 0 Metrics: 1

Juniper:

darren@JUNOS> show ospf database router advertising-router 10.100.0.33 extensive OSPF database, Area 0.0.0.0 Type ID Adv Rtr Seq Age Opt Cksum Len Router 10.100.0.33 10.100.0.33 0x80001feb 1778 0x22 0x6b0c 48 bits 0x3, link count 2 id 196.196.196.196, data 10.100.0.33, Type PointToPoint (1) Topology count: 0, Default metric: 1 id 10.100.0.32, data 255.255.255.252, Type Stub (3) Topology count: 0, Default metric: 1 Topology default (ID 0) Type: PointToPoint, Node ID: 196.196.196.196 Metric: 1, Bidirectional
  Aging timer 00:30:22
  Installed 00:29:35 ago, expires in 00:30:22, sent 00:29:33 ago
  Last changed 10w5d 20:28:57 ago, Change count: 3

Brocade:

SSH@BROCADE#show ip ospf database link-state router 10.100.0.33
Area ID         Type LS ID           Adv Rtr         Seq(Hex) Age  Cksum  SyncState
0               Rtr  10.100.0.33     10.100.0.33     80001feb 1829 0x6b0c Done
  LSA Header:  options: 0x22, seq-nbr: 0x80001feb, length: 48, flags:0x0300
  link id = 196.196.196.196, link data = 10.100.0.33, type = point-to-point(1)
  tos count = 0, tos0_metric = 1
  link id = 10.100.0.32, link data = 255.255.255.252, type = stub(3)
  tos count = 0, tos0_metric = 1

All of the above pretty much tell us the same thing. The router with the RID of 10.100.0.33 has 2 links in OSPF. 1 is a point-to-point link and the other is a stub link. Pretty simple stuff.

Type 2 – Network LSA:
A network LSA is originated by the DR on the segment. DRs are only required on segment in which there are more than 2 OSPF speakers. OSPF treats ethernet segments as non point-to-point by default, so even if there are only 2 routers on there, there will still be a DR. You can change this behaviour by configuring the links as point-to-point. Type 2′s are local to the area in which they originate. The argument is the IP address of the physical interface on the segment of the DR
Cisco:

CISCO#sh ip ospf database network 10.0.10.6 OSPF Router with ID (248.248.248.248) (Process ID 1) Net Link States (Area 0) Routing Bit Set on this LSA LS age: 1196 Options: (No TOS-capability, No DC) LS Type: Network Links Link State ID: 10.0.10.6 (address of Designated Router) Advertising Router: r1.company.com LS Seq Number: 8000706A Checksum: 0xDCE8 Length: 32 Network Mask: /30 Attached Router: 196.196.196.196 Attached Router: 248.248.248.248

Juniper:

darren@JUNOS> show ospf database network lsa-id 10.0.10.6 extensive

    OSPF database, Area 0.0.0.0
 Type       ID               Adv Rtr           Seq      Age  Opt  Cksum  Len
Network  10.0.10.6        196.196.196.196   0x8000706a  1374  0x2  0xdce8  32
  mask 255.255.255.252
  attached router 196.196.196.196
  attached router 248.248.248.248
  Topology default (ID 0)
    Type: Transit, Node ID: 248.248.248.248
      Metric: 0, Bidirectional
    Type: Transit, Node ID: 196.196.196.196
      Metric: 0, Bidirectional
  Aging timer 00:37:06
  Installed 00:22:50 ago, expires in 00:37:06, sent 00:22:49 ago
  Last changed 10w5d 18:09:57 ago, Change count: 1

Brocade:

SSH@BROCADE#show ip ospf database link-state network 10.0.10.6
Area ID         Type LS ID           Adv Rtr         Seq(Hex) Age  Cksum  SyncState
0               Net  10.0.10.6       196.196.196.196  8000706a 1411 0xdce8 Done
  LSA Header:  options: 0x02, seq-nbr: 0x8000706a, length: 32
  NetworkMask: 255.255.255.252
  attached router: 196.196.196.196
  attached router: 248.248.248.248

All 3 of the above outputs tell us that 10.0.10.6 is originating a type 2 lsa which says on that particular segment there are 2 routers attached.

Type 3 – Network Summary LSA:
Type 3′s are originated by ABRs. The Type3 tells OSPF speakers in 1 area how to reach prefixes in another area, through the advertising ABR. The argument is the network prefix itself.
Cisco:

CISCO#sh ip ospf database summary 1.1.1.0 OSPF Router with ID (248.248.248.248) (Process ID 1) Summary Net Link States (Area 0) Routing Bit Set on this LSA LS age: 258 Options: (No TOS-capability, No DC, Upward) LS Type: Summary Links(Network) Link State ID: 1.1.1.0 (summary Network Number) Advertising Router: r2.company.com LS Seq Number: 80000001 Checksum: 0x9D57 Length: 28 Network Mask: /31 TOS: 0 Metric: 1000

Juniper:

darren@JUNOS> show ospf database netsummary lsa-id 1.1.1.0 extensive OSPF database, Area 0.0.0.0 Type ID Adv Rtr Seq Age Opt Cksum Len Summary 1.1.1.0 196.196.196.196 0x80000001 314 0x2 0x9d57 28 mask 255.255.255.254 Topology default (ID 0) -> Metric: 1000 Aging timer 00:54:46 Installed 00:05:09 ago, expires in 00:54:46, sent 00:05:09 ago Last changed 00:05:09 ago, Change count: 1

Brocade:

SSH@BROCADE#show ip ospf database link-state summary 1.1.1.0 Area ID Type LS ID Adv Rtr Seq(Hex) Age Cksum SyncState 0 Summ 1.1.1.0 196.196.196.196 80000001 341 0x9d57 Done LSA Header: options: 0x02, seq-nbr: 0x80000001, length: 28 NetworkMask: 255.255.255.254 TOS 0: metric: 1000

All 3 of the above show me the network address and subnet mask of the network, the ABR who originated the LSA as well as the ABRs cost to the network. Note that a Typ3 LSA can only contain a single network. A new type 3 lsa needs to be generated for each and every network that an ABR is advertising. i.e. not very efficient. A type 3 is flooded to all areas.

Type 4 – ASBR Summary LSA:
Type4′s can be a little bit confusing. When an ASBR advertises an external prefix, the next-hop will be the ASBR’s IP address. OSPF speakers in other areas need to know how to get to this ASBR. A Type4 will be originated by an ABR attatched to the same area an an ASBR, and will have information of how to get to the ASBR. An ABR will also advertise a Type4 from another ABR if the ASBR is 2 areas away and so on. Take a quick look at the image below that I used for the Type7 example. Both R3 and R2 originate Type4′s that R1 and R6 will be able to see:

Cisco:

R6#sh ip ospf database asbr-summary 10.34.34.3

            OSPF Router with ID (10.16.16.6) (Process ID 1)

                Summary ASB Link States (Area 2)

  Routing Bit Set on this LSA
  LS age: 415
  Options: (No TOS-capability, DC, Upward)
  LS Type: Summary Links(AS Boundary Router)
  Link State ID: 10.34.34.3 (AS Boundary Router address)
  Advertising Router: 10.13.13.1
  LS Seq Number: 80000001
  Checksum: 0xAB1
  Length: 28
  Network Mask: /0
        TOS: 0  Metric: 10

Type 5 – External LSA:
Type5 LSA’s are originated by ASBRs. Each LSA contains information about the external prefix. The argument needed is the prefix itself. Like Type3s, ASBRs need to originate a separate LSA for each and every prefix it needs to advertise.
Cisco:

CISCO#sh ip ospf database external 10.0.2.112 OSPF Router with ID (248.248.248.248) (Process ID 1) Type-5 AS External Link States Routing Bit Set on this LSA LS age: 1382 Options: (No TOS-capability, No DC) LS Type: AS External Link Link State ID: 10.0.2.112 (External Network Number ) Advertising Router: r3.company.com LS Seq Number: 80004DCD Checksum: 0x6065 Length: 36 Network Mask: /29 Metric Type: 2 (Larger than any link state path) TOS: 0 Metric: 1 Forward Address: 0.0.0.0 External Route Tag: 0

Juniper:

darren@JUNOS> show ospf database external lsa-id 10.0.2.112 extensive OSPF AS SCOPE link state database Type ID Adv Rtr Seq Age Opt Cksum Len Extern 10.0.2.112 196.196.196.196 0x80004dcd 1546 0x2 0x6065 36 mask 255.255.255.248 Topology default (ID 0) Type: 2, Metric: 1, Fwd addr: 0.0.0.0, Tag: 0.0.0.0 Aging timer 00:34:13 Installed 00:22:43 ago, expires in 00:34:14, sent 00:22:41 ago Last changed 19w1d 19:03:40 ago, Change count: 1

Brocade:

SSH@BROCADE#show ip ospf database external-link-state link-state-id 10.0.2.112 Ospf ext link-state by link-state ID 10.0.2.112 are in the following: Type-5 AS External Link States Index Age LS ID Router Netmask Metric Flag Fwd Address SyncState 587 1500 10.0.2.112 196.196.196.196 fffffff8 00000001 0000 0.0.0.0 Done LSA Header: age: 1500, options: 0x02, seq-nbr: 0x80004dcd, length: 36 NetworkMask: 255.255.255.248 TOS 0: metric_type: 2, metric: 1 forwarding_address: 0.0.0.0 external_route_tag: 0

Type 7 – NSSA External LSA:
Type7′s can also be a bit confusing. A Type7 is originated by an ASBR into it’s local areas. It tell other routers in the area about how to get to external prefixes. Like the Type3 and Type5, a separate LSA is needed for each prefix. The argument is the prefix. When a Type7 LSA reaches an ABR, the ABR will convert that Type7 into a Type5 LSA. It’ll also change the forwarding address. But what happens if the ASBR is also the ABR itself? Does it convert itself? Well, let’s lab it up to see. I can only do this on the Cisco as I have that lab. I’ll add Junos output sometime in the future.

Let’s use the following topology:

 

 

 

 

 

 

 

 

 

Area 1 is an NSSA area. Router 4 is redistributing it’s loopback interface (4.4.4.4/32) into area 1.
Cisco:

R2#sh ip ospf database nssa-external 4.4.4.4 OSPF Router with ID (10.24.24.2) (Process ID 1) Type-7 AS External Link States (Area 1) LS age: 726 Options: (No TOS-capability, Type 7/5 translation, DC) LS Type: AS External Link Link State ID: 4.4.4.4 (External Network Number ) Advertising Router: 10.34.34.4 LS Seq Number: 80000001 Checksum: 0x29CC Length: 36 Network Mask: /32 Metric Type: 2 (Larger than any link state path) TOS: 0 Metric: 20 Forward Address: 10.24.24.4 External Route Tag: 0

The contents of the LSA show us the prefix and mask. It also tells us where to send the packets to. In this case 10.24.24.4.

what about R1 though?

R1#sh ip ospf database nssa-external 4.4.4.4

            OSPF Router with ID (10.13.13.1) (Process ID 1)

There is no Type7 for it to see. This is because the ABRs converted that Type7 into a Type5. Let’s check this:

R1#sh ip ospf database nssa-external 4.4.4.4 OSPF Router with ID (10.13.13.1) (Process ID 1) R1#sh ip ospf database external 4.4.4.4 OSPF Router with ID (10.13.13.1) (Process ID 1) Type-5 AS External Link States Routing Bit Set on this LSA LS age: 899 Options: (No TOS-capability, DC) LS Type: AS External Link Link State ID: 4.4.4.4 (External Network Number ) Advertising Router: 10.34.34.3 LS Seq Number: 80000001 Checksum: 0xC33D Length: 36 Network Mask: /32 Metric Type: 2 (Larger than any link state path) TOS: 0 Metric: 20 Forward Address: 10.24.24.4 External Route Tag: 0

R1 sees this information as a Type5 LSA. But there is a very important change here. Notice the forward address. This is R4′s address. If you look at the Type5 example in the post above, you’ll see that the forward address is 0.0.0.0 – This tells the router that the next-hop will be the ABR that advertised the LSA. This LSA is coming from R3, but it keeps the next-hop to 10.24.24.4 – You can actually change this behaviour if you somehow require it:

R3(config)#router ospf 1 R3(config-router)#area 1 nssa translate type7 suppress-fa R1#sh ip ospf database external 4.4.4.4 OSPF Router with ID (10.13.13.1) (Process ID 1) Type-5 AS External Link States Routing Bit Set on this LSA LS age: 22 Options: (No TOS-capability, DC) LS Type: AS External Link Link State ID: 4.4.4.4 (External Network Number ) Advertising Router: 10.34.34.3 LS Seq Number: 80000002 Checksum: 0xC07D Length: 36 Network Mask: /32 Metric Type: 2 (Larger than any link state path) TOS: 0 Metric: 20 Forward Address: 0.0.0.0 External Route Tag: 0

Not only that, but surely both R2 and R3 converting and advertising into the same area is a waste of resource? It certainly is! There is an election that takes place that tells the ABRs which one will actually be doing the translations. Maybe I’ll do a blog post in future detailing this.

目前有 20 条留言    访客:19 条, 博主:0 条 ,引用: 1 条

  1. Cheap Content Services 2012年02月21日 上午 4:43  @回复  Δ1楼 回复

    Hello Website Owner! I found your blog on Google and I really like it. My team provides professional article writing, and we are able to do it for $0.01 per word – that’s $5 for a 500 word article. All of our writers are based in the United States, and all of our articles passes the Copyscape test. If you are interested in using our service, or simply want to give us a try, please check out website out

  2. Google Tom 2012年02月21日 下午 12:33  @回复  Δ2楼 回复

    Hello Website Owner! Great blog, I love it! I noticed you were using WordPress and I figure I’d share a tip with you. There’s a plugin for WordPress I use on my own websites that will help you boost your traffic significantly – guaranteed. If you’re serious about making money online, check out Keep up the quality work!

  3. get laid nyc 2012年02月23日 上午 12:57  @回复  Δ3楼 回复

    I am curious to find out what blog platform you are utilizing? I’m experiencing some small security problems with my latest site and I would like to find something more risk-free. Do you have any recommendations?

  4. a3017001 2012年02月23日 下午 7:47  @回复  Δ4楼 回复

    I’ve said that least 3017001 times. SCK was here

  5. Aisha 2012年02月23日 下午 10:43  @回复  Δ5楼 回复

    The blog is cool

  6. Dorce 2012年02月23日 下午 11:15  @回复  Δ6楼 回复

    вот

  7. Adriana 2012年02月25日 上午 4:06  @回复  Δ7楼 回复

    thanks for share!

  8. webkinz clothes for webkinz 2012年02月27日 下午 8:23  @回复  Δ8楼 回复

    I will right away grab your rss as I can not find your e-mail subscription link or newsletter service. Do you’ve any? Please let me know in order that I could subscribe. Thanks.

  9. Morgan, Glenda O. 2012年02月27日 下午 11:43  @回复  Δ9楼 回复
  10. Nelson, Lynne E. 2012年02月29日 上午 3:37  @回复  Δ10楼 回复

    Download Deviation 2012 DVDRiP

  11. Henderson, Erika E. 2012年03月01日 下午 7:24  @回复  Δ11楼 回复

    I precisely had to appreciate you once more. I am not sure the things that I would have handled without the entire opinions shown by you concerning my theme. It became an absolute traumatic scenario for me, but witnessing the very professional form you processed the issue made me to leap over joy. I’m just grateful for your advice and then hope you comprehend what a great job you were doing instructing people all through your webblog. Most likely you haven’t got to know any of us.

  12. alto 2012年03月02日 下午 6:52  @回复  Δ12楼 回复

    I figured that the more I read a good book, the more intelligent I get. You might want to include that to your site

  13. CompTIA 2012年03月03日 下午 11:20  @回复  Δ13楼 回复

    I am glad that I navigated to your page. I’ll be now subscribing to your feed so that I can get the latest updates.

  14. yahoo small business web hosting services 2012年03月05日 上午 7:19  @回复  Δ14楼 回复

    Was bored and nothing else to do at my apartment, and started searching for blogs and I discovered your web site! Nonetheless, I am wondering on whether you’ll be keen to alternate links with me – simply approve this remark, and I will add your link to my website that has PR3. Hopefully you will agree! Cheers! ps – sorry i am pretty not good with my english though, hope you don’t mind.

  15. Guide to Ancient Egyptian Astronomy and Astrology 2012年03月05日 下午 5:14  @回复  Δ15楼 回复

    I am baffled by the information in this article post I found it to be not just very fascinating however it also made me reflect. It is tough now a days to locate appropriate information to ones search, so I’m happy that I found this article post

  16. windows internet radio guide 2012年03月05日 下午 9:13  @回复  Δ16楼 回复

    Thanks for another magnificent article. Where else could anybody get that type of info in such a perfect way of writing? I’ve a presentation next week, and I’m on the look for such info.

  17. 50 ft internet modem cable 2012年03月17日 下午 11:00  @回复  Δ17楼 回复

    Very nice post. I just stumbled upon your weblog and wanted to say that I’ve really enjoyed surfing around your blog posts. In any case I will be subscribing to your rss feed and I hope you write again soon!

  18. weber genesis grill grate 2012年03月24日 下午 4:23  @回复  Δ18楼 回复

    What¡¦s Happening i am new to this, I stumbled upon this I’ve discovered It absolutely useful and it has helped me out loads. I’m hoping to give a contribution & aid other users like its aided me. Good job.

  19. Tonisha Assis 2012年03月25日 下午 6:09  @回复  Δ19楼 回复

    certainly like your website however you have to check the spelling on several of your posts. A number of them are rife with spelling problems and I in finding it very bothersome to inform the reality then again I¡¦ll certainly come again again.

外部的引用: 1 条

  • IT598技术-IT技术-IT认证-Cisco » Blog Archive » OSPF – Type 1 LSA vs Type 5 LSA (passive vs redistribute)

给我留言

留言无头像?