首页资源分类嵌入式系统其他 > CCNP 官方全教程(2015最新版本)

CCNP 官方全教程(2015最新版本)

已有 445110个资源

下载专区

上传者其他资源

    文档信息举报收藏

    标    签:CCNP

    分    享:

    文档简介

    CCNP 官方全教程(2015最新版本)

    文档预览

    From the Library of Alexey Evseenko CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Kevin Wallace CCIE No. 7945 Cisco Press 800 East 96th Street Indianapolis, IN 46240 From the Library of Alexey Evseenko ii CCNP Routing and Switching ROUTE 300-101 Official Cert Guide CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Kevin Wallace Copyright© 2015 Pearson Education, Inc. Published by: Cisco Press 800 East 96th Street Indianapolis, IN 46240 USA All rights reserved. No part of this book may be reproduced or transmitted in any form or by any means, electronic or mechanical, including photocopying, recording, or by any information storage and retrieval system, without written permission from the publisher, except for the inclusion of brief quotations in a review. Printed in the United States of America First Printing November 2014 Library of Congress Control Number: 2014951132 ISBN-13: 978-1-58720-559-0 ISBN-10: 1-58720-559-9 Warning and Disclaimer This book is designed to provide information about the Cisco ROUTE exam (300-101). Every effort has been made to make this book as complete and as accurate as possible, but no warranty or fitness is implied. The information is provided on an “as is” basis. The authors, Cisco Press, and Cisco Systems, Inc. shall have neither liability nor responsibility to any person or entity with respect to any loss or damages arising from the information contained in this book or from the use of the discs or programs that may accompany it. The opinions expressed in this book belong to the authors and are not necessarily those of Cisco Systems, Inc. From the Library of Alexey Evseenko iii Trademark Acknowledgments All terms mentioned in this book that are known to be trademarks or service marks have been appropriately capitalized. Cisco Press or Cisco Systems, Inc., cannot attest to the accuracy of this information. Use of a term in this book should not be regarded as affecting the validity of any trademark or service mark. Special Sales For information about buying this title in bulk quantities, or for special sales opportunities (which may include electronic versions; custom cover designs; and content particular to your business, training goals, marketing focus, or branding interests), please contact our corporate sales department at corpsales@pearsoned.com or (800) 382-3419. For government sales inquiries, please contact governmentsales@pearsoned.com. For questions about sales outside the U.S., please contact international@pearsoned.com. Feedback Information At Cisco Press, our goal is to create in-depth technical books of the highest quality and value. Each book is crafted with care and precision, undergoing rigorous development that involves the unique expertise of members from the professional technical community. Readers’ feedback is a natural continuation of this process. If you have any comments regarding how we could improve the quality of this book, or otherwise alter it to better suit your needs, you can contact us through email at feedback@ciscopress.com. Please make sure to include the book title and ISBN in your message. We greatly appreciate your assistance. Publisher: Paul Boger Copy Editor: John Edwards Associate Publisher: Dave Dusthimer Business Operation Manager, Cisco Press: Jan Cornelssen Technical Editors: Michelle Plumb, Michael J. Shannon Editorial Assistant: Vanessa Evans Executive Editor: Brett Bartow Cover Designer: Mark Shirar Managing Editor: Sandra Schroeder Composition: Bronkella Publishing Senior Development Editor: Christopher Cleveland Senior Project Editor: Tonya Simpson Indexer: Tim Wright Proofreader: Debbie Williams From the Library of Alexey Evseenko iv CCNP Routing and Switching ROUTE 300-101 Official Cert Guide About the Author Kevin Wallace, CCIEx2 No. 7945 (Route/Switch and Collaboration), is a Certified Cisco Systems Instructor (CCSI No. 20061) and holds multiple Cisco professional and associate-level certifications in the Route/Switch, Collaboration, Security, Design, and Data Center tracks. With Cisco experience dating back to 1989, Kevin has been a network design specialist for the Walt Disney World Resort, an instructor of Cisco courses for Skillsoft, and a network manager for Eastern Kentucky University. Currently, Kevin produces video courses and writes books for Cisco Press/Pearson IT Certification (http://kwtrain.com/books). Also, he owns and operates Kevin Wallace Training, LLC (http://kwtrain.com), a provider of self-paced training materials that simplify computer networking. Kevin holds a Bachelor of Science degree in electrical engineering from the University of Kentucky, and he lives in central Kentucky with his wife (Vivian) and two daughters (Sabrina and Stacie). Kevin can be followed on these social media platforms: Blog: http://kwtrain.com Twitter: http://twitter.com/kwallaceccie Facebook: http://facebook.com/kwallaceccie YouTube: http://youtube.com/kwallaceccie LinkedIn: http://linkedin.com/in/kwallaceccie Google+: http://google.com/+KevinWallace From the Library of Alexey Evseenko v About the Technical Reviewers Michelle Plumb is a full-time CCSI (Certified Cisco Systems Instructor) as well as being certified as a Cisco Leading Classroom Virtual Instructor for Skillsoft. Michelle has 25 plus years’ experience in the field as an IT professional and telephony specialist. She maintains a high level of Cisco, Microsoft, and CompTIA certifications. Michelle has been a technical reviewer for numerous books related to the Cisco CCNP Routing and Switching, CCNP Voice, and CompTIA course material tracks. She has also written numerous articles around training and implementation of modern technologies. When she is not busy trying out the latest technology gadgets, she spends time at home in Phoenix, Arizona, with her husband and two dogs. Michael J. Shannon began his career in IT when he transitioned from a studio recording engineer to a network technician for a large telecom in the early 1990s. He soon began to focus on security and was one of the first to attain the Certified HIPAA Security Specialist (CHSS) certification. He has worked as an employee, contractor, and consultant for a number of large companies including Platinum Technologies, MindSharp, IBM, State Farm, Fujitsu, Skillsoft, Pearson PLC, and several others. He has attained the following certifications: CCSI No. 32364, CISSP, CCSP/CCNP Security, ITIL 2011 Intermediate SO/RCV, CWNA, MCSE, Security+, and Network+. He has authored several books and written several articles concerning HealthCare IT Security. He resides with his wife in Corpus Christi, Texas. From the Library of Alexey Evseenko vi CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Dedication For the greatest teachers in my life. Career: my role model, Walter Elias Disney. Mentally: authors Zig Ziglar and Anthony Robbins. Spiritually: Pastors Dr. Virgil Grant and Michael Denney. Physically: personal trainers Christopher Poe and Terri Stein (along with all the trainers at Edge Body Boot Camp). Emotionally: the wisest person I know, my best friend and wife, Vivian Wallace. From the Library of Alexey Evseenko vii Acknowledgments I am very grateful to executive editor Brett Bartow. Over the years, Brett has given me many opportunities to reach people in the Cisco community through books and videos. Also, thanks to the entire team at Cisco Press. Working with each of you is a pleasure. To my friend Wendell Odom, who made major contributions to this book, thank you for all you’ve done for the Cisco community. Thanks also go out to technical editors Michelle Plumb and Michael Shannon. I’ve had the privilege of working with each of you and respect how deeply you care about your students. What I do would be impossible without support from my wife, Vivian, and my daughters, Stacie and Sabrina. Knowing that you are cheering me on means more to me than you know. Finally, thanks to Jesus Christ, the source of my strength. From the Library of Alexey Evseenko viii CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Contents at a Glance Introduction xxix Part I Chapter 1 Chapter 2 Fundamental Routing Concepts Characteristics of Routing Protocols 3 Remote Site Connectivity 47 Part II Chapter 3 Chapter 4 Chapter 5 Chapter 6 Chapter 7 Chapter 8 Chapter 9 IGP Routing Protocols IPv6 Review and RIPng 71 Fundamental EIGRP Concepts 121 Advanced EIGRP Concepts 155 EIGRP for IPv6 and Named EIGRP 233 Fundamental OSPF Concepts 259 The OSPF Link-State Database 301 Advanced OSPF Concepts 345 Part III Route Redistribution and Selection Chapter 10 Route Redistribution 399 Chapter 11 Route Selection 471 Part IV Internet Connectivity Chapter 12 Fundamentals of Internet Connectivity 511 Chapter 13 Fundamental BGP Concepts 533 Chapter 14 Advanced BGP Concepts 595 Chapter 15 IPv6 Internet Connectivity 669 Part V Router and Routing Security Chapter 16 Fundamental Router Security Concepts 701 Chapter 17 Routing Protocol Authentication 737 Part VI Final Preparation Chapter 18 Final Preparation 769 From the Library of Alexey Evseenko ix Part VII Appendixes Appendix A Answers to the “Do I Know This Already?” Quizzes 779 Appendix B ROUTE Exam Updates 805 Appendix C Conversion Tables 809 Index 812 CD-Only Appendixes and Glossary Appendix D Memory Tables Appendix E Memory Tables Answer Key Appendix F Completed Planning Practice Tables Appendix G Study Planner Glossary From the Library of Alexey Evseenko Contents Introduction xxix Part I Chapter 1 Fundamental Routing Concepts Characteristics of Routing Protocols 3 “Do I Know This Already?” Quiz 3 Foundation Topics 6 Routing Protocol Fundamentals 6 The Role of Routing in an Enterprise Network 6 Routing Protocol Selection 7 Scalability 8 Vendor Interoperability 8 IT Staff’s Familiarity with Protocol 9 Speed of Convergence 9 Capability to Perform Summarization 9 Interior or Exterior Routing 10 Routing Protocol Categories 11 Network Technology Fundamentals 16 Network Traffic Types 16 Unicast 16 Broadcast 16 Multicast 17 Anycast 18 Network Architecture Types 19 Point-to-Point Network 19 Broadcast Network 19 NBMA 20 TCP/IP Fundamentals 21 IP Characteristics 21 Routing Review 24 Asymmetric Routing 27 Maximum Transmission Unit 30 ICMP Messages 30 TCP Characteristics 31 Three-Way Handshake 33 TCP Sliding Window 33 Out-of-Order Delivery 35 UDP Characteristics 35 From the Library of Alexey Evseenko xi Chapter 2 Network Migration Strategies 36 Routing Protocol Changes 36 IPv6 Migration 37 Spanning Tree Protocol Migration 38 Migration to Easy Virtual Networking 39 Exam Preparation Tasks 42 Planning Practice 42 Design Review Table 42 Implementation Plan Peer Review Table 43 Review All the Key Topics 44 Complete the Tables and Lists from Memory 45 Definitions of Key Terms 45 Remote Site Connectivity 47 “Do I Know This Already?” Quiz 47 Foundation Topics 50 Remote Connectivity Overview 50 MPLS-Based Virtual Private Networks 50 Tunnel-Based Virtual Private Networks 50 Hybrid Virtual Private Networks 51 MPLS VPN 51 Layer 2 MPLS VPN 51 Layer 3 MPLS VPN 52 GRE 53 DMVPN 56 Multipoint GRE 57 NHRP 59 IPsec 61 Exam Preparation Tasks 66 Planning Practice 66 Design Review Table 66 Implementation Plan Peer Review Table 67 Create an Implementation Plan Table 68 Choose Commands for a Verification Plan Table 68 Review All the Key Topics 69 Complete the Tables and Lists from Memory 69 Define Key Terms 69 From the Library of Alexey Evseenko xii CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Part II Chapter 3 IGP Routing Protocols IPv6 Review and RIPng 71 “Do I Know This Already?” Quiz 71 Foundation Topics 75 Global Unicast Addressing, Routing, and Subnetting 76 Global Route Aggregation for Efficient Routing 77 Conventions for Representing IPv6 Addresses 79 Conventions for Writing IPv6 Prefixes 80 Global Unicast Prefix Assignment Example 82 Subnetting Global Unicast IPv6 Addresses Inside an Enterprise 84 Prefix Terminology 87 IPv6 Global Unicast Addresses Assignment 87 Stateful DHCP for IPv6 88 Stateless Autoconfiguration 89 Learning the Prefix/Length and Default Router with NDP Router Advertisements 89 Calculating the Interface ID Using EUI-64 91 Finding the DNS IP Addresses Using Stateless DHCP 92 Static IPv6 Address Configuration 93 Survey of IPv6 Addressing 93 Overview of IPv6 Addressing 93 Unicast IPv6 Addresses 94 Unique Local IPv6 Addresses 94 Link-local Unicast Addresses 95 IPv6 Unicast Address Summary 96 Multicast and Other Special IPv6 Addresses 97 Layer 2 Addressing Mapping and Duplicate Address Detection 97 Neighbor Discovery Protocol for Layer 2 Mapping 98 Duplicate Address Detection (DAD) 99 Inverse Neighbor Discovery 99 Configuring IPv6 Addresses on Cisco Routers 100 Configuring Static IPv6 Addresses on Routers 101 Multicast Groups Joined by IPv6 Router Interfaces 103 Connected Routes and Neighbors 104 The IPv6 Neighbor Table 104 Stateless Autoconfiguration 105 From the Library of Alexey Evseenko xiii Chapter 4 RIP Next Generation (RIPng) 107 RIPng: Theory and Comparisons to RIPv2 108 Configuring RIPng 109 Verifying RIPng 112 Exam Preparation Tasks 115 Planning Practice 115 Design Review Table 115 Implementation Plan Peer Review Table 115 Create an Implementation Plan Table 116 Choose Commands for a Verification Plan Table 117 Review All the Key Topics 118 Complete the Tables and Lists from Memory 118 Define Key Terms 118 Fundamental EIGRP Concepts 121 “Do I Know This Already?” Quiz 121 Foundation Topics 125 EIGRP Fundamentals 125 Configuration Review 125 Verification Review 127 Internals Review 131 Exchanging Topology Information 131 Calculating the Best Routes for the Routing Table 132 EIGRP Neighborships 134 Manipulating EIGRP Hello and Hold Timers 134 Configuring the Hello/Hold Timers 135 Verifying the Hello/Hold Timers 137 Preventing Unwanted Neighbors Using Passive Interfaces 138 Controlling Neighborships with Static Configuration 141 Configuring Static EIGRP Neighbors 142 Caveat When Using EIGRP Static Neighbors 143 Configuration Settings That Could Prevent Neighbor Relationships 144 Configuring EIGRP Metric Components (K-values) 145 EIGRP Router ID 146 Neighborship over WANs 147 Neighborship on Frame Relay 147 Neighborship on MPLS VPN 148 Neighborship on Metro Ethernet 149 From the Library of Alexey Evseenko xiv CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Chapter 5 Exam Preparation Tasks 150 Planning Practice 150 Design Review Table 150 Implementation Plan Peer Review Table 150 Create an Implementation Plan Table 151 Choose Commands for a Verification Plan Table 151 Review All the Key Topics 152 Complete the Tables and Lists from Memory 153 Define Key Terms 153 Advanced EIGRP Concepts 155 “Do I Know This Already?” Quiz 155 Foundation Topics 162 Building the EIGRP Topology Table 162 Seeding the EIGRP Topology Table 162 The Content of EIGRP Update Message 163 The EIGRP Update Process 166 WAN Issues for EIGRP Topology Exchange 167 Split Horizon Default on Frame Relay Multipoint Subinterfaces 167 EIGRP WAN Bandwidth Control 170 Building the IP Routing Table 172 Calculating the Metrics: Feasible Distance and Reported Distance 172 EIGRP Metric Tuning 174 Configuring Bandwidth and Delay 175 Choosing Bandwidth Settings on WAN Subinterfaces 175 Metric Weights (K-values) 178 Offset Lists 178 Unequal Metric Route Load Sharing 180 Optimizing EIGRP Convergence 183 Fast Convergence to Feasible Successors 183 Successor and Feasible Successor Concepts 184 Verification of Feasible Successors 185 Converging by Going Active 188 The Impact of Stub Routers on Query Scope 190 The Impact of Summary Routes on Query Scope 192 Stuck in Active 193 From the Library of Alexey Evseenko xv Chapter 6 Route Filtering 194 Filtering by Referencing ACLs 196 Filtering by Referencing IP Prefix Lists 198 IP Prefix List Concepts 199 Samples of Prefix List Matching 201 Using IP Prefix Lists to Filter EIGRP Routes 202 Filtering by Using Route Maps 204 Route Map Concepts 204 Using Route Maps to Filter EIGRP Routes 206 Route Summarization 208 Calculating Summary Routes 209 Choosing Where to Summarize Routes 209 Influencing the Choice of Best Route for Summary Routes 210 Suboptimal Forwarding with Summarization 211 Route Summarization Benefits and Trade-offs 213 Configuring EIGRP Route Summarization 213 Auto-summary 217 Default Routes 219 Default Routing to the Internet Router 219 Default Routing Configuration with EIGRP 220 Advertising Static Default Routes with EIGRP 220 Configuring a Default Network 221 Exam Preparation Tasks 225 Planning Practice 225 Design Review Table 225 Implementation Plan Peer Review Table 226 Create an Implementation Plan Table 227 Choose Commands for a Verification Plan Table 228 Review All the Key Topics 229 Complete the Tables and Lists from Memory 230 Define Key Terms 230 EIGRP for IPv6 and Named EIGRP 233 “Do I Know This Already?” Quiz 233 Foundation Topics 236 EIGRP for IPv6 236 EIGRP for IPv4 and IPv6: Theory and Comparisons 236 Configuring EIGRP for IPv6 237 Verifying EIGRP for IPv6 240 From the Library of Alexey Evseenko xvi CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Chapter 7 Named EIGRP 243 The Named EIGRP Hierarchical Structure 244 Traditional EIGRP and Named EIGRP Configurations Compared 245 Verifying Named EIGRP 250 Exam Preparation Tasks 253 Planning Practice 253 Design Review Table 253 Implementation Plan Peer Review Table 253 Create an Implementation Plan Table 254 Choose Commands for a Verification Plan Table 255 Review All the Key Topics 255 Complete the Tables and Lists from Memory 256 Define Key Terms 256 Fundamental OSPF Concepts 259 “Do I Know This Already?” Quiz 259 Foundation Topics 263 OSPF Review 263 OSPF Link-State Concepts 263 OSPF Configuration Review 266 OSPF Verification Review 268 OSPF Feature Summary 271 OSPF Neighbors and Adjacencies on LANs 272 Enabling OSPF Neighbor Discovery on LANs 272 Settings That Must Match for OSPF Neighborship 274 Optimizing Convergence Using Hello and Dead Timers 275 Using a Unique OSPF Router ID 278 Using the Same IP MTU 279 OSPF Neighbors and Adjacencies on WANs 281 OSPF Network Types 281 OSPF Neighborship over Point-to-Point Links 282 Neighborship over Frame Relay Point-to-Point Subinterfaces 284 Neighborship on MPLS VPN 285 Neighborship on Metro Ethernet 287 Virtual Links 288 Understanding OSPF Virtual Link Concepts 289 Configuring OSPF Virtual Links 291 Verifying the OSPF Virtual Link 292 From the Library of Alexey Evseenko xvii Chapter 8 Exam Preparation Tasks 295 Planning Practice 295 Design Review Table 295 Implementation Plan Peer Review Table 295 Create an Implementation Plan Table 296 Choose Commands for a Verification Plan Table 297 Review All the Key Topics 298 Complete the Tables and Lists from Memory 299 Define Key Terms 299 The OSPF Link-State Database 301 “Do I Know This Already?” Quiz 301 Foundation Topics 305 LSAs and the OSPF Link-State Database 305 LSA Type 1: Router LSA 306 LSA Type 2: Network LSA 312 Background on Designated Routers 312 Type 2 Network LSA Concepts 312 Type 2 LSA show Commands 313 LSA Type 3: Summary LSA 317 Limiting the Number of LSAs 320 Summary of Internal LSA Types 321 The Database Exchange Process 321 OSPF Message and Neighbor State Reference 322 Exchange Without a Designated Router 323 Discovering a Description of the Neighbor’s LSDB 324 Exchanging the LSAs 325 Exchange with a Designated Router 326 Flooding Throughout the Area 328 Periodic Flooding 329 Choosing the Best OSPF Routes 330 OSPF Metric Calculation for Internal OSPF Routes 330 Calculating the Cost of Intra-Area Routes 331 Calculating the Cost of Interarea Routes 332 Special Rules Concerning Intra-Area and Interarea Routes on ABRs 336 Metric and SPF Calculations 337 From the Library of Alexey Evseenko xviii CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Chapter 9 Metric Tuning 337 Changing the Reference Bandwidth 338 Setting Bandwidth 338 Configuring Cost Directly 339 Verifying OSPF Cost Settings 339 Exam Preparation Tasks 340 Planning Practice 340 Design Review Table 340 Implementation Plan Peer Review Table 340 Create an Implementation Plan Table 341 Choose Commands for a Verification Plan Table 342 Review All the Key Topics 343 Complete the Tables and Lists from Memory 343 Define Key Terms 343 Advanced OSPF Concepts 345 “Do I Know This Already?” Quiz 345 Foundation Topics 350 Route Filtering 350 Type 3 LSA Filtering 351 Filtering OSPF Routes Added to the Routing Table 355 Route Summarization 356 Manual Summarization at ABRs 357 Manual Summarization at ASBRs 360 Default Routes and Stub Areas 361 Domain-Wide Defaults Using the default-information originate Command 362 Stubby Areas 364 Introducing Stubby Area Types 365 Configuring and Verifying Stubby Areas 366 Configuring and Verifying Totally Stubby Areas 371 The Not-So-Stubby Area (NSSA) 374 OSPF Version 3 376 OSPFv2 and OSPFv3 Comparison 376 OSPFv3 Traditional Configuration 377 OSPFv3 Address Family Configuration 384 Exam Preparation Tasks 392 From the Library of Alexey Evseenko xix Planning Practice 392 Design Review Table 392 Implementation Plan Peer Review Table 393 Create an Implementation Plan Table 394 Choose Commands for a Verification Plan Table 394 Review All the Key Topics 396 Complete the Tables and Lists from Memory 396 Define Key Terms 396 Part III Route Redistribution and Selection Chapter 10 Route Redistribution 399 “Do I Know This Already?” Quiz 399 Foundation Topics 405 Route Redistribution Basics 405 The Need for Route Redistribution 405 Redistribution Concepts and Processes 408 Redistribution into EIGRP 410 EIGRP redistribute Command Reference 410 Baseline Configuration for EIGRP Redistribution Examples 411 Configuring EIGRP Redistribution with Default Metric Components 412 Verifying EIGRP Redistribution 415 Redistribution into OSPF 417 OSPF redistribute Command Reference 418 Configuring OSPF Redistribution with Minimal Parameters 419 Setting OSPF Metrics on Redistributed Routes 423 LSAs and Metrics for External Type 2 Routes 423 Determining the Next Hop for Type 2 External Routes— Intra-area 425 Determining the Next Hop for Type 2 External Routes—Interarea 427 Redistributing into OSPF as E1 Routes 431 A Brief Comparison of E1 and E2 Routes 432 External Routes in NSSAs 433 Redistribution with Route Maps and Distribute Lists 436 Overview of Using Route Maps with Redistribution 436 Filtering Redistributed Routes with Route Maps 438 Configuring Route Filtering with Redistribution 439 Verifying Redistribution Filtering Operations 441 From the Library of Alexey Evseenko xx CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Setting Metrics When Redistributing 443 Configuring the Metric Settings 443 Verifying the Metric Settings 445 Setting the External Route Type 446 Redistribution Filtering with the distribute-list Command 447 Issues with Multiple Redistribution Points 447 Preventing Routing Domain Loops with Higher Metrics 448 Preventing Routing Domain Loops with Administrative Distance 449 EIGRP Default AD Defeats Loop from EIGRP to OSPF to EIGRP 450 EIGRP Default AD Defeats Loop from OSPF to EIGRP to OSPF 451 Setting AD per Route Source for Internal and External Routes 452 Domain Loop Problems with More Than Two Routing Domains 453 Using Per-Route Administrative Distance Settings 454 Preventing Domain Loops by Filtering on Subnet While Redistributing 458 Preventing Domain Loops by Filtering on Route Tag Using Distribute Lists 459 Exam Preparation Tasks 462 Planning Practice 462 Design Review Table 462 Implementation Plan Peer Review Table 463 Create an Implementation Plan Table 465 Choose Commands for a Verification Plan Table 465 Review All the Key Topics 467 Complete the Tables and Lists from Memory 468 Define Key Terms 468 Chapter 11 Route Selection 471 “Do I Know This Already?” Quiz 471 Foundation Topics 476 Cisco Express Forwarding 476 Operation of Process Switching 476 Operation of Fast Switching 477 Operation of Cisco Express Forwarding 478 Policy-Based Routing 483 Matching the Packet and Setting the Route 484 PBR Configuration Example 485 How the default Keyword Impacts PBR Logic Ordering 488 From the Library of Alexey Evseenko xxi Additional PBR Functions 489 Applying PBR to Locally Created Packets 489 Setting IP Precedence 489 PBR with IP SLA 490 IP Service-Level Agreement 490 Understanding IP SLA Concepts 491 Configuring and Verifying IP SLA 492 Tracking SLA Operations to Influence Routing 496 Configuring a Static Route to Track an IP SLA Operation 496 Configuring PBR to Track an IP SLA 499 VRF-Lite 499 VRF-Lite Configuration 500 VRF Verification 502 Exam Preparation Tasks 505 Planning Practice 505 Design Review Table 505 Implementation Plan Peer Review Table 506 Create an Implementation Plan Table 507 Choose Commands for a Verification Plan Table 507 Review All the Key Topics 508 Complete the Tables and Lists from Memory 509 Definitions of Key Terms 509 Part IV Internet Connectivity Chapter 12 Fundamentals of Internet Connectivity 511 “Do I Know This Already?” Quiz 511 Foundation Topics 514 Provider-Assigned IPv4 Addresses 514 Static IP Address Assignment 514 Dynamic IP Address Assignment 516 NAT 518 Basic NAT 518 Dynamic NAT Configuration and Verification 520 Static NAT Configuration and Verification 522 PAT 523 NAT Design Considerations 526 NVI 526 Exam Preparation Tasks 528 From the Library of Alexey Evseenko xxii CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Planning Practice 528 Design Review Table 528 Implementation Plan Peer Review Table 528 Create an Implementation Plan Table 529 Choose Commands for a Verification Plan Table 530 Review All the Key Topics 531 Complete the Tables and Lists from Memory 531 Define Key Terms 531 Chapter 13 Fundamental BGP Concepts 533 “Do I Know This Already?” Quiz 533 Foundation Topics 539 The Basics of Internet Routing and Addressing 539 Public IP Address Assignment 540 Internet Route Aggregation 541 The Impact of NAT/PAT 543 Private IPv4 Addresses and Other Special Addresses 544 Introduction to BGP 545 BGP Basics 545 BGP ASNs and the AS_SEQ Path Attribute 546 Internal and External BGP 549 Public and Private ASNs 550 Outbound Routing Toward the Internet 551 Comparing BGP and Default Routing for Enterprises 551 Single-Homed 553 Dual-Homed 554 Preferring One Path over Another for All Destinations 556 Choosing One Path over Another Using BGP 557 Partial and Full BGP Updates 559 Single-Multihomed 561 Dual-Multihomed 562 External BGP for Enterprises 563 eBGP Neighbor Configuration 564 Requirements for Forming eBGP Neighborships 565 Issues When Redundancy Exists Between eBGP Neighbors 567 eBGP Multihop Concepts 569 BGP Internals and Verifying eBGP Neighbors 570 Verifying eBGP Neighbor Status 571 Administratively Controlling Neighbor Status 574 BGP Message Summary 576 From the Library of Alexey Evseenko xxiii Verifying the BGP Table 576 The BGP Update Message 577 Examining the BGP Table 577 Viewing Subsets of the BGP Table 580 Injecting Routes into BGP for Advertisement to the ISPs 583 Injecting Routes Using the network Command 583 The Effect of auto-summary on the BGP network Command 585 Injecting Routes Using Redistribution 585 Exam Preparation Tasks 588 Planning Practice 588 Design Review Table 588 Implementation Plan Peer Review Table 589 Create an Implementation Plan Table 589 Choose Commands for a Verification Plan Table 590 Review All the Key Topics 591 Complete the Tables and Lists from Memory 592 Define Key Terms 593 Chapter 14 Advanced BGP Concepts 595 “Do I Know This Already?” Quiz 597 Foundation Topics 602 Internal BGP Between Internet-Connected Routers 602 Establishing the Need for iBGP with Two Internet-Connected Routers 602 Configuring iBGP 603 Verifying iBGP 606 Examining iBGP BGP Table Entries 607 Understanding Next-Hop Reachability Issues with iBGP 611 Ensuring That Routes Exist to the Next-Hop Address 612 Using neighbor neighbor-ip next-hop-self to Change the Next-Hop Address 613 Avoiding Routing Loops When Forwarding Toward the Internet 614 Using an iBGP Mesh 616 IGP Redistribution and BGP Synchronization 618 Route Filtering and Clearing BGP Peers 620 BGP Filtering Overview 620 Inbound and Outbound BGP Filtering on Prefix/Length 621 Clearing BGP Neighbors 625 From the Library of Alexey Evseenko xxiv CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Displaying the Results of BGP Filtering 627 Peer Groups 629 BGP Path Attributes and Best-Path Algorithm 631 BGP Path Attributes 631 Overview of the BGP Best-Path Algorithm 633 Perspectives on the Core Eight Best-Path Steps 635 Memorization Tips for BGP Best Path 636 Influencing an Enterprise’s Outbound Routes 637 Influencing BGP Weight 637 Sample Internetwork Used in the Weight Examples 638 Setting the BGP Administrative Weight Using a Route Map 642 Setting Weight Using the neighbor weight Command 643 Setting the Local Preference 644 Sample Internetwork Used in the Local_Pref and AS_Path Length Examples 645 Setting the BGP Local_Pref Using a Route Map 648 IP Routes Based on BGP Best Paths 651 Example of a BGP RIB Failure 652 BGP and the maximum-paths Command 654 Increasing the Length of the AS_Path Using AS_Path Prepend 654 Influencing an Enterprise’s Inbound Routes with MED 656 MED Concepts 657 MED Configuration 659 Exam Preparation Tasks 661 Planning Practice 661 Design Review Table 661 Implementation Plan Peer Review Table 662 Create an Implementation Plan Table 663 Choosing Commands for a Verification Plan Table 664 Review All the Key Topics 666 Complete the Tables and Lists from Memory 666 Define Key Terms 667 Chapter 15 IPv6 Internet Connectivity 669 “Do I Know This Already?” Quiz 669 Foundation Topics 672 IPv6 Internet Connections 672 Methods of Assigning an IPv6 Address to a Customer Router 672 Manual Configuration of IPv6 Address and Default Route 673 From the Library of Alexey Evseenko xxv IPv6 Access Control Lists 674 IPv6 Internet Connection Security 677 BGP Support for IPv6 677 Multiprotocol BGP Fundamentals 678 IPv6 Routing over an IPv4 BGP Session 678 IPv6 Routing over an IPv6 BGP Session 684 Single IPv4 BGP Session Versus Dual (IPv4 and IPv6) Sessions 689 Filtering IPv6 Routes with Prefix Lists 689 Using Local Preference for IPv6 Path Selection 693 Exam Preparation Tasks 695 Planning Practice 695 Design Review Table 695 Implementation Plan Peer Review Table 695 Create an Implementation Plan Table 696 Choose Commands for a Verification Plan Table 698 Review All the Key Topics 698 Complete the Tables and Lists from Memory 699 Define Key Terms 699 Part V Router and Routing Security Chapter 16 Fundamental Router Security Concepts 701 “Do I Know This Already?” Quiz 701 Foundation Topics 704 Elements of a Router Security Policy 704 Access Control Lists 705 Time-Based ACLs 705 Infrastructure ACLs 707 Management Plane Security 708 Secure Shell Versus Telnet 709 Password Encryption 711 Enable Secret Password 711 Line Password 712 Username Password 713 Unicast Reverse Path Forwarding 714 Authentication, Authorization, and Accounting 719 SNMP Security 721 NTP Authentication 724 Exam Preparation Tasks 729 From the Library of Alexey Evseenko xxvi CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Planning Practice 729 Design Review Table 729 Implementation Plan Peer Review Table 730 Create an Implementation Plan Table 731 Choose Commands for a Verification Plan Table 732 Review All the Key Topics 733 Complete the Tables and Lists from Memory 734 Define Key Terms 734 Chapter 17 Routing Protocol Authentication 737 “Do I Know This Already?” Quiz 737 Foundation Topics 740 Authentication Methods 740 Plain Text Authentication 740 Hashing Authentication 741 Key Chains 742 EIGRP Authentication 744 EIGRP for IPv4 Authentication 744 EIGRP for IPv6 Authentication 746 Named EIGRP Authentication 749 OSPF Authentication 751 Plain Text OSPFv2 Authentication 751 OSPFv2 MD5 Authentication 754 OSPFv3 Authentication 756 BGP Authentication 759 IPv4 BGP Authentication 760 IPv6 BGP Authentication 761 Exam Preparation Tasks 764 Planning Practice 764 Design Review Table 764 Implementation Plan Peer Review Table 764 Create an Implementation Plan Table 765 Choose Commands for a Verification Plan Table 766 Review All the Key Topics 767 Complete the Tables and Lists from Memory 767 Define Key Terms 767 From the Library of Alexey Evseenko xxvii Part VI Final Preparation Chapter 18 Final Preparation 769 Tools for Final Preparation 769 Exam Engine and Questions on the CD 769 Install the Exam Engine 770 Activate and Download the Practice Exam 770 Activating Other Exams 771 Premium Edition 771 The Cisco Learning Network 771 Memory Tables 771 Chapter-Ending Review Tools 772 Suggested Plan for Final Review/Study 772 Step 1: Review Key Topics and DIKTA Questions 773 Step 3: Hands-On Practice 773 Step 6: Subnetting Practice 774 Step 7: Use the Exam Engine 774 Summary 776 Keep in Touch with Kevin 776 Part VII Appendixes Appendix A Answers to the “Do I Know This Already?” Quizzes 779 Appendix B ROUTE Exam Updates 805 Appendix C Conversion Tables 809 Index 812 CD-Only Appendix D Memory Tables Appendix E Memory Tables Answer Key Appendix F Completed Planning Practice Tables Appendix G Study Planner Glossary From the Library of Alexey Evseenko xxviii CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Icons Used in This Book Router Workgroup Switch Multilayer Switch Firewall Server Network Cloud Serial Cable Line: Ethernet VPN Tunnel PC Standing Man Scroll Command Syntax Conventions The conventions used to present command syntax in this book are the same conventions used in the IOS Command Reference. The Command Reference describes these conventions as follows: ■ Boldface indicates commands and keywords that are entered literally as shown. In actual configuration examples and output (not general command syntax), boldface indicates commands that are manually input by the user (such as a show command). ■ Italics indicate arguments for which you supply actual values. ■ Vertical bars (|) separate alternative, mutually exclusive elements. ■ Square brackets ([ ]) indicate an optional element. ■ Braces ({ }) indicate a required choice. ■ Braces within brackets ([{ }]) indicate a required choice within an optional element. From the Library of Alexey Evseenko xxix Introduction This book focuses on one major goal: to help you prepare to pass the ROUTE exam (300-101). To help you prepare, this book achieves other useful goals as well: It explains a wide range of networking topics, shows how to configure those features on Cisco routers, and explains how to determine whether the feature is working. As a result, you also can use this book as a general reference for IP routing and IP routing protocols. However, the motivation for this book, and the reason it sits within the Cisco Press Official Certification Guide series, is that its primary goal is to help you pass the ROUTE exam. The rest of this introduction focuses on two topics: the ROUTE exam and a description of this book. The CCNP ROUTE Exam Cisco announced the original ROUTE exam (642-902) in January 2010. The term ROUTE does not act as an acronym; instead, the name describes the content of the exam, which focuses on IP routing. Generally, the exam includes detailed coverage of the EIGRP, OSPF, and BGP IP routing protocols; IPv6; and a few other smaller topics related to IP routing. Cisco first announced its initial professional-level certifications in 1998 with the CCNP Routing and Switching certification. CCNP Routing and Switching certification from its inception has included the same kinds of IP routing topics found in today’s ROUTE exam, but the exam names changed over the years. The exam names have tracked the names of the associated Cisco authorized courses for the same topics: Advanced Cisco Router Configuration (ACRC) in the early days, followed by Building Scalable Cisco Internetworks (BSCI), and now ROUTE, because the current Cisco-authorized course also goes by the name ROUTE. Like its ancestors, the ROUTE exam is a part of the certification requirements for both of the following Cisco certifications: ■ Cisco Certified Networking Professional (CCNP) ■ Cisco Certified Design Professional (CCDP) Each of these certifications emphasizes different perspectives on some similar topics. CCNP focuses on the skills needed by a network engineer working for an enterprise— that is, a company that deploys networking gear for its own purposes. CCDP focuses more on design, but good design requires solid knowledge of the technology and configuration. So, although this book frequently refers to the most popular certification of these two—CCNP—the ROUTE exam does apply to both certifications. From the Library of Alexey Evseenko xxx CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Contents of the ROUTE Exam Every student who ever takes an exam wants to know what’s on the exam. As with all its exams, Cisco publishes a set of exam topics. These exam topics give general guidance as to what’s on the exam. You can find the exam topics at Cisco.com. The most memorable way to navigate is to go to www.cisco.com/go/ccnp and look for the ROUTE exam. Also, you can go to the Cisco Learning Network website (www.cisco.com/go/learnnetspace)—a less memorable URL but a great Cisco certification site. The Cisco Learning Network site hosts exam information, learning tools, and forums in which you can communicate with others and learn more about this and other Cisco exams. Interestingly, some of the topics on the ROUTE (300-101) exam are topics that you covered in your CCNA studies (that is, in the CCENT [ICND1] and ICND2 curriculum). Also, several topics on the ROUTE exam are not covered in the Cisco official ROUTE course. A big goal of this book is to make sure that you are prepared for any topic you might encounter on the ROUTE exam. Therefore, in addition to covering topics in the official ROUTE course, this book also covers topics not found in the ROUTE course. Additionally, you might want to review your CCENT (ICND1) and ICND2 materials for exam topics coming from those courses. Table I-1 lists the topics on the ROUTE exam blueprint, with a reference to the part of this book that covers the topic or a reference to the CCNA course (that is, CCENT [ICND1] or ICND2) that covers the topic. Table I-1 ROUTE Exam (300-101) Topics Book Part Exam Topic (or CCNA Content) Network Principles III Identify Cisco Express Forwarding Concepts I Explain General Network Challenges I Describe IP Operations I Explain TCP Operations I Describe UDP Operations I Recognize Proposed Changes to a Network Layer 2 Technologies ICND2 WAN Circuit Technologies ICND2 Explain Frame Relay Layer 3 Technologies CCENT Identify, Configure, and Verify IPv4 Addressing and Subnetting III Identify IPv6 Addressing and Subnetting From the Library of Alexey Evseenko xxxi Book Part Exam Topic (or CCNA Content) CCENT Configure and Verify Static Routing II Configure and Verify Default Routing I Evaluate Routing Protocol Types II Describe Administrative Distance II Troubleshoot Passive Interfaces III Configure and Verify VRF-Lite II Configure and Verify Filtering with any Routing Protocol III Configure and Verify Redistribution Between any Routing Protocol/ Source II Configure and Verify Manual and Auto Summarization with any Routing Protocol III Configure and Verify Policy-Based Routing III Identify Sub-Optimal Routing III Explain Route Maps III Configure and Verify Loop Prevention Mechanisms II Configure and Verify RIPv2 II Describe RIPng II Describe EIGRP Packet Types II, V Configure and Verify EIGRP Neighbor Relationship and Authentication II Configure and Verify EIGRP Stubs II Configure and Verify EIGRP Load-Balancing II Describe and Optimize EIGRP Metrics II Configure and Verify EIGRP for IPv6 II Describe OSPF Packet Types II, V Configure and Verify OSPF Neighbor Relationships and Authentication II Configure and Verify OSPF Network Types, Area Types, and Router Types II Configure and Verify OSPF Path Preference II Configure and Verify OSPF Operations II Configure and Verify OSPF for IPv6 (OSPFv3) From the Library of Alexey Evseenko xxxii CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Book Part Exam Topic (or CCNA Content) V Describe, Configure, and Verify BGP Peer Relationships and Authentication IV Configure and Verify eBGP IV Explain BGP Attributes and Best-Path Selection Change to VPN Technologies I Configure and Verify GRE I Describe DMVPN I Describe Easy Virtual Networking (EVN) Infrastructure Security V Describe Cisco IOS AAA Using Local Database V Describe Device Security Using Cisco IOS AAA with TACACS+ and RADIUS V Configure and Verify Device Access Control IV, V Configure and Verify Router Security Features Infrastructure Services CCENT Configure and Verify Device Management ICND2 Configure and Verify SNMP ICND2 Configure and Verify Logging V Configure and Verify Network Time Protocol CCENT Configure and Verify IPv4 and IPv6 DHCP CCENT Configure and Verify IPv4 Network Address Translation CCENT Describe IPv6 Network Address Translation III Describe the SLA Architecture III Configure and Verify IP SLA III Configure and Verify Tracking Objects ICND2 Configure and Verify NetFlow Note Supplemental study materials are available from Cisco Press: CCNP ROUTE Complete Video Course: http://kwtrain.com/routecourse CCNA Complete Video Course: http://kwtrain.com/ccnacourse CCNA Official Certification Library: http://kwtrain.com/ccnabooks From the Library of Alexey Evseenko How to Take the ROUTE Exam As of the publication of this book, Cisco exclusively uses testing vendor Pearson Vue (www.vue.com) for delivery of all Cisco career certification exams. To register, go to www.vue.com, establish a login, and register for the 300-101 ROUTE exam. You also need to choose a testing center near your home. xxxiii Who Should Take This Exam and Read This Book This book has one primary audience, with several secondary audiences. First, this book is intended for anyone wanting to prepare for the ROUTE 300-101 exam. The audience includes self-study readers—people who pass the test by studying 100 percent on their own. It includes Cisco Networking Academy students taking the CCNP curriculum, who use this book to round out their preparation as they get close to the end of the Academy curriculum. The broader question about the audience might well be why you should take the ROUTE exam. First, the exam is required for the aforementioned CCNP and CCDP certifications from Cisco. These certifications exist at the midpoint of the Cisco certification hierarchy. These certifications have broader and deeper technology requirements as compared to the Cisco Certified Entry Network Technician (CCENT) and Cisco Certified Network Associate (CCNA) certifications. The real question then about the audience for this book—at least the intended audience—is whether you have motivation to get one of these professional-level Cisco certifications. CCNP in particular happens to be a popular, well-respected certification. Also, CCDP has been a solid certification for a long time, particularly for engineers who spend a lot of time designing networks with customers, rather than troubleshooting. Format of the CCNP ROUTE Exam The ROUTE exam follows the same general format as the other Cisco exams. When you get to the testing center and check in, the proctor will give you some general instructions and then take you into a quiet room with a PC. When you’re at the PC, you have a few things to do before the timer starts on your exam. For example, you can take a sample quiz, just to get accustomed to the PC and to the testing engine. Anyone who has userlevel skills in getting around a PC should have no problems with the testing environment. When you start the exam, you will be asked a series of questions. You answer the question and then move on to the next question. The exam engine does not let you go back and change your answer. The exam questions can be in any of the following formats: ■ Multiple-choice (MC) ■ Testlet ■ Drag-and-drop (DND) From the Library of Alexey Evseenko xxxiv CCNP Routing and Switching ROUTE 300-101 Official Cert Guide ■ Simulated lab (Sim) ■ Simlet The first three types of questions are relatively common in many testing environments. The multiple-choice format simply requires that you point and click on a circle (that is, a radio button) beside the correct answer for a single-answer question or on squares (that is, check boxes) beside the correct answers for a multi-answer question. Cisco traditionally tells you how many answers you need to choose, and the testing software prevents you from choosing too many answers. Testlets are questions with one general scenario, with a collection of multiple-choice questions about the overall scenario. Drag-and-drop questions require you to left-click and hold a mouse button, move an object (for example, a text box) to another area on the screen, and release the mouse button to place the object somewhere else—typically into a list. For some questions, as an example, to get the question correct, you might need to put a list of five things into the proper order. The last two types both use a network simulator to ask questions. Interestingly, the two types actually allow Cisco to assess two very different skills. First, sim questions generally describe a problem, and your task is to configure one or more routers and/or switches to fix the problem. The exam then grades the question based on the configuration that you changed or added. The simlet questions might well be the most difficult style of question on the exams. Simlet questions also use a network simulator, but instead of answering the question by changing the configuration, the question includes one or more MC questions. The questions require that you use the simulator to examine the current behavior of a network, interpreting the output of any show commands that you can remember to answer the question. Although sim questions require you to troubleshoot problems related to a configuration, simlets require you to both analyze working networks and networks with problems, correlating show command output with your knowledge of networking theory and configuration commands. The Cisco Learning Network website (http://learningnetwork.cisco.com) has tools that let you experience the environment and see how each of these question types works. The environment should be the same as when you passed CCNA (a prerequisite for CCNP and CCDP). CCNP ROUTE 300-101 Official Cert Guide This section lists a general description of the contents of this book. The description includes an overview of each chapter and a list of book features seen throughout the book. Book Features and Exam Preparation Methods This book uses several key methodologies to help you discover the exam topics on which you need more review, to help you fully understand and remember those details, and to help you prove to yourself that you have retained your knowledge of those topics. Therefore, this book does not try to help you pass the exams only by memorization but by truly learning and understanding the topics. From the Library of Alexey Evseenko Key Topic The book includes many features that provide different ways to study and be ready for the exam. If you understand a topic when you read it, but do not study it any further, you will probably not be ready to pass the exam with confidence. The features included in this book give you tools that help you determine what you know, review what you know, better learn what you don’t know, and be well prepared for the exam. These tools include ■ “Do I Know This Already?” Quizzes: Each chapter begins with a quiz that helps you determine the amount of time that you need to spend studying that chapter. ■ Foundation Topics: These are the core sections of each chapter. They explain the protocols, concepts, and configurations for the topics in that chapter. ■ Exam Preparation Tasks: The “Exam Preparation Tasks” section lists a series of study activities that should be done after reading the “Foundation Topics” section. Each chapter includes the activities that make the most sense for studying the topics in that chapter. The activities include ■ Planning Tables: The ROUTE exam topics include some perspectives on how an engineer plans for various tasks. The idea is that the CCNP-level engineer in particular takes the design from another engineer, plans the implementation, and plans the verification steps—handing off the actual tasks to engineers working during change-window hours. Because the engineer plans the tasks, but might not be at the keyboard when implementing a feature, that engineer must master the configuration and verification commands so that the planned commands work for the engineer making the changes offshift. The planning tables at the end of the chapter give you the chance to take the details in the Foundation Topics core of the chapter and think about them as if you were writing the planning documents. ■ Key Topics Review: The Key Topic icon is shown next to the most important items in the “Foundation Topics” section of the chapter. The Key Topics Review activity lists the key topics from the chapter and the page number where each key topic can be found. Although the contents of the entire chapter could be on the exam, you should definitely know the information listed in each key topic. Review these topics carefully. ■ Memory Tables: To help you exercise your memory and memorize some lists of facts, many of the more important lists and tables from the chapter are included in a document on the CD. This document lists only partial information, allowing you to complete the table or list. CD-only Appendix D holds the incomplete tables, and Appendix E includes the completed tables from which you can check your work. ■ Definition of Key Terms: Although Cisco exams might be unlikely to ask a question such as “Define this term,” the ROUTE exam requires that you learn and know a lot of networking terminology. This section lists some of the most important terms from the chapter, asking you to write a short definition and compare your answer to the Glossary on the enclosed CD. xxxv From the Library of Alexey Evseenko xxxvi CCNP Routing and Switching ROUTE 300-101 Official Cert Guide ■ CD-Based Practice Exam: The companion CD contains an exam engine, including access to a bank of multiple-choice questions. Chapter 18 gives two suggestions on how to use these questions: either as study questions or to simulate the ROUTE exam. ■ Companion Website: The website http://kwtrain.com/routebook posts up-to-theminute materials that further clarify complex exam topics. Check this site regularly for new and updated postings written by the author that provide further insight into the more troublesome topics on the exam. Book Organization This book contains 18 chapters, plus appendixes. The topics all focus in some way on IP routing and IP routing protocols, making the topics somewhat focused, but with deep coverage on those topics. The book organizes the topics into six major parts. The following list outlines the major part organization of this book: ■ Part I: “Fundamental Routing Concepts”: This part includes two chapters that focus on routing fundamentals within an enterprise network (including connections to remote offices): ■ Chapter 1: “Characteristics of Routing Protocols”: This introductory chapter is theory based and contains minimal Cisco IOS configuration. Specifically, the chapter reviews routing protocol characteristics. The last section of the chapter then introduces a newer routing technology, the ability to run multiple virtual routers inside a single physical router. ■ Chapter 2: “Remote Site Connectivity”: This chapter discusses how Virtual Private Networks (VPN) can be used to connect an enterprise headquarters to remote sites. While a variety of VPN technologies are discussed, the Cisco IOS configuration presented focuses on setting up a GRE tunnel. ■ Part II: “IGP Routing Protocols”: Because current versions of RIP, EIGRP, and OSPF support IPv6 routing (in addition to IPv4), this seven-chapter part begins with a review of IPv6 addressing and a look at RIPng configuration. Then, this part covers EIGRP and OSPF theory and configuration in detail: ■ Chapter 3: “IPv6 Review and RIPng”: The new version of the ROUTE curriculum dramatically increases the focus on routing IPv6 networks. Therefore, this chapter begins with a CCNA-level review of IPv6 addressing. Then, this chapter shows how to configure RIPng, which supports IPv6 routing (after contrasting RIPng with RIPv2). ■ Chapter 4: “Fundamental EIGRP Concepts”: This chapter reviews the basics of EIGRP, including EIGRP path selection and neighbor formation. ■ Chapter 5: “Advanced EIGRP Concepts”: This chapter discusses the details of how EIGRP builds its topology table, how those EIGRP-learned routes become candidates to be injected into a router’s IP routing table, and options for optimizing EIGRP convergence. Then, the chapter explores EIGRP route filtering, route summarization, and the use of default routes with EIGRP. From the Library of Alexey Evseenko xxxvii ■ Chapter 6: “EIGRP for IPv6 and Named EIGRP”: This chapter begins by contrasting EIGRP for IPv4 and EIGRP for IPv6. Then, a hierarchical EIGRP configuration approach, called Named EIGRP, is demonstrated. ■ Chapter 7: “Fundamental OSPF Concepts”: This chapter reviews the basics of OSPF, including configuration, verification, and neighbor formation. The chapter then concludes with a look at virtual links. ■ Chapter 8: “The OSPF Link-State Database”: This chapter explains the various LSA types that OSPF uses to construct a link-state database. The process involved in exchanging link-state database routers with neighboring routers is also discussed. ■ Chapter 9: “Advanced OSPF Concepts”: This chapter discusses OSPF route filtering, route summarization, sourcing default route information, and special area types. Then, the chapter concludes with an examination of OSPFv3 and describes how it can be used to route IPv6 networks. ■ Part III: “Route Redistribution and Selection”: Because many enterprise networks need to simultaneously support multiple IGPs, this part begins by explaining how IGPs can coexist and be redistributed into one another. Then, the discussion delves into how a Cisco router makes its packet-switching decisions and how those decisions can be altered using the Policy-Based Routing (PBR) and IP Service-Level Agreement (IP SLA) features: ■ Chapter 10: “Route Redistribution”: This chapter offers an extensive look into route redistribution. Specifically, the chapter begins by explaining route redistribution basics, followed by configuring route redistribution into EIGRP, route redistribution into OSPF, and tuning route redistribution using route maps and distribute lists. Finally, this chapter discusses IPv6 IGP route redistribution. ■ Chapter 11: “Route Selection”: This chapter begins with a comparison of packet-switching technologies supported by Cisco IOS routers, with a focus on Cisco Express Forwarding (CEF). Then, this chapter discusses how a router’s route selection can be influenced with the use of the Cisco PolicyBased Routing (PBR) and IP Service-Level Agreement (IP SLA) features. Finally, this chapter concludes by examining a basic configuration of VRFLite, which can allow a single physical router to run multiple virtual router instances. ■ Part IV: “Internet Connectivity”: When an enterprise network connects to the Internet, it might do so through a single connection and a default static route. Such a connection often uses Network Address Translation (NAT). However, with multiple Internet connections, the enterprise network might need to run Border Gateway Protocol (BGP). This part of the book examines both approaches to Internet connectivity (along with a discussion of NAT), including how BGP can connect to the Internet through IPv6: ■ Chapter 12: “Fundamentals of Internet Connectivity”: This chapter discusses how a network could connect to the Internet using a single connection, using either a statically assigned or a dynamically learned address. From the Library of Alexey Evseenko xxxviii CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Additionally, this chapter contrasts various approaches to NAT configuration, including a new approach, called NAT Virtual Interface (NVI). ■ Chapter 13: “Fundamental BGP Concepts”: This chapter begins with an overview of Internet routing and addressing, followed by an introduction to BGP. Single-homed and multi-homed Internet connections are contrasted. Then, this chapter discusses a variety of external BGP (eBGP) configuration options. ■ Chapter 14: “Advanced BGP Concepts”: While BGP is primarily considered to be an exterior gateway protocol (EGP), internal BGP (iBGP) can be used within an autonomous system. This chapter examines the operation, configuration, and verification of iBGP. Then, this chapter discusses approaches for avoiding BGP routing loops, how to filter BGP routes, how BGP makes its route selection decisions, and how to administratively influence those decisions. ■ Chapter 15: “IPv6 Internet Connectivity”: As support for IPv6 continues to grow, enterprise networks have an increasing need to connect to their Internet Service Provider(s) through IPv6. This chapter discusses how an ISP could assign an IPv6 address to a customer router, and how that customer router could use a static, default IPv6 route to point to its ISP. Additionally, this chapter introduces Multiprotocol BGP (MP-BGP), which adds a collection of extensions to BGP version 4 and supports IPv6. ■ Part V: “Router and Routing Security”: Although Cisco has an entire CCNP Security track, the ROUTE curriculum, and this part of the book, does cover general strategies for better securing a Cisco router and authenticating routing protocols used between routers: ■ Chapter 16: “Fundamental Router Security Concepts”: This chapter introduces the concept of a router security policy, covers time-based ACLs, and offers tips for securing a router’s management plane. ■ Chapter 17: “Routing Protocol Authentication”: This chapter compares various router authentication methods, and then focuses on how to authenticate specific routing protocols, including EIGRP, OSPF, and BGP. ■ Part VI: “Final Preparation”: This part concludes the book with recommendations for exam preparation. ■ Chapter 18: “Final Preparation”: This nontechnical chapter identifies and explains how to use various exam preparation tools, followed by a step-bystep strategy for using this book to prepare for the ROUTE exam. In addition to the core chapters of the book, the book has several appendixes. Some appendixes exist in the printed book, whereas others exist in soft-copy form on the CD included with the book. From the Library of Alexey Evseenko Appendixes printed in the book include ■ Appendix A, “Answers to the ‘Do I Know This Already?’ Quizzes”: Includes the answers to all the questions from Chapters 1 through 17. ■ Appendix B, “ROUTE Exam Updates”: Covers a variety of short topics that either clarify or expand upon topics covered earlier in the book. This appendix is updated from time to time, and posted at http://kwtrain.com/routebook, with the most recent version available at the time of printing included here as Appendix B. (The first page of the appendix includes instructions on how to check to see whether a later version of Appendix B is available online.) ■ Appendix C, “Conversion Tables”: Lists a decimal-to-binary conversion table, decimal values 0 through 255, along with the binary equivalents. It also lists a hex-todecimal conversion table. The appendixes included on the CD-ROM are ■ Appendix D, “Memory Tables”: This appendix holds the key tables and lists from each chapter with some of the content removed. You can print this appendix, and as a memory exercise, complete the tables and lists. The goal is to help you memorize facts that can be useful on the exam. ■ Appendix E, “Memory Tables Answer Key”: This appendix contains the answer key for the exercises in Appendix D. ■ Appendix F, “Completed Planning Practice Tables”: The ends of Chapters 1 through 17 list planning tables that you can complete to help learn the content more deeply. If you use these tables, refer to this appendix for the suggested answers. ■ Appendix G, “Study Planner”: A spreadsheet with major study milestones, where you can track your progress through your study. ■ Glossary: The glossary contains definitions for all the terms listed in the “Define Key Terms” sections at the conclusions of Chapters 1 through 17. xxxix For More Information If you have any comments about the book, you can submit those through www.ciscopress.com. Just go to the website, select Contact Us, and type in your message. Cisco might make changes that affect the ROUTE exam from time to time. You should always check www.cisco.com/go/ccnp for the latest details. From the Library of Alexey Evseenko This chapter covers the following subjects: ■ Routing Protocol Fundamentals: This section offers an overview of the role that routing plays in an enterprise network and contrasts various types of routing protocols. ■ Network Technology Fundamentals: This section distinguishes between different types of network traffic flows and network architectures. ■ TCP/IP Fundamentals: This section reviews the fundamental characteristics of IP, ICMP, TCP, and UDP. ■ Network Migration Strategies: This section offers a collection of design considerations for making changes to a network. From the Library of Alexey Evseenko CHAPTER 1 Characteristics of Routing Protocols One of the most fundamental technologies in network is routing. Routing, at its essence, is concerned with forwarding packets from their source on one subnet to their destination on another subnet. Of course, a multitude of options and protocols are available for making this happen. In fact, routing is the theme of this entire book, the focus of Cisco’s ROUTE course, and the accompanying ROUTE exam (300-101). This chapter launches the discussion of routing by providing a conceptual introduction. Specifically, this chapter begins with a discussion of routing protocol fundamentals, followed by the basics of network technology and the TCP/IP suite of protocols. The chapter then concludes with a design discussion revolving around how to accommodate the inevitable changes your network will undergo. For example, you will be given a collection of strategies for changing routing protocols in your network or migrating from IPv4 to IPv6. “Do I Know This Already?” Quiz The “Do I Know This Already?” quiz allows you to assess whether you should read the entire chapter. If you miss no more than one of these eight self-assessment questions, you might want to move ahead to the “Exam Preparation Tasks” section. Table 1-1 lists the major headings in this chapter and the “Do I Know This Already?” quiz questions covering the material in those headings so that you can assess your knowledge of these specific areas. The answers to the “Do I Know This Already?” quiz appear in Appendix A. Table 1-1 “Do I Know This Already?” Foundation Topics Section-to-Question Mapping Foundation Topics Section Routing Protocol Fundamentals Questions 1, 2 Network Technology Fundamentals 3, 4 TCP/IP Fundamentals 5, 6 Network Migration Strategies 7, 8 From the Library of Alexey Evseenko 4 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide 1. Which of the following features prevents a route learned on one interface from being advertised back out of that interface? a. Poison Reverse b. Summarization c. Split Horizon d. Convergence 2. Identify the distance-vector routing protocols from the following. (Choose the two best answers.) a. IS-IS b. EIGRP c. RIP d. OSPF e. BGP 3. Select the type of network communication flow that is best described as “one-tonearest.” a. Unicast b. Multicast c. Broadcast d. Anycast 4. An NBMA network has which of the following design issues? (Choose the two best answers.) a. Split Horizon issues b. Bandwidth issues c. Quality of service issues d. Designated router issues 5. Which of the following best defines TCP MSS? a. The total data in a TCP segment, including only the TCP header b. The total data in a TCP segment, not including any headers c. The total data in a TCP segment, including only the IP and TCP headers d. The total data in a TCP segment, including the Layer 2, IP, and TCP headers From the Library of Alexey Evseenko Chapter 1: Characteristics of Routing Protocols 5 6. A network segment has a bandwidth of 10 Mbps, and packets experience an end- to-end latency of 100 ms. What is the bandwidth-delay product of the network segment? a. 100,000,000 bits b. 10,000,000 bits c. 1,000,000 bits d. 100,000 bits 7. When migrating from a PVST+ to Rapid-PVST+, which PVST+ features can be disabled, because similar features are built into Rapid-PVST+? (Choose the two best answers.) a. UplinkFast b. Loop Guard c. BackboneFast d. PortFast 8. Cisco EVN uses what type of trunk to carry traffic for all virtual networks between two physical routers? a. VNET b. ISL c. dot1Q d. 802.10 From the Library of Alexey Evseenko 6 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Foundation Topics Routing Protocol Fundamentals Routing occurs when a router or some other Layer 3 device (for example, a multilayer switch) makes a forwarding decision based on network address information (that is, Layer 3 information). A fundamental question, however, addressed throughout this book, is from where does the routing information originate? A router could know how to reach a network by simply having one of its interfaces directly connect that network. Perhaps you statically configured a route, telling a router exactly how to reach a certain destination network. However, for large enterprises, the use of static routes does not scale well. Therefore, dynamic routing protocols are typically seen in larger networks (and many small networks, too). A dynamic routing protocol allows routers configured for that protocol to exchange route information and update that information based on changing network conditions. The first topic in this section explores the role of routing in an enterprise network. Then some of the characteristics of routing protocols are presented, to help you decide which routing protocol to use in a specific environment and to help you better understand the nature of routing protocols you find already deployed in a network. The Role of Routing in an Enterprise Network An enterprise network typically interconnects multiple buildings, has connectivity to one or more remote offices, and has one or more connections to the Internet. Figure 1-1 identifies some of the architectural layers often found in an enterprise network design: ■ Building Access: This layer is part of the Campus network and is used to provide user access to the network. Security (especially authentication) is important at this layer, to verify that a user should have access to the network. Layer 2 switching is typically used at this layer, in conjunction with VLANs. ■ Building Distribution: This layer is part of the Campus network that aggregates building access switches. Multilayer switches are often used here. ■ Campus Backbone: This layer is part of the Campus network and is concerned with the high-speed transfer of data through the network. High-end multilayer switches are often used here. ■ Edge Distribution: This layer is part of the Campus network and serves as the ingress and egress point for all traffic into and out of the Campus network. Routers or multilayer switches are appropriate devices for this layer. ■ Internet Gateways: This layer contains routers that connect the Campus network out to the Internet. Some enterprise networks have a single connection out to the Internet, while others have multiple connections out to one or more Internet Service Providers (ISP). From the Library of Alexey Evseenko Chapter 1: Characteristics of Routing Protocols 7 Campus (RIP, OSPF, EIGRP) Campus Backbone Edge Distribution Internet Gateways (BGP) Internet Building Distribution Building Access WAN Aggregation (RIP, OSPF, EIGRP) IP WAN Remote Offices Figure 1-1 Typical Components of an Enterprise Network ■ WAN Aggregation: This layer contains routers that connect the Campus network out to remote offices. Enterprises use a variety of WAN technologies to connect to remote offices (for example, Multiprotocol Label Switching [MPLS]). Routing protocols used within the Campus network and within the WAN aggregation layer are often versions of Routing Information Protocol (RIP), Open Shortest Path First (OSPF), or Enhanced Interior Gateway Routing Protocol (EIGRP). However, when connecting out to the Internet, Border Gateway Protocol (BGP) is usually the protocol of choice for enterprises having more than one Internet connection. An emerging industry trend is to connect a campus to a remote office over the Internet, as opposed to using a traditional WAN technology. Of course, the Internet is considered an untrusted network, and traffic might need to traverse multiple routers on its way from the campus to a remote office. However, a technology called Virtual Private Networks (VPN) allows a logical connection to be securely set up across an Internet connection. Chapter 2, “Remote Site Connectivity,” examines VPNs in more detail. Routing Protocol Selection As you read through this book, you will learn about the RIPv2, RIPng, OSPFv2, OSPFv3, EIGRP, BGP, and MP-BGP routing protocols. With all of these choices (and even more) available, a fundamental network design consideration becomes which routing protocol From the Library of Alexey Evseenko 8 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide to use in your network. As you learn more about these routing protocols, keeping the following characteristics in mind can help you do a side-by-side comparison of protocols: ■ Scalability ■ Vendor interoperability ■ IT staff’s familiarity with protocol ■ Speed of convergence ■ Capability to perform summarization ■ Interior or exterior routing ■ Type of routing protocol This section of the chapter concludes by taking a closer look at each of these characteristics. Scalability How large is your network now, and how large is it likely to become? The answers to those questions can help determine which routing protocols not to use in your network. For example, while you could use statically configured routes in a network with just a couple of routers, such a routing solution does not scale well to dozens of routers. While all the previously mentioned dynamic routing protocols are capable of supporting most medium-sized enterprise networks, you should be aware of any limitations. For example, all versions of RIP have a maximum hop count (that is, the maximum number of routers across which routing information can be exchanged) of 15 routers. BGP, on the other hand, is massively scalable. In fact, BGP is the primary routing protocol used on the Internet. Vendor Interoperability Will you be using all Cisco routers in your network, or will your Cisco routers need to interoperate with non-Cisco routers? A few years ago, the answer to this question could be a deal-breaker for using EIGRP, because EIGRP was a Cisco-proprietary routing protocol. However, in early 2013, Cisco announced that it was releasing EIGRP to the Internet Engineering Task Force (IETF) standards body as an Informational RFC. As a result, any networking hardware vendor can use EIGRP on its hardware. If you are working in an environment with routers from multiple vendors, you should ensure that your Cisco router has an appropriate Cisco IOS feature set to support your desired routing protocol and that the third-party router(s) also support that routing protocol. From the Library of Alexey Evseenko Chapter 1: Characteristics of Routing Protocols 9 IT Staff’s Familiarity with Protocol You and the IT staff at your company (or your customer’s company) might be much more familiar with one routing protocol than another. Choosing the routing protocol with which the IT staff is more familiar could reduce downtime (because of faster resolutions to troubleshooting issues). Also, if the IT staff is more familiar with the inner workings of one routing protocol, they would be more likely to take advantage of the protocol’s nontrivial features and tune the protocol’s parameters for better performance. Speed of Convergence A benefit of dynamic routing protocols over statically configured routes is the ability of a dynamic routing protocol to reroute around a network failure. For example, consider Figure 1-2. Router R1’s routing protocol might have selected the path through Router R3 as the best route to reach the 192.168.1.0 /24 network connected to Router R4. However, imagine that a link failure occurred on the Fast Ethernet link between Routers R3 and R4. Router R1’s routing protocol should be able to reroute around the link failure by sending packets destined for the 192.168.1.0 /24 network through Router R2. SW1 Backup Path S1/0 Fa0/0 R1 10.1.1.0/24 Fa0/1 S1/0 R2 S1/1 S1/0 Fa0/1 Fa0/0 R4 SW2 Link Failure Fa0/0 192.168.1.0/24 Fa0/1 R3 Figure 1-2 Routing Protocol Convergence After this failover occurs, and the network reaches a steady-state condition (that is, the routing protocol is aware of current network conditions and forwards traffic based on those conditions), the network is said to be a converged network. The amount of time for the failover to occur is called the convergence time. Some routing protocols have faster convergence times than others. RIP and BGP, for example, might take a few minutes to converge, depending on the network topology. By contrast, OSPF and EIGRP can converge in just a few seconds. Capability to Perform Summarization Large enterprise networks can have routing tables with many route entries. The more entries a router maintains in its routing table, the more router CPU resources are required to calculate the best path to a destination network. Fortunately, many routing protocols From the Library of Alexey Evseenko 10 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Key Topic support the ability to do network summarization, although the summarization options and how summarization is performed do differ. Network summarization allows multiple routes to be summarized in a single route advertisement. Not only does summarization reduce the number of entries in a router’s routing table, but it also reduces the number of network advertisements that need to be sent. Figure 1-3 shows an example of route summarization. Specifically, Router R1 is summarizing the 10.0.0.0 /24, 10.0.1.0 /24, 10.0.2.0 /24, and 10.0.3.0 /24 networks into a single network advertisement of 10.0.0.0 /22. Notice that the first two octets (and therefore the first 16 bits) of all the networks are the same. Also, as shown in the figure, the first 6 bits in the third octet are the same for all the networks. Therefore, all the networks have the first 22 bits (that is, 16 bits in the first two octets plus 6 bits in the third octet) in common. By using those 22 bits and setting the remaining bits to 0s, you find the network address, 10.0.0.0 /22. 10.0.0.0/24 10.0.1.0/24 10.0.2.0/24 10.0.3.0/24 10.0.0.0/22 R1 Third Octet Third 128 64 32 16 8 4 2 1 Octet Value 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 2 0 0 0 0 0 0 1 0 3 0 0 0 0 0 0 1 1 6 Bits in Common in the Third Octet Figure 1-3 Network Summarization Interior or Exterior Routing An autonomous system (AS) is a network under a single administrative control. Your company’s network, as an example, might be in a single AS. When your company connects out to two different ISPs, they are each in their own AS. Figure 1-4 shows such a topology. From the Library of Alexey Evseenko ISP 1 AS: 65100 Chapter 1: Characteristics of Routing Protocols 11 Company A AS: 65000 ISP 2 AS: 65200 Figure 1-4 Interconnection of Autonomous Systems In Figure 1-4, Company A is represented with an AS number of 65000. ISP 1 is using an AS number of 65100, and ISP 2 has an AS number of 65200. When selecting a routing protocol, you need to determine where the protocol will run. Will it run within an autonomous system or between autonomous systems? The answer to that question determines whether you need an interior gateway protocol (IGP) or an exterior gateway protocol (EGP): Key Topic ■ IGP: An IGP exchanges routes between routers in a single AS. Common IGPs include OSPF and EIGRP. Although less popular, RIP and IS-IS are also considered IGPs. Also, be aware that BGP is used as an EGP; however, you can use interior BGP (iBGP) within an AS. ■ EGP: Today, the only EGP in use is BGP. However, from a historical perspective, be aware that there was once another EGP, which was actually named Exterior Gateway Protocol (EGP). Routing Protocol Categories Another way to categorize a routing protocol is based on how it receives, advertises, and stores routing information. The three fundamental approaches are distance-vector, linkstate, and path-vector. Distance-Vector A distance-vector routing protocol sends a full copy of its routing table to its directly attached neighbors. This is a periodic advertisement, meaning that even if there have been no topological changes, a distance-vector routing protocol will, at regular intervals, readvertise its full routing table to its neighbors. Obviously, this periodic advertisement of redundant information is inefficient. Ideally, you want a full exchange of route information to occur only once and subsequent updates to be triggered by topological changes. Another drawback to distance-vector routing protocols is the time they take to converge, which is the time required for all routers to update their routing table in response to a topological change in a network. Hold-down timers can speed the convergence process. From the Library of Alexey Evseenko 12 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide After a router makes a change to a route entry, a hold-down timer prevents any subsequent updates for a specified period of time. This approach helps stop flapping routes (which are routes that oscillate between being available and unavailable) from preventing convergence. Yet another issue with distance-vector routing protocols is the potential of a routing loop. To illustrate, consider Figure 1-5. In this topology, the metric being used is hop count, which is the number of routers that must be crossed to reach a network. As one example, Router R3’s routing table has a route entry for network 10.1.1.0 /24 available off of Router R1. For Router R3 to reach that network, two routers must be transited (Routers R2 and R1). As a result, network 10.1.1.0 /24 appears in Router R3’s routing table with a metric (hop count) of 2. 10.1.4.0/24 10.1.1.0/24 Ethernet 1/0 Ethernet 1/0 10.1.2.0/24 10.1.3.0/24 Serial 0/0 R1 Serial 0/0 R2 Serial 0/1 Serial 0/0 R3 Router R2’s Routing Table Network Interface Metric 10.1.1.0/24 S0/0 1 10.1.2.0/24 S0/0 0 10.1.3.0/24 S0/1 0 10.1.4.0/24 S0/1 1 Router R3’s Routing Table Network Interface Metric 10.1.1.0/24 S0/0 2 10.1.2.0/24 S0/0 1 10.1.3.0/24 S0/0 0 10.1.4.0/24 E1/0 0 Figure 1-5 Routing Loop: Before Link Failure Continuing with the example, imagine that interface Ethernet 1/0 on Router R3 goes down. As shown in Figure 1-6, Router R3 loses its directly connected route (with a metric of 0) to network 10.1.4.0 /24; however, Router R2 had a route to 10.1.4.0 /24 in its routing table (with a metric of 1), and this route was advertised to Router R3. Router R3 adds this entry for 10.1.4.0 to its routing table and increments the metric by 1. 10.1.4.0/24 10.1.1.0/24 Ethernet 1/0 Ethernet 1/0 10.1.2.0/24 10.1.3.0/24 Serial 0/0 R1 Serial 0/0 Serial 0/1 R2 Serial 0/0 R3 Router R2’s Routing Table Network Interface Metric 10.1.1.0/24 10.1.2.0/24 10.1.3.0/24 10.1.4.0/24 S0/0 S0/0 S0/1 S0/1 1 0 0 1 10.1.4.0/24 Hop Count 1 Router R3’s Routing Table Network Interface Metric 10.1.1.0/24 S0/0 2 10.1.2.0/24 S0/0 1 10.1.3.0/24 S0/0 0 10.1.4.0/24 E1/0 0 10.1.4.0/24 S0/0 2 Figure 1-6 Routing Loop: After Link Failure From the Library of Alexey Evseenko Chapter 1: Characteristics of Routing Protocols 13 The problem with this scenario is that the 10.1.4.0 /24 entry in Router R2’s routing table was because of an advertisement that Router R2 received from Router R3. Now, Router R3 is relying on that route, which is no longer valid. The routing loop continues as Router R3 advertises its newly learned route of 10.1.4.0 /24 with a metric of 2 to its neighbor, Router R2. Because Router R2 originally learned the 10.1.4.0 /24 network from Router R3, when it sees Router R3 advertising that same route with a metric of 2, the network gets updated in Router R2’s routing table to have a metric of 3, as shown in Figure 1-7. 10.1.1.0/24 10.1.4.0/24 Ethernet 1/0 Ethernet 1/0 10.1.2.0/24 10.1.3.0/24 Serial 0/0 R1 Serial 0/0 R2 Serial 0/1 Serial 0/0 R3 Router R2’s Routing Table Network Interface Metric 10.1.1.0/24 S0/0 1 10.1.2.0/24 S0/0 0 10.1.3.0/24 S0/1 0 10.1.4.0/24 S0/1 1 10.1.4.0/24 S0/1 3 Router R3’s Routing Table Network Interface Metric 10.1.1.0/24 S0/0 2 10.1.2.0/24 S0/0 1 10.1.3.0/24 S0/0 0 10.1.4.0/24 10.1.4.0/24 E1/0 0 Hop Count 2 10.1.4.0/24 S0/0 2 Figure 1-7 Routing Loop: Routers R2 and R3 Incrementing the Metric for 10.1.4.0 /24 The metric for the 10.1.4.0 /24 network continues to increment in the routing tables for both Routers R2 and R3, until the metric reaches a value considered to be an unreachable value (for example, 16 in the case of RIP). This process is referred to as a routing loop. Distance-vector routing protocols typically use one of two approaches for preventing routing loops: Key Topic ■ Split Horizon: The Split Horizon feature prevents a route learned on one interface from being advertised back out of that same interface. ■ Poison Reverse: The Poison Reverse feature causes a route received on one interface to be advertised back out of that same interface with a metric considered to be infinite. Having either approach applied to the previous example would have prevented Router R3 from adding the 10.1.4.0 /24 network into its routing table based on an advertisement from Router R2. Routing protocols falling under the distance-vector category include ■ Routing Information Protocol (RIP): A distance-vector routing protocol that uses a metric of hop count. The maximum number of hops between two routers in an RIPbased network is 15. Therefore, a hop count of 16 is considered to be infinite. Also, RIP is an IGP. Three primary versions of RIP exist. RIPv1 periodically broadcasts its entire IP routing table, and it supports only fixed-length subnet masks. RIPv2 supports variable-length subnet masks, and it uses multicasts (to a multicast address of From the Library of Alexey Evseenko 14 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide 224.0.0.9) to advertise its IP routing table, as opposed to broadcasts. RIP next generation (RIPng) supports the routing of IPv6 networks, while RIPv1 and RIPv2 support the routing of IPv4 networks. ■ Enhanced Interior Gateway Routing Protocol (EIGRP): A Cisco-proprietary protocol until early 2013, EIGRP has been popular in Cisco-only networks; however, other vendors can now implement EIGRP on their routers. EIGRP is classified as an advanced distance-vector routing protocol, because it improves on the fundamental characteristics of a distance-vector routing protocol. For example, EIGRP does not periodically send out its entire IP routing table to its neighbors. Instead it uses triggered updates, and it converges quickly. Also, EIGRP can support multiple routed protocols (for example, IPv4 and IPv6). EIGRP can even advertise network services (for example, route plan information for a unified communications network) using the Cisco Service Advertisement Framework (SAF). By default, EIGRP uses bandwidth and delay in its metric calculation; however, other parameters can be considered. These optional parameters include reliability, load, and maximum transmission unit (MTU) size. The algorithm EIGRP uses for its route selection is not Dijkstra’s Shortest Path First algorithm (as used by OSPF). Instead, EIGRP uses Diffusing Update Algorithm (DUAL). Link-State Rather than having neighboring routers exchange their full routing tables with one another, a link-state routing protocol allows routers to build a topological map of a network. Then, similar to a global positioning system (GPS) in a car, a router can execute an algorithm to calculate an optimal path (or paths) to a destination network. Routers send link-state advertisements (LSA) to advertise the networks they know how to reach. Routers then use those LSAs to construct the topological map of a network. The algorithm run against this topological map is Dijkstra’s Shortest Path First algorithm. Unlike distance-vector routing protocols, link-state routing protocols exchange full routing information only when two routers initially form their adjacency. Then, routing updates are sent in response to changes in the network, as opposed to being sent periodically. Also, link-state routing protocols benefit from shorter convergence times, as compared to distance-vector routing protocols (although convergence times are comparable to EIGRP). Routing protocols that can be categorized as link-state routing protocols include ■ Open Shortest Path First (OSPF): A link-state routing protocol that uses a metric of cost, which is based on the link speed between two routers. OSPF is a popular IGP, because of its scalability, fast convergence, and vendor interoperability. ■ Intermediate System–to–Intermediate System (IS-IS): This link-state routing protocol is similar in its operation to OSPF. It uses a configurable, yet dimensionless, metric associated with an interface and runs Dijkstra’s Shortest Path First algorithm. From the Library of Alexey Evseenko Chapter 1: Characteristics of Routing Protocols 15 Although using IS-IS as an IGP offers the scalability, fast convergence, and vendor interoperability benefits of OSPF, it has not been as widely deployed as OSPF. Path-Vector A path-vector routing protocol includes information about the exact path packets take to reach a specific destination network. This path information typically consists of a series of autonomous systems through which packets travel to reach their destination. Border Gateway Protocol (BGP) is the only path-vector protocol you are likely to encounter in a modern network. Also, BGP is the only EGP in widespread use today. In fact, BGP is considered to be the routing protocol that runs the Internet, which is an interconnection of multiple autonomous systems. BGP’s path selection is not solely based on AS hops, however. BGP has a variety of other parameters that it can consider. Interestingly, none of those parameters are based on link speed. Also, although BGP is incredibly scalable, it does not quickly converge in the event of a topological change. The current version of BGP is BGP version 4 (BGP-4). However, an enhancement to BGP-4, called Multiprotocol BGP (MP-BGP), supports the routing of multiple routed protocols, such as IPv4 and IPv6. Summary of Categories As a reference, Table 1-2 categorizes the previously listed routing protocols, based on their type and whether they are primarily an IGP or an EGP. Table 1-2 Routing Protocol Characteristics Key Topic Routing Protocol Type RIP Distance-Vector EIGRP (Advanced) Distance-Vector OSPF Link-State IS-IS Link-State BGP Path-Vector Primarily IGP or EGP IGP IGP IGP IGP EGP Note that a network can simultaneously support more than one routing protocol through the process of route redistribution. For example, a router could have one of its interfaces participating in an OSPF area of the network and have another interface participating in an EIGRP area of the network. This router could then take routes learned through OSPF and inject those routes into the EIGRP routing process. Similarly, EIGRP-learned routes could be redistributed into the OSPF routing process. From the Library of Alexey Evseenko 16 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Network Technology Fundamentals When designing a new network or analyzing an existing network, the ability to determine how traffic flows through that network is a necessary skill. Traffic flow is determined both by the traffic type (for example, unicast, multicast, broadcast, or anycast) and the network architecture type (for example, point-to-point, broadcast, and nonbroadcast multiaccess [NMBA]). This section provides you with the basic characteristics of these network technologies. Network Traffic Types Traffic can be sent to a single network host, all hosts on a subnet, or a select grouping of hosts that requested to receive the traffic. These traffic types include unicast, broadcast, multicast, and anycast. Older routing protocols, such as RIPv1 and IGRP (the now-antiquated predecessor to EIGRP), used broadcasts to advertise routing information; however, most modern IGPs use multicasts for their route advertisements. Note BGP establishes a TCP session between peers. Therefore, unicast transmissions are used for BGP route advertisement. Unicast Most network traffic is unicast in nature, meaning that traffic travels from a single source device to a single destination device. Figure 1-8 illustrates an example of a unicast transmission. In IPv4 networks, unicast addresses are made up of Class A, B, and C addresses. IPv6 networks instead use global unicast addresses, which begin with the 2000::/3 prefix. Destination Destination Address: Video Server 10.1.1.1 Address: 10.1.1.2 Receiver 10.1.1.1 Receiver 10.1.1.2 Non-Receiver 10.1.1.3 Figure 1-8 Sample IPv4 Unicast Transmission Broadcast Broadcast traffic travels from a single source to all destinations in a subnet (that is, a broadcast domain). A broadcast address of 255.255.255.255 might seem that it would reach all hosts on an interconnected network. However, 255.255.255.255 targets all From the Library of Alexey Evseenko Chapter 1: Characteristics of Routing Protocols 17 devices on a single network, specifically the network local to the device sending a packet destined for 255.255.255.255. Another type of broadcast address is a directed broadcast address, which targets all devices in a remote network. For example, the address 172.16.255.255 /16 is a directed broadcast targeting all devices in the 172.16.0.0 /16 network. Figure 1-9 illustrates an example of a broadcast transmission. Note Broadcasts are used in IPv4 networks, but not in IPv6 networks. Video Server Destination Address: 255.255.255.255 Figure 1-9 Sample IPv4 Broadcast Transmission Receiver 10.1.1.1 Receiver 10.1.1.2 Non-Receiver 10.1.1.3 Multicast Multicast technology provides an efficient mechanism for a single host to send traffic to multiple, yet specific, destinations. For example, imagine a network with 100 users. Twenty of those users want to receive a video stream from a video server. With a unicast solution, the video server would have to send 20 individual streams, one stream for each recipient. Such a solution could consume a significant amount of network bandwidth and put a heavy processor burden on the video server. With a broadcast solution, the video server would only have to send the video stream once; however, the stream would be received by every device on the local subnet, even devices not wanting to receive it. Even though those devices do not want to receive the video stream, they still have to pause what they are doing and take time to check each of these unwanted packets. As shown in Figure 1-10, multicast offers a compromise, allowing the video server to send the video stream only once, and only sending the video stream to devices on the network that want to receive the stream. What makes this possible in IPv4 networks is the use of a Class D address. A Class D address, such as 239.1.2.3, represents the address of a multicast group. The video server could, in this example, send a single copy of each video stream packet destined for 239.1.2.3. Devices wanting to receive the video stream can join the multicast group. Based on the device request, switches and routers in the topology can then dynamically determine out of which ports the video stream should be forwarded. From the Library of Alexey Evseenko 18 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Multicast Group: 239.1.2.3 Destination Address: 239.1.2.3 Video Server Figure 1-10 Sample IPv4 Multicast Transmission Receiver 10.1.1.1 Receiver 10.1.1.2 Non-Receiver 10.1.1.3 Note In IPv6 networks, multicast addresses have a prefix of ff00::/8. Anycast With anycast, a single IPv6 address is assigned to multiple devices, as depicted in Figure 1-11. The communication flow is one-to-nearest (from the perspective of a router’s routing table). 2200::1 Server A R1 Destination Address: 2200::1 2100::1 Figure 1-11 IPv6 Anycast Example R2 R3 Server B 2200::1 From the Library of Alexey Evseenko Chapter 1: Characteristics of Routing Protocols 19 In Figure 1-11, a client with an IPv6 address of 2100::1 wants to send traffic to a destination IPv6 address of 2200::1. Notice that two servers (Server A and Server B) have an IPv6 address of 2200::1. In the figure, the traffic destined for 2200::1 is sent to Server A through Router R2, because the network on which Server A resides appears to be closer than the network on which Server B resides, from the perspective of Router R1’s IPv6 routing table. Note Anycast is an IPv6 concept and is not found in IPv4 networks. Also, note that IPv6 anycast addresses are not unique from IPv6 unicast addresses. Network Architecture Types Another set of network technologies that impact routing, and determine traffic flow, deal with network architecture types (for example, point-to-point, broadcast, and NBMA). For design and troubleshooting purposes, you should be familiar with the characteristics of each. Point-to-Point Network A very basic network architecture type is a point-to-point network. As seen in Figure 1-12, a point-to-point network segment consists of a single network link interconnecting two routers. This network type is commonly found on serial links. R1 R2 Figure 1-12 Point-to-Point Network Type Broadcast Network A broadcast network segment uses an architecture in which a broadcast sent from one of the routers on the network segment is propagated to all other routers on that segment. An Ethernet network, as illustrated in Figure 1-13, is a common example of a broadcast network. From the Library of Alexey Evseenko 20 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide R1 Broadcast SW1 R2 R3 Figure 1-13 Broadcast Network Type NBMA As its name suggests, a nonbroadcast multiaccess (NBMA) network does not support broadcasts. As a result, if an interface on a router connects to two other routers, as depicted in Figure 1-14, individual messages must be sent to each router. DLCI = 102 Frame Relay Switch DLCI = 201 BR1 S1/0: 10.1.1.2/24 HQ S1/0: DLCI 10.1.1.1/24 = 103 DLCI = 301 BR2 S1/0: 10.1.1.3/24 Figure 1-14 NBMA Network Type The absence of broadcast support also implies an absence of multicast support. This can lead to an issue with dynamic routing protocols (such as OSPF and EIGRP) that dynamically form neighborships with neighboring routers discovered through multicasts. Because neighbors cannot be dynamically discovered, neighboring IP addresses must be statically configured. Examples of NBMA networks include ATM and Frame Relay. The requirement for static neighbor configuration is not the only routing protocol issue stemming from an NBMA network. Consider the following: From the Library of Alexey Evseenko Key Topic Chapter 1: Characteristics of Routing Protocols 21 ■ Split Horizon issues: Distance-vector routing protocols (RIP and EIGRP, for example) can use the previously mentioned Split Horizon rule, which prevents routes learned on one interface from being advertised back out of that same interface. Consider Figure 1-14 again. Imagine that Router BR2 advertised a route to Router HQ, and Router HQ had Split Horizon enabled for its S 1/0 interface. That condition would prevent Router HQ from advertising that newly learned route to Router BR1, because it would be advertising that route out the same interface on which it was learned. Fortunately, in situations like this, you can administratively disable Split Horizon. ■ Designated router issues: Recall from your CCNA studies that a broadcast network (for example, an Ethernet network) OSPF elects a designated router (DR), with which all other routers on a network segment form an adjacency. Interestingly, OSPF attempts to elect a DR on an NMBA network, by default. Once again considering Figure 1-14, notice that only Router HQ has a direct connection to the other routers; therefore, Router HQ should be the DR. This election might not happen without administrative intervention, however. Specifically, in such a topology, you would need to set the OSPF Priority to 0 on both Routers BR1 and BR2, which prevents them from participating in a DR election. TCP/IP Fundamentals Recall from your CCNA studies that the Internet layer of the TCP/IP stack maps to Layer 3 (that is, the network layer) of the Open Systems Interconnection (OSI) model. While multiple routed protocols (for example, IP, IPX, and AppleTalk) reside at the OSI model’s network layer, Internet Protocol (IP) has become the de-facto standard for network communication. Sitting just above IP, at the transport layer (of both the TCP/IP and OSI models) is Transmission Control Protocol (TCP) and User Datagram Protocol (UDP). This section reviews the basic operation of the TCP/IP suite of protocols, as their behavior is the foundation of the routing topics in the remainder of this book. IP Characteristics Figure 1-15 shows the IP version 4 packet header format. From the Library of Alexey Evseenko 22 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Version Header Length Type of Service Total Length Identification IP Flags Fragment Offset TTL Protocol Header Checksum Source Address Destination Address IP Option (Variable Length) Figure 1-15 IP Version 4 Packet Header Format The functions of the fields in an IPv4 header are as follows: ■ Version field: The Version field indicates IPv4 (with a value of 0100). ■ Header Length field: The Header Length field (commonly referred to as the Internet Header Length (IHL) field) is a 4-bit field indicating the number of 4-byte words in the IPv4 header. ■ Type of Service field: The Type of Service (ToS) field (commonly referred to as the ToS Byte or DHCP field) has 8 bits used to set quality of service (QoS) markings. Specifically, the 6 leftmost bits are used for the Differentiated Service Code Point (DSCP) marking, and the 2 rightmost bits are used for Explicit Congestion Notification (an extension of Weighted Random Early Detection (WRED), used for flow control). ■ Total Length field: The Total Length field is a 16-bit value indicating the size of the packet (in bytes). ■ Identification field: The Identification field is a 16-bit value used to mark fragments that came from the same packet. ■ IP Flags field: The IP Flags field is a 3-bit field, where the first bit is always set to a 0. The second bit (the Don’t Fragment [DF] bit) indicates that a packet should not be fragmented. The third bit (the More Fragments [MF] bit) is set on all of a packet’s fragments, except the last fragment. ■ Fragment Offset field: The Fragment Offset field is a 13-bit field that specifies the offset of a fragment from the beginning of the first fragment in a packet, in 8-byte units. ■ Time to Live (TTL) field: The Time to Live (TTL) field is an 8-bit field that is decremented by 1 every time the packet is routed from one IP network to another (that From the Library of Alexey Evseenko Chapter 1: Characteristics of Routing Protocols 23 is, passes through a router). If the TTL value ever reaches 0, the packet is discarded from the network. This behavior helps prevent routing loops. ■ Protocol field: The Protocol field is an 8-bit field that specifies the type of data encapsulated in the packet. TCP and UDP are common protocols identified by this field. ■ Header Checksum field: The Header Checksum field is a 16-bit field that performs error checking for a packet’s header. Interestingly, this error checking is performed for UDP segments, in addition to TCP segments, even though UDP is itself an “unreliable” protocol. ■ Source Address field: The 32-bit Source Address field indicates the source of an IPv4 packet. ■ Destination Address field: The 32-bit Destination Address field indicates the destination of an IPv4 packet. ■ IP Option field: The IP Option field is a seldom-used field that can specify a variety of nondefault packet options. If the IP Option field is used, its length varies based on the options specified. An IPv6 packet header, as seen in Figure 1-16, is simpler in structure than the IPv4 packet header. Version Traffic Class Flow Label Payload Length Next Header Hop Limit Source Address Destination Address Figure 1-16 IP Version 6 Packet Header Format The purposes of the fields found in an IPv6 header are as follows: ■ Version field: Like an IPv4 header, an IPv6 header has a Version field, indicating IPv6 (with a value of 0110). ■ Traffic Class field: The Traffic Class field is the same size, performs the same functions, and takes on the same values as the Type of Service field in an IPv4 header. ■ Flow Label field: The 20-bit Flow Label field can be used to instruct a router to use a specific outbound connection for a traffic flow (if a router has multiple outbound connections). By having all packets in the same flow use the same connection, the probability of packets arriving at their destination out of order is reduced. From the Library of Alexey Evseenko 24 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide ■ Payload Length field: The Payload Length field is a 16-bit field indicating the size (in bytes) of the payload being carried by an IPv6 packet. ■ Next Header field: The Next Header field, similar to the Protocol field in an IPv4 header, indicates the type of header encapsulated in the IPv6 header. Typically, this 8-bit header indicates a specific transport layer protocol. ■ Hop Limit field: The 8-bit Hop Limit field replaces, and performs the same function as, the IPv4 header’s TTL field. Specifically, it is decremented at each router hop until it reaches 0, at which point the packet is discarded. ■ Source Address field: Similar to the IPv4 header’s 32-bit Source Address field, the IPv6 Source Address field is 128 bits in size and indicates the source of an IPv6 packet. ■ Destination Address field: Similar to the IPv4 header’s 32-bit Destination Address field, the IPv6 Destination Address field is 128 bits in size and indicates the destination of an IPv6 packet. Routing Review As a review from your CCNA studies, recall how the fields in an IP header are used to route a packet from one network to another. While the process is similar for IPv6, the following example considers IPv4. In the topology shown in Figure 1-17, PC1 needs to send traffic to Server1. Notice that these devices are on different networks. So, the question becomes, “How does a packet from a source IP address of 192.168.1.2 get forwarded to a destination IP address of 192.168.3.2?” IP Address: 192.168.1.2/24 MAC Address: 1111.1111.1111 Default Gateway: 192.168.1.1 PC1 IP Address: 192.168.3.2/24 MAC Address: 2222.2222.2222 Default Gateway: 192.168.3.1 Server1 SW1 Fa0/0 R1 192.168.1.1/24 AAAA.AAAA.AAAA S1/1 192.168.2.1/30 S1/1 192.168.2.2/30 R2 Fa0/0 SW2 192.168.3.1/24 BBBB.BBBB.BBBB Figure 1-17 Basic Routing Topology The answer is routing, as summarized in the following steps: Step 1. PC1 compares its IP address and subnet mask of 192.168.1.2 /24 with the destination IP address and subnet mask of 192.168.3.2 /24. PC1 concludes that the destination IP address resides on a remote subnet. Therefore, PC1 needs to From the Library of Alexey Evseenko Chapter 1: Characteristics of Routing Protocols 25 send the packet to its default gateway, which could have been manually configured on PC1 or dynamically learned through Dynamic Host Configuration Protocol (DHCP). In this example, PC1 has a default gateway of 192.168.1.1 (Router R1). However, to construct a Layer 2 frame, PC1 also needs the MAC address of its default gateway. PC1 sends an Address Resolution Protocol (ARP) request for Router R1’s MAC address. After PC1 receives an ARP reply from Router R1, PC1 adds Router R1’s MAC address to its ARP cache. PC1 now sends its data in a frame destined for Server1, as shown in Figure 1-18. Note ARP uses broadcasts, which are not supported by IPv6. Therefore, IPv6 exchanges Neighbor Discovery messages with adjacent devices to perform functions similar to ARP. IP Address: 192.168.1.2/24 MAC Address: 1111.1111.1111 Default Gateway: 192.168.1.1 PC1 PC1’s ARP Cache 192.168.1.1 AAAA.AAAA.AAAA ARP Request ARP Reply IP Address: 192.168.3.2/24 MAC Address: 2222.2222.2222 Default Gateway: 192.168.3.1 Server1 SW1 Fa0/0 R1 192.168.1.1/24 AAAA.AAAA.AAAA Data Frame S1/1 192.168.2.1/30 S1/1 192.168.2.2/30 R2 Fa0/0 SW2 192.168.3.1/24 BBBB.BBBB.BBBB Source IP Address: 192.168.1.2 Source MAC Address: 1111.1111.1111 Destination IP Address: 192.168.3.2 Destination MAC Address: AAAA.AAAA.AAAA Figure 1-18 Basic Routing: Step 1 Step 2. Router R1 receives the frame sent from PC1 and interrogates the IP header. An IP header contains a Time to Live (TTL) field, which is decremented once for each router hop. Therefore, Router R1 decrements the packet’s TTL field. If the value in the TTL field is reduced to 0, the router discards the frame and sends a time exceeded Internet Control Message Protocol (ICMP) message back to the source. Assuming that the TTL is not decremented to 0, Router R1 checks its routing table to determine the best path to reach network 192.168.3.0 /24. In this example, Router R1’s routing table has an entry stating that network 192.168.3.0 /24 is accessible through interface Serial 1/1. Note that ARPs are not required for serial interfaces, because these interface types do not have MAC addresses. Router R1, therefore, forwards the frame out of its Serial 1/1 interface, as shown in Figure 1-19. From the Library of Alexey Evseenko 26 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide IP Address: 192.168.1.2/24 MAC Address: 1111.1111.1111 Default Gateway: 192.168.1.1 PC1 Source IP Address: 192.168.1.2 Source MAC Address: N/A Destination IP Address: 192.168.3.2 Destination MAC Address: N/A IP Address: 192.168.3.2/24 MAC Address: 2222.2222.2222 Default Gateway: 192.168.3.1 Server1 Data Frame SW1 Fa0/0 R1 192.168.1.1/24 AAAA.AAAA.AAAA S1/1 192.168.2.1/30 S1/1 192.168.2.2/30 Router R1’s Route Entry 192.168.3.0/24 Serial 1/1 R2 Fa0/0 192.168.3.1/24 BBBB.BBBB.BBBB SW2 Figure 1-19 Basic Routing: Step 2 Step 3. When Router R2 receives the frame, it decrements the TTL in the IP header, just as Router R1 did. Again, assuming that the TTL did not get decremented to 0, Router R2 interrogates the IP header to determine the destination network. In this case, the destination network of 192.168.3.0 /24 is directly attached to Router R2’s Fast Ethernet 0/0 interface. Similar to how PC1 sent out an ARP request to determine the MAC address of its default gateway, Router R2 sends an ARP request to determine the MAC address of Server1. After an ARP Reply is received from Server1, Router R2 forwards the frame out of its Fast Ethernet 0/0 interface to Server1, as illustrated in Figure 1-20. IP Address: 192.168.1.2/24 MAC Address: 1111.1111.1111 Default Gateway: 192.168.1.1 PC1 IP Address: 192.168.3.2/24 MAC Address: 2222.2222.2222 Default Gateway: 192.168.3.1 Server1 Router R2’s ARP Cache 192.168.3.2 2222.2222.2222 SW1 Fa0/0 R1 192.168.1.1/24 AAAA.AAAA.AAAA S1/1 192.168.2.1/30 S1/1 192.168.2.2/30 ARP Request ARP Reply R2 Fa0/0 SW2 192.168.3.1/24 BBBB.BBBB.BBBB Data Frame Figure 1-20 Basic Routing: Step 3 Source IP Address: 192.168.1.2 Source MAC Address: BBBB.BBBB.BBBB Destination IP Address: 192.168.3.2 Destination MAC Address: 2222.2222.2222 From the Library of Alexey Evseenko Chapter 1: Characteristics of Routing Protocols 27 Asymmetric Routing Many times, routing operations are impacted by Layer 2 switching in a network. As an example, consider a situation, as depicted in Figure 1-21, where a VLAN is spread across multiple access layer switches, and a First-Hop Redundancy Protocol (FHRP) (for example, HSRP, VRRP, or GLBP) is being used on multilayer switches at the distribution layer. Internet CSW1 Core Layer Active HSRP Router DSW1 Standby HSRP Router Distribution DSW2 Layer ASW1 VLAN 100 10.1.1.100/24 PC1 ASW2 Access Layer VLAN 100 PC2 10.1.1.101/24 Figure 1-21 Topology with Asymmetric Routing In the figure, notice that VLAN 100 (that is, 10.1.1.0 /24) exists on both switches ASW1 and ASW2 at the access layer. Also, notice that there are two multilayer switches (that is, DSW1 and DSW2) at the distribution layer with an HSRP configuration to provide default gateway redundancy to hosts in VLAN 100. The multilayer switch in the core layer (that is, CSW1) supports equal-cost load balancing between DSW1 and DSW2. From the Library of Alexey Evseenko 28 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Focusing on the HSRP configuration, imagine that DSW1 is the active HSRP “router” and DSW2 is the standby HSRP “router.” Next, imagine that PC1 sends traffic out to the Internet. The traffic flows through ASW1, DSW1 (the active HSRP router), and CSW1, as shown in Figure 1-22. Internet Outbound Traffic Flow CSW1 Core Layer Active HSRP Router DSW1 Standby HSRP Router Distribution DSW2 Layer ASW1 VLAN 100 10.1.1.100/24 PC1 ASW2 Access Layer VLAN 100 PC2 10.1.1.101/24 Figure 1-22 Unidirectional Outbound Traffic A challenge with this common scenario can occur with the return traffic, as illustrated in Figure 1-23. The return traffic flows from the Internet and into CSW1, which then loadbalances between DSW1 and DSW2. When the path through DSW1 is used, the MAC address of PC1 is known to DSW1’s ARP cache (because it just saw PC1’s MAC address being used as the source MAC address in a packet going out to the Internet). However, when the path through DSW2 is used, DSW2 might not have PC1’s MAC address in its ARP cache (because PC1 isn’t normally using DSW2 as its default gateway). As a result, DSW2 floods this unknown unicast traffic out all its other ports. This issue is known as From the Library of Alexey Evseenko Chapter 1: Characteristics of Routing Protocols 29 asymmetric routing, because traffic might leave through one path (for example, through DSW1) and return through a different path (for example, through DSW2). Another name given to this issue is unicast flooding, because of the potential for a backup FHRP router or multilayer switch to flood unknown unicast traffic for returning traffic. Key Topic Internet Inbound Traffic Flow from Internet to CSW1 One Possible Load Balancing Path from CSW1 to DSW1 Another Possible Load Balancing Path from CSW1 to DSW2 CSW1 Active HSRP Router DSW1 Core Layer Standby HSRP Router Distribution DSW2 Layer ASW1 VLAN 100 10.1.1.100/24 PC1 ASW2 Access Layer VLAN 100 PC2 10.1.1.101/24 Figure 1-23 Unidirectional Flooding of Inbound Traffic Cisco recommends that you do not span a VLAN across more than one access layer switch to avoid such an issue. However, if a particular design requires the spanning of a VLAN across multiple access layer switches, the best-practice recommendation from Cisco is that you adjust the FHRP device’s ARP timer to be equal to or less than the Content Addressable Memory (CAM) aging time. Otherwise, the CAM table entry for the end station will time out before the ARP entry times out, meaning that the FHRP device knows (from its ARP cache) the MAC address corresponding to the destination IP address, and therefore does not need to ARP for the MAC address. However, if the CAM From the Library of Alexey Evseenko 30 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide entry has timed out, the FHRP device needs to flood the traffic to make sure that it gets to the intended destination. With an ARP timer equal to or less than the CAM aging time, there will never be an ARP entry for a MAC address not also stored in the CAM table. As a result, if the FHRP device’s ARP entry has timed out, it will use ARP to get the MAC address of the destination IP address, thus causing the CAM table to learn the appropriate egress port. Maximum Transmission Unit A Maximum Transmission Unit (MTU), in the context of Cisco routers, typically refers to the largest packet size supported on a router interface; 1500 bytes is a common value. Smaller MTU sizes result in more overhead, because more packets (and therefore more headers) are required to transmit the same amount of data. However, if you are sending data over slower link speeds, large MTU values could cause delay for latency-sensitive traffic. Note Latency is the time required for a packet to travel from its source to destination. Some applications, such as Voice over IP (VoIP), are latency sensitive, meaning that they do not perform satisfactorily if the latency of their packets is too high. For example, the G.114 recommendation states that the one-way latency for VoIP traffic should not exceed 150 ms.Latency is a factor in the calculation of the bandwidth-delay product. Specifically, the bandwidth-delay product is a measurement of the maximum number of bits that can be on a network segment at any one time, and it is calculated by multiplying the segment’s bandwidth (in bits/sec) by the latency packets experience as they cross the segment (in sec). For example, a network segment with a bandwidth of 768 kbps and an end-to-end latency of 100 ms would have a bandwidth-delay product of 76,800 bits (that is 768,000 * 0.1 = 76,800). ICMP Messages Another protocol residing alongside IP at Layer 3 of the OSI model is Internet Control Message Protocol (ICMP). ICMP is most often associated with the Ping utility, used to check connectivity with a remote network address (using ICMP Echo Request and ICMP Echo Reply messages). Note There is some debate in the industry about where ICMP fits into the OSI model. Although it is generally considered to be a Layer 3 protocol, be aware that ICMP is encapsulated inside of an IP packet, and some of its messages are based on Layer 4 events. From the Library of Alexey Evseenko Chapter 1: Characteristics of Routing Protocols 31 ICMP does have other roles beyond Ping. By using a variety of message types, ICMP can be used by network devices (for example, routers) to provide information to one another. Figure 1-24 shows the structure of an ICMP packet header. Type Code Checksum Rest of Header Figure 1-24 ICMP Packet Header Format The purposes of the fields found in an ICMP packet header are as follows: ■ Type: The 1-byte Type field contains a number indicating the specific type of ICMP message. Here are a few examples: A Type 0 is an Echo Reply message, a Type 3 is a Destination Unreachable message, a Type 5 is a Redirect message, and a Type 8 is an ICMP Echo Request message. ■ Code: The 1-byte Code field further defines the ICMP type. For example, there are 16 codes for Destination Unreachable ICMP messages. Here are a couple of examples: A code of 0 means that the destination network is unreachable, while a code of 1 means that the destination host is unreachable. ■ Checksum: The 2-byte Checksum field performs error checking. ■ Rest of Header: The 4-byte Rest of Header field is 4 bytes in length, and its contents are dependent on the specific ICMP type. While ICMP has multiple messages types and codes, for purposes of the ROUTE exam, you should primarily be familiar with the two following ICMP message types: Key Topic ■ Destination Unreachable: If a packet enters a router destined for an address that the router does not know how to reach, the router can let the sender know by sending a Destination Unreachable ICMP message back to the sender. ■ Redirect: A host might have routing information indicating that to reach a particular destination network, packets should be sent to a certain next-hop IP address. However, if network conditions change and a different next-hop IP address should be used, the original next-hop router can let the host know to use a different path by sending the host a Redirect ICMP message. TCP Characteristics TCP is commonly touted as being a reliable transport mechanism, as compared to its unreliable counterpart, UDP. Examination of the TCP segment header format, as shown in Figure 1-25, provides valuable insight into how this reliability happens. From the Library of Alexey Evseenko 32 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Source Port Destination Port Sequence Number Acknowledgment Number Offset Reserved TCP Flags Window Checksum Urgent Pointer TCP Options (Optional) Figure 1-25 TCP Segment Header Format The purposes of the fields found in a TCP segment header are as follows: ■ Source Port field: The Source Port field is a 16-bit field indicating the sending port number. ■ Destination Port field: The Destination Port field is a 16-bit field indicating the receiving port number. ■ Sequence Number field: The Sequence Number field is a 32-bit field indicting the amount of data sent during a TCP session. The sending party can be assured that the receiving party really received the data, because the receiving party uses the sequence number as the basis for the acknowledgment number in the next segment it sends back to the sender. Specifically, the acknowledgment number in that segment equals the received sequence number plus 1. Interestingly, at the beginning of a TCP session, the initial sequence number can be any number in the range 0–4,294,967,295 (that is, the range of numbers that can be represented by 32 bits). However, when you are doing troubleshooting and performing a packet capture of a TCP session, the initial sequence number might appear to be a relative sequence number of 0. The use of a relative sequence number can often make data easier to interpret while troubleshooting. ■ Acknowledgment Number field: The 32-bit Acknowledgment Number field is used by the recipient of a segment to request the next segment in the TCP session. The value of this field is calculated by adding 1 to the previously received sequence number. ■ Offset field: The Offset field is a 4-bit field that specifies the offset between the data in a TCP segment and the start of the segment, in units of 4-byte words. From the Library of Alexey Evseenko Chapter 1: Characteristics of Routing Protocols 33 ■ Reserved field: The 3-bit Reserved field is not used, and each of the 3 bits are set to a value of 0. ■ TCP Flags field: The TCP Flags field is comprised of 9 flag bits (also known as control bits), which indicate a variety of segment parameters. ■ Window field: The 16-bit Window field specifies the number of bytes a sender is willing to transmit before receiving an acknowledgment from the receiver. ■ Checksum field: The Checksum field is a 16-bit field that performs error checking for a segment. ■ Urgent Pointer field: The 16-bit Urgent Pointer field indicates that last byte of a segment’s data that was considered urgent. The field specifies the number of bytes between the current sequence number and that urgent data byte. ■ TCP Options field: The optional TCP Options field can range in size from 0 to 320 bits (as long as the number of bits is evenly divisible by 32), and the field can contain a variety of TCP segment parameters. Three-Way Handshake The process of setting up a TCP session involves a three-way handshake, as listed in the following steps and as illustrated in Figure 1-26. Key Topic Step 1. Step 2. The session initiator sends a Synchronization (SYN) message to the target host. The target host acknowledges receipt of the SYN message with an Acknowledgment (ACK) message and also sends a SYN message of its own. Step 3. The session initiator receives the SYN messages from the target host and acknowledges receipt by sending an ACK message. 1 SYN SYN + ACK 2 3 ACK Session Initiator Session Target Figure 1-26 TCP Three-Way Handshake TCP Sliding Window TCP communication uses windowing, meaning that one or more segments are sent at one time, and a receiver can acknowledge the receipt of all the segments in a window From the Library of Alexey Evseenko 34 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Key Topic with a single acknowledgment. In some cases, as illustrated in Figure 1-27, TCP uses a sliding window, where the window size begins with one segment. If there is a successful acknowledgment of that one segment (that is, the receiver sends an ACK asking for the next segment), the window size doubles to two segments. Upon successful receipt of those two segments, the next window contains four segments. This exponential increase in window size continues until the receiver does not acknowledge successful receipt of all segments within a certain time period (known as the round-trip time [RTT], which is sometimes called real transfer time), or until a configured maximum window size is reached. Window Size 1 Segment 1 ACK 2 Window Size 2 Sender Segment 2 Segment 3 ACK 4 Receiver Window Size 4 Segment 4 Segment 5 Segment 6 Segment 7 ACK 8 Figure 1-27 TCP Sliding Window The TCP Maximum Segment Size (MSS) is the amount of data that can be contained in a single TCP segment. The value is dependent on the current TCP window size. Note The term Maximum Segment Size (MSS) seems to imply the size of the entire Layer 4 segment (that is, including Layer 2, Layer 3, and Layer 4 headers). However, MSS only refers to the amount of data in a segment. If a single TCP flow drops a packet, that flow might experience TCP slow start, meaning that the window size is reduced to one segment. The window size then grows exponentially until it reaches one-half of its congestion window size (that is, the window size when congestion was previously experienced). At that point, the window size begins to grow linearly instead of exponentially. If a router interface’s output queue fills to capacity, all TCP flows can simultaneously start to drop packets, causing all TCP flows to experience slow start. This condition, called global synchronization or TCP synchronization, results in a very inefficient From the Library of Alexey Evseenko Chapter 1: Characteristics of Routing Protocols 35 use of bandwidth, because of all TCP flows having reduced window sizes and therefore spending more time waiting for acknowledgments. Note To prevent global synchronization, Cisco IOS supports a feature called Weighted Random Early Detection (WRED), which can pseudo-randomly drop packets from flows based on the number of packets currently in a queue and the quality of service (QoS) markings on the packets. By dropping packets before the queue fills to capacity, the global synchronization issue is avoided. Out-of-Order Delivery In many routed environments, a router has more than one egress interface that can reach a destination IP address. If load balancing is enabled in such a scenario, some packets in a traffic flow might go out one interface, while other packets go out of another interface. With traffic flowing out of multiple interfaces, there is a chance that the packets will arrive out of order. Fortunately, TCP can help prevent out-of-order packets by either sequencing them in the correct order or by requesting the retransmission of out-of-order packets. UDP Characteristics Figure 1-28 presents the structure of a UDP segment header. Because UDP is considered to be a connectionless, unreliable protocol, it lacks the sequence numbering, window size, and acknowledgment numbering present in the header of a TCP segment. Rather the UDP segment’s header contains only source and destination port numbers, a UDP checksum (which is an optional field used to detect transmission errors), and the segment length (measured in bytes). Source Port UDP Length Destination Port UDP Checksum Figure 1-28 UDP Segment Header Format Because a UDP segment header is so much smaller than a TCP segment header, UDP becomes a good candidate for the transport layer protocol serving applications that need to maximize bandwidth and do not require acknowledgments (for example, audio or video streams). In fact, the primary protocol used to carry voice and video traffic, Realtime Transport Protocol (RTP), is a Layer 4 protocol that is encapsulated inside of UDP. If RTP is carrying interactive voice or video streams, the latency between the participants in a voice and/or video call should ideally be no greater than 150 ms. To help ensure that RTP experiences minimal latency, even during times of congestion, Cisco recommends a queuing technology called Low Latency Queuing (LLQ). LLQ allows one or more traffic From the Library of Alexey Evseenko 36 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide types to be buffered in a priority queue, which is serviced first (up to a maximum bandwidth limit) during times of congestion. Metaphorically, LLQ works much like a carpool lane found in highway systems in larger cities. With a carpool lane, if you are a special type of traffic (for example, a vehicle with two or more passengers), you get to drive in a separate lane with less congestion. However, the carpool lane is not the autobahn (a German highway without a speed limit). You are still restricted as to how fast you can go. With LLQ, you can treat special traffic types (for example, voice and video using RTP) in a special way, by placing them in a priority queue. Traffic in the priority queue (much like a carpool lane) gets to go ahead of nonpriority traffic; however, there is a bandwidth limit (much like a speed limit) that traffic in the priority queue cannot exceed. Therefore, priority traffic does not starve out nonpriority traffic. Network Migration Strategies As networks undergo expansion or as new technologies are introduced, network engineers need to understand the implications of the changes being made. This section identifies a few key areas where change is likely to occur (if it has not already occurred) in enterprise networks. Routing Protocol Changes The primary focus of this book is on routing protocols. As you read through the subsequent chapters covering protocols such as RIPng, OSPF, EIGRP, and BGP, be on the lookout for protocol-specific parameters that need to match between neighboring devices. As one example, in Chapter 4, “Fundamental EIGRP Concepts,” you will read about EIGRP K-values and how they must match between EIGRP neighbors. Therefore, if you make a K-value change on one router, that change needs to be reflected on neighboring routers. In addition to making adjustments to existing routing protocols, network engineers sometimes need to migrate to an entirely new routing protocol. For example, a network that was running RIP might migrate to OSPF. Two common approaches to routing protocol migration are as follows: Key Topic ■ Using Administrative Distance (AD): When migrating from one routing protocol to another, one approach is to configure both routing protocols on all your routers, allowing them to run concurrently. However, when you do your configuration of the new routing protocol, you should make sure that it has a higher AD than the existing routing protocol. This approach allows you to make sure that the new routing protocol has successfully learned all the routes it needs to learn and has appropriate next hops for its route entries. After you are convinced that the new routing protocol is configured appropriately, you can adjust the AD on either the old or the new routing protocol such that the new routing protocol is preferred. ■ Using route redistribution: Another approach to migrating between routing protocols is to use redistribution, such that you cut over one section of your network at From the Library of Alexey Evseenko Chapter 1: Characteristics of Routing Protocols 37 a time, and mutually redistribute routes between portions of your network using the old routing protocol and portions using the new routing protocol. This approach allows you to, at your own pace, roll out and test the new routing protocol in your network locations. IPv6 Migration You could argue that there are two kinds of IP networks: those that have already migrated to IPv6 and those that will migrate to IPv6. With the depletion of the IPv4 address space, the adoption of IPv6 for most every IP-based network is an eventuality. Following are a few strategies to consider when migrating your network, or your customers’ networks, from IPv4 to IPv6: Key Topic ■ Check equipment for IPv6 compatibility: Before rolling out IPv6, you should check your existing network devices (for example, switches, routers, and firewalls) for IPv6 compatibility. In some cases, you might be able to upgrade the Cisco IOS on your existing gear to add IPv6 support for those devices. ■ Run IPv4 and IPv6 concurrently: Most network devices (including end-user computers) that support IPv6 also support IPv4 and can run both at the same time. This type of configuration is called a dual-stack configuration. A dual-stack approach allows you to gradually add IPv6 support to your devices and then cut over to just IPv6 after all devices have their IPv6 configuration in place. ■ Check the ISP’s IPv6 support: Many Internet Service Providers (ISP) allow you to connect with them using IPv6. The connection could be a default static route, or you might be running Multiprotocol BGP (MP-BGP) to peer with multiple ISPs. These options are discussed in Chapter 15, “IPv6 Internet Connectivity.” ■ Configure NAT64: During the transition from a network running IPv4 to a network running IPv6, you might have an IPv6 host that needs to communicate with an IPv4 host. One approach to allow this is to use NAT64. You probably recall from your CCNA studies that Network Address Translation (NAT) in IPv4 networks is often used to translate private IP addresses used inside of a network (referred to as inside local addresses) into publicly routable IP addresses for use on the Internet (referred to as inside global addresses). However, NAT64 allows IPv6 addresses to be translated into corresponding IPv4 addresses, thus permitting communication between an IPv4 host and an IPv6 host. A router configured for NAT64 maintains a mapping table that specifies which IPv4 address corresponds to an IPv6 address. This mapping table can be manually configured, which is called stateless translation. Unfortunately, such a manual configuration is not very scalable. However, a stateless translation can be useful when you have a relatively small number of IPv4 hosts (for example, servers) that need to be reached by IPv6 clients. For more scalability, stateful translation can be used. A router configured for stateful translation allows a dynamic IPv6-to-IPv4 address binding to be created. From the Library of Alexey Evseenko 38 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide ■ Use NPTv6: Another type of translation that can benefit IPv6 networks is Network Prefix Translation version 6 (NPTv6). NPTv6 is sometimes referred to as IPv6-toIPv6 Network Prefix Translation. Unlike NAT, NPTv6 cannot do any sort of NAT address overloading. Instead it simply translates one IPv6 prefix to another. For example, a router configured for NPTv6 might translate a prefix from 2001:1::/64 to 2001:2::/64. Many IPv6 networks will have no need for NPTv6. However, as an example of where it can be particularly beneficial, consider a situation where an IPv6 host has more than one global unicast address assigned to a network interface card. Perhaps one of the global unicast addresses has permission (based on network filters in place) to reach a specific destination, while the other global unicast address would be dropped if it attempted to reach that destination. Because the host might not know from which of these IPv6 addresses to source a packet, it might use a source address that gets dropped by the network filter. However, a router configured for NPTv6 can translate the host’s unpermitted global unicast IPv6 address into a global unicast IPv6 address that is permitted. ■ Send IPv6 traffic over an IPv6-over-IPv4 tunnel: Yet another approach to having IPv6 addressing and IPv4 addressing peacefully coexist on the same network is to have an IPv4 tunnel that spans an IPv4-only portion of the network. Routers at each end of this tunnel can run both IPv4 and IPv6 and can encapsulate IPv6 traffic inside of the IPv4 tunnel packets, thus allowing IPv6 traffic to traverse an IPv4-only portion of the network. This type of tunnel is called an IPv6-over-IPv4 tunnel. Spanning Tree Protocol Migration Spanning Tree Protocol (STP), to which you were introduced in your CCNA studies, supports redundancy in a Layer 2 network, while preserving a loop-free topology. Several variants of STP have been developed since Radia Perlman’s first iteration of STP in the mid 1980s. Typically, the optimal type of STP to run on today’s Cisco Catalyst switches is Rapid Per-VLAN Spanning Tree Protocol Plus (Rapid-PVST+). Rapid-PVST+ allows for much faster convergence (commonly, less than one second) as compared to the relatively slow convergence (up to 50 seconds) of IEEE 802.1D (the first industry-standard version of STP). Another benefit of running Rapid-PVST+ is that it allows each VLAN to run its own instance of STP, as opposed to all VLANs using the same spanning-tree topology (which could lead to suboptimal paths for some VLANs). Fortunately, Rapid-PVST+ is backward compatible with IEEE 802.1D. This backward compatibility allows network engineers to take a phased approach in their migration to Rapid-PVST+. When converting a Cisco Catalyst switch to Rapid-PVST+, you can remove the following features, because similar features are built into Rapid-PVST+: ■ UplinkFast ■ BackboneFast From the Library of Alexey Evseenko Chapter 1: Characteristics of Routing Protocols 39 However, the following features still function with Rapid-PVST+ and do not need to be removed from a Cisco Catalyst switch being migrated to Rapid-PVST+: ■ PortFast ■ BPDU Guard ■ BPDU Filter ■ Root Guard ■ Loop Guard Migration to Easy Virtual Networking In recent years, virtualization has become a hot topic in the IT industry. Today’s data centers commonly use virtualization technologies (for example, VMware and Hyper-V) to allow multiple server instances (possibly running different operating systems) to run on a single physical server. This can make for a much more efficient use of hardware resources. Interestingly, in addition to virtualizing server instances, you can virtualize networks. Cisco supports a technology called Virtual Routing and Forwarding (VRF), which allows a single router to run multiple virtual router instances. Each virtual router instance can have its own configuration and its own IP routing process. VRF is therefore able to segment networks and isolate paths as needed. The capability to completely isolate one network from another (even though the networks use the same infrastructure devices) has obvious security benefits. Additionally, VRF helps network architects meet various industry regulations. For example, the Sarbanes-Oxley Act and the HIPAA Privacy Rule require privacy for customer and patient information. Also, the Payment Card Industry regulations require path segmentation for credit card transactions. Other scenarios for multitenant networks (for example, universities and airports) also have frequent network segmentation and path isolation design requirements. A traditional way to configure VRF on Cisco routers was to use an approach called VRFLite. A newer approach to virtualized network configuration, called Cisco Easy Virtual Network (EVN), dramatically simplifies the relatively complex configuration required by VRF-Lite. An EVN uses a Virtual Network Trunk (VNET Trunk) to carry traffic for each virtual network, and eliminates the need to manually configure a subinterface for each virtual network on all routers (which was a requirement with VRF-Lite). Traffic flowing over a VNET Trunk is tagged with a VNET tag, identifying the virtual network to which the traffic belongs. An EVN router connects to a Cisco Catalyst switch through an 802.1Q trunk, with the different VLANs on the 802.1Q trunk carrying traffic for the different virtual networks. From the Library of Alexey Evseenko 40 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Note Even though VRF is the underlying technology being used, a common practice is to refer to a virtual network as a VRF. For example, an EVN might have three separate virtual networks that you might call VRF A, VRF B, and VRF C. Figure 1-29 provides a sample EVN topology. Key Topic 172.16.0.100/24 VNET Trunk VRFs Traffic for VRF A (172.16.0.0/16) Traffic for VRF B (172.17.0.0/16) Traffic for VRF C (172.18.0.0/16) 172.16.1.100/24 172.17.0.100/24 A B C 172.18.0.100/24 R1 172.17.1.100/24 A B C 172.18.1.100/24 R2 802.1Q Trunk Figure 1-29 Sample EVN Topology Even though an EVN allows a network architect to isolate one virtual network from another (as if they were physically separate networks), there is an occasional need for one of the virtual networks to be accessible by other virtual networks. For example, one virtual network might contain corporate DNS, DHCP, and email servers, which need to be accessed by all the other virtual networks. Cisco EVN makes this possible through a service called route replication. The route replication service allows IP routes known to one virtual network to be known to other virtual networks. As an example, consider Figure 1-30. In Figure 1-30, the 172.16.0.0 /16 virtual network (VRF A) and the 172.17.0.0 /16 virtual network (VRF B) are isolated from one another. However, the 192.168.0.0 /24 network (VRF C) contains servers (for example, DHCP, DNS, and email servers) that need to be accessed by both VRF A and VRF B. Route replication allows networks in VRF C to be added to the routing tables of VRF A and VRF B, while still keeping VRF A and VRF B separate from one another. Also, notice that the routing table for VRF C knows about routes in the other two VRFs. Note Even though different IP address spaces were used in this example for VRF A and VRF B, in the real world, you could have overlapping address spaces in different VRFs. From the Library of Alexey Evseenko 172.16.0.100/24 172.17.0.100/24 802.1Q Trunk Gig 0/0/1 Routing Table for VRF A 172.16.0.0/16 => Gig 0/0/1.A 192.168.0.0/24 => Gig 0/0/2.C Routing Table for VRF B 172.17.0.0/16 => Gig 0/0/1.B 192.168.0.0/24 => Gig 0/0/2.C Routing Table for VRF C 172.16.0.0/16 => Gig 0/0/1.A 172.17.0.0/16 => Gig 0/0/1.B 192.168.0.0/24 => Gig 0/0/2.C Figure 1-30 Route Replication Chapter 1: Characteristics of Routing Protocols 41 VRFs Traffic for VRF A (172.16.0.0/16) Traffic for VRF B (172.17.0.0/16) Traffic for VRF C (192.168.0.0/24) A B C Gig 0/0/2 R1 DHCP Server 192.168.0.1/28 DNS Server 192.168.0.2/28 Email Server 192.168.0.3/28 From the Library of Alexey Evseenko 42 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Exam Preparation Tasks Planning Practice The CCNP ROUTE exam expects test takers to review design documents, create implementation plans, and create verification plans. This section provides some exercises that can help you to take a step back from the minute details of the topics in this chapter so that you can think about the same technical topics from the planning perspective. For each planning practice table, simply complete the table. Note that any numbers in parentheses represent the number of options listed for each item in the solutions in Appendix F, “Completed Planning Practice Tables.” Design Review Table Table 1-3 lists several design goals related to this chapter. If these design goals were listed in a design document, and you had to take that document and develop an implementation plan, what implementation options come to mind? You should write a general description; specific configuration commands are not required. Table 1-3 Design Review Design Goal The design requires the number of entries in a router’s routing table to be reduced. The design calls for the use of a distancevector routing protocol. Identify the two approaches that a distance-vector routing protocol can use to prevent loops. (2) The design calls for the use of a link-state routing protocol. (2) Possible Implementation Choices Covered in This Chapter The design calls for IPv6 traffic to travel from a source IPv6 address to the nearest device of multiple devices assigned the same destination IPv6 address. The design calls for the use of an NBMA network. Identify design issues that might be encountered when using EIGRP or OSPF. (2) The design calls for the use of Hot Standby Router Protocol (HSRP). Identify the condition that can be created when return traffic flows through a standby HSRP router. From the Library of Alexey Evseenko Chapter 1: Characteristics of Routing Protocols 43 Design Goal Possible Implementation Choices Covered in This Chapter The design needs to mitigate a global synchronization condition (where all TCP flows simultaneously enter TCP slow start). The design requires a network to be migrated to a different routing protocol. (2) The design requires that you virtualize multiple routers inside of physical routers and carry traffic for the virtual networks between those physical routers. Implementation Plan Peer Review Table Table 1-4 shows a list of questions that others might ask, or that you might think about, during a peer review of another network engineer’s implementation plan. Complete the table by answering the questions. Table 1-4 Notable Questions from This Chapter to Consider During an Implementation Plan Peer Review Question The plan requires that Split Horizon be disabled for the hub router in a hub-andspoke topology. Describe the purpose of Split Horizon. Answers The plan requires the use of EIGRP as the routing protocol. Provide a brief description of EIGRP. The plan calls for the use of both IPv4 and IPv6. What network traffic types do IPv4 and IPv6 have in common, and what traffic types are different? The plan calls for the use of Hot Standby Router Protocol (HSRP). What can you do to prevent an asymmetric routing issue, where traffic is forwarded from a subnet using the active HSRP router, and some of the return traffic returns using the standby HSRP router (because of load balancing)? From the Library of Alexey Evseenko 44 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Question Answers The design calls for the transmission of interactive voice and video over a network. What Layer 4 protocols are typically used to transmit voice and data media? (2) The plan requires that a network migrate from IPv4 to IPv6. Identify three strategies of a successful IPv6 migration. (3) The plan calls for the use of Virtual Routing and Forwarding (VRF). Identify two approaches to configuring VRF. (2) Review All the Key Topics Review the most important topics from inside the chapter, noted with the Key Topic icon in the outer margin of the page. Table 1-5 lists a reference of these key topics and the page numbers on which each is found. Table 1-5 Key Topics for Chapter 1 Key Topic Key Topic Element Description Page Number Figure 1-3 Network Summarization 10 List IGP and EGP definitions 11 List Distance-vector routing protocol approaches to avoid 13 routing loops Table 1-2 Routing Protocol Characteristics 15 List NBMA design considerations 21 Figure 1-23 Unidirectional Flooding of Inbound Traffic 29 List Two ICMP message types 31 List TCP three-way handshake 33 Figure 1-27 TCP Sliding Window 34 List Approaches to routing protocol migration 36 List Strategies for IPv6 migration 37 Figure 1-29 Sample EVN Topology 40 From the Library of Alexey Evseenko Chapter 1: Characteristics of Routing Protocols 45 Complete the Tables and Lists from Memory Print a copy of Appendix D, “Memory Tables,” (found on the CD) or at least the section for this chapter, and complete the tables and lists from memory. Appendix E, “Memory Tables Answer Key,” also on the CD, includes completed tables and lists to check your work. Definitions of Key Terms Define the following key terms from this chapter, and check your answers in the glossary. convergence, route summarization, interior gateway protocol (IGP), exterior gateway protocol (EGP), distance-vector, link-state, path-vector, anycast, nonbroadcast multiaccess (NBMA), Split Horizon, Poison Reverse, asymmetric routing, Administrative Distance, Easy Virtual Networking (EVN) From the Library of Alexey Evseenko This chapter covers the following subjects: ■ Remote Connectivity Overview: This section explains why VPNs are often a preferred method of remotely connecting to sites and identifies a collection of available VPN technologies. ■ MPLS VPN: This section contrasts Layer 2 MPLS VPNs and Layer 3 MPLS VPNs. ■ GRE: This section describes a GRE tunnel and demonstrates GRE tunnel configuration and verification. ■ DMVPN: This section discusses how DMVPNs can dynamically bring up connections between specific spokes in a hub-and-spoke VPN topology. ■ Multipoint GRE: This section explains how a single GRE interface can have connections to multiple GRE peers. ■ NHRP: This section explains how NHRP can discover next-hop IP addresses in networks using IP tunneling. ■ IPsec: This section explores how IPsec can be used to secure a VPN connection. From the Library of Alexey Evseenko CHAPTER 2 Remote Site Connectivity Traditional wide-area network (WAN) connections used technologies such as dedicated leased lines and permanent virtual circuits (PVC) defined in frame switching (for example, Frame Relay) and cell switching (for example, ATM) networks. As an example, if a company opened a remote sales office, it might have purchased a Frame Relay connection for that remote office and used a PVC that interconnected that remote office with the corporate headquarters. However, with the current state of the Internet, high-speed connections are widely accessible. For example, a remote sales office might purchase a DSL or cable modem connection to the Internet, at a relatively low cost as compared to traditional leased lines or frame/cell switching technologies. Over that Internet connection, a virtual private network (VPN) could create a logical path between the sales office and the headquarters location. The theory and configuration of VPNs goes well beyond what is covered in this chapter; however, the ROUTE exam blueprint only requires configuration knowledge for Generic Routing Encapsulation (GRE) tunnels. Therefore, this chapter will help you understand the theory of multiple VPN technologies, while showing the configuration and verification of GRE. “Do I Know This Already?” Quiz The “Do I Know This Already?” quiz allows you to assess whether you should read the entire chapter. If you miss no more than one of these seven self-assessment questions, you might want to move ahead to the “Exam Preparation Tasks” section. Table 2-1 lists the major headings in this chapter and the “Do I Know This Already?” quiz questions covering the material in those headings so that you can assess your knowledge of these specific areas. The answers to the “Do I Know This Already?” quiz appear in Appendix A. From the Library of Alexey Evseenko 48 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Table 2-1 “Do I Know This Already?” Foundation Topics Section-to-Question Mapping Foundation Topics Section Remote Connectivity Overview MPLS VPN Questions 1 2 GRE 3 DMVPN 4 Multipoint GRE 5 NHRP 6 IPsec 7 1. Which of the following is a valid design consideration for a hybrid VPN? a. You cannot encapsulate an encrypted packet. b. You cannot encrypt an encapsulated packet. c. You might need to decrease the MTU size for frames on an interface. d. You might need to increase the MTU size for frames on an interface. 2. In a Layer 3 MPLS VPN, with what does a CE router form a neighborship? a. A PE in the MPLS network. b. A CE at a remote location. c. No neighborship is formed, because the MPLS network acts as a logical switch. d. No neighborship is formed, because IP multicast traffic cannot be sent across an MPLS network. 3. You want to interconnect two remote sites with a VPN tunnel. The tunnel needs to support IP unicast, multicast, and broadcast traffic. Additionally, you need to encrypt traffic being sent over the tunnel. Which of the following VPN solutions meets the design requirements? a. Use a GRE tunnel. b. Use an IPsec tunnel. c. Use a GRE tunnel inside of an IPsec tunnel. d. Use an IPsec tunnel inside of a GRE tunnel. 4. Identify technologies required for a DMVPN network. (Choose three.) a. NHRP b. IPsec c. MPLS d. mGRE From the Library of Alexey Evseenko Chapter 2: Remote Site Connectivity 49 5. Which of the following are characteristics of multipoint GRE? (Choose two.) a. mGRE supports a wide variety of protocols. b. A single mGRE interface can service multiple tunnels. c. An mGRE interface is created for each tunnel. d. mGRE only transports unicast IP packets. 6. Which of the following are true for NHRP? (Choose two.) a. The hub router is configured with the IP addresses of the spoke routers. b. The spoke routers are configured with the IP address of the hub router. c. Spoke routers query the hub router asking what tunnel interface IP address cor- responds to a known physical interface IP address. d. Spoke routers query the hub router asking what physical interface IP address corresponds to a known tunnel interface IP address. 7. Which IPsec feature primarily performs encryption? a. Integrity b. Confidentiality c. Antireplay d. Authentication From the Library of Alexey Evseenko 50 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Foundation Topics Remote Connectivity Overview The voice, video, and data commonly sent between remote offices and central sites often demand low latency and easy provisioning, all while maintaining a low cost. Traditional WAN solutions (for example, leased lines, Frame Relay, and ATM) typically fail to simultaneously meet all these requirements. Fortunately, a variety of VPN technologies fit nicely into such a design. This section categorizes various VPN technologies. Then, the remainder of this chapter examines these technologies in a bit more detail. MPLS-Based Virtual Private Networks Multiprotocol Label Switching (MPLS) is a technology commonly used by service providers, although many large enterprises also use MPLS for their backbone network. MPLS makes forwarding decisions based on labels rather than IP addresses. Specifically, a 32-bit label is inserted between a frame’s Layer 2 and Layer 3 headers. As a result, an MPLS header is often called a shim header, because it is stuck in between two existing headers. MPLS-based VPNs can be grouped into one of two primary categories: ■ Layer 2 MPLS VPNs ■ Layer 3 MPLS VPNs These two approaches are discussed further in the section “MPLS VPN,” later in this chapter. Tunnel-Based Virtual Private Networks A tunnel is a virtual connection that can physically span multiple router hops. However, from the perspective of the traffic flowing through the tunnel, the transit from one end of a tunnel to the other appears to be a single router hop. Multiple VPN technologies make use of virtual tunnels. A few examples discussed in this chapter include ■ Generic Routing Encapsulation (GRE) ■ Dynamic Multipoint VPN (DMVPN) From the Library of Alexey Evseenko ■ Multipoint GRE ■ IPsec Chapter 2: Remote Site Connectivity 51 Hybrid Virtual Private Networks Rather than just using a single MPLS-based VPN technology or a single tunnel-based VPN technology, you can use select VPN technologies in tandem. For example, you might want to extend an MPLS network at one corporate location to MPLS networks at remote corporate locations, while having a requirement that traffic traveling through a service provider’s cloud be encrypted. You could meet the requirements of such a design by having a Layer 3 MPLS VPN set up over a DMVPN. The DMVPN technology carrying the Layer 3 MPLS VPN traffic allows you to efficiently set up direct links between corporate locations, and it also allows you to use IPsec, which can encrypt the traffic flowing through the service provider’s cloud. When it comes to hybrid VPNs, a significant design consideration is overhead. Every time you add an encapsulation, you are adding to the total header size of the packet. With more headers, the amount of data you can carry inside a single packet is decreased. As a result, you might have to configure a lower maximum transmission unit (MTU) size for frames on an interface. MPLS VPN MPLS VPNs extend the capabilities of MPLS, supporting VPNs created across an MPLS network. These VPNs, most commonly found in service provider or large enterprise networks, can be categorized as either Layer 2 MPLS VPNs or Layer 3 MPLS VPNs. Layer 2 MPLS VPN With a Layer 2 MPLS VPN, the MPLS network allows customer edge (CE) routers at different sites to form routing protocol neighborships with one another as if they were Layer 2 adjacent. Therefore, you can think of a Layer 2 MPLS VPN as a logical Layer 2 switch, as depicted in Figure 2-1. From the Library of Alexey Evseenko 52 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Key Topic CE Location A Neighborship LSR LSR LSR CE Location B PE (ELSR) PE (ELSR) LSR CE Location C Service Provider’s MPLS Cloud Figure 2-1 Logical View of a Layer 2 MPLS VPN CE Location D Layer 3 MPLS VPN With a Layer 3 MPLS VPN, a service provider’s provider edge (PE) router (also known as an Edge Label Switch Router [ELSR]) establishes a peering relationship with a CE router, as seen in Figure 2-2. Routes learned from the CE router are then sent to the remote PE router in the MPLS cloud (typically using multiprotocol BGP [MP-BGP]), where they are sent out to the remote CE router. Key Topic CE Location A PE (ELSR) LSR LSR LSR CE Location B PE (ELSR) Neighborship Neighborship Neighborship Neighborship CE Location C Figure 2-2 Layer 3 MPLS VPN LSR Service Provider’s MPLS Cloud CE Location D From the Library of Alexey Evseenko Chapter 2: Remote Site Connectivity 53 GRE As its name suggests, a Generic Routing Encapsulation (GRE) tunnel can encapsulate nearly every type of data that you could send out of a physical router interface. In fact, GRE can encapsulate any Layer 3 protocol, which makes it very flexible. GRE by itself does not provide any security for the data it transmits; however, a GRE packet can be sent over an IPsec VPN, causing the GRE packet (and therefore its contents) to be protected. Such a configuration is commonly used, because IPsec can only protect unicast IP packets. This limitation causes issues for routing protocols that use IP multicasts. Fortunately, a GRE tunnel can encapsulate IP multicast packets. The resulting GRE packet is an IP unicast packet, which can then be protected by an IPsec tunnel. As an example, consider Figure 2-3. Routers R1 and R2 need to form an Open Shortest Path First (OSPF) neighborship across the service provider’s cloud. Additionally, traffic between these two routers needs to be protected. While IPsec can protect unicast IP traffic, OSPF communicates through IP multicasts. Therefore, all traffic between Routers R1 and R2 (including the OSPF multicasts) is encapsulated inside of a GRE tunnel. Those GRE packets, which are unicast IP packets, are then sent across, and protected by, an IPsec tunnel. GRE Tunnel IPsec Tunnel R1 R2 Service Provider’s Cloud Figure 2-3 GRE over IPsec Tunnel Note For exam purposes, the only type of tunnel you need to know how to configure, based on the objectives listed in the ROUTE exam blueprint, is a GRE tunnel. Therefore, this chapter only provides a configuration example for a GRE tunnel. Key Topic The steps to configure a GRE tunnel are as follows: Step 1. Create a virtual tunnel interface in global configuration mode with the interface tunnel id command. Step 2. In interface configuration mode for the tunnel interface, add an IP address with the ip address ip_address subnet_mask command. Step 3. Specify the source of the tunnel with the tunnel source {interface_id | ip_ address} command. From the Library of Alexey Evseenko 54 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Step 4. Specify the destination of the tunnel with the tunnel destination ip_address command. Step 5. Repeat the previous steps on the router at the far side of the tunnel. To illustrate this configuration procedure, consider Example 2-1 and the topology shown in Figure 2-4. Tunnel 1 192.168.0.1/30 Lo0 1.1.1.1/32 GRE Tunnel Tunnel 1 192.168.0.2/30 Lo0 4.4.4.4/32 R1 Fa0/0 10.1.1.1/24 S1/0.1 S1/0.2 192.0.2.0/30 R2 Lo0 2.2.2.2/32 S1/1.1 S1/0.2 203.0.113.0/30 R3 Lo0 3.3.3.3/32 S1/1.1 S1/0.2 198.51.100.0/30 R4 Fa0/0 10.2.2.1/24 Figure 2-4 GRE Sample Topology Example 2-1 GRE Sample Configuration Key Topic !ROUTER R1 interface Tunnel1 ip address 192.168.0.1 255.255.255.252 tunnel source Loopback0 tunnel destination 4.4.4.4 !ROUTER R4 interface Tunnel1 ip address 192.168.0.2 255.255.255.252 tunnel source Loopback0 tunnel destination 1.1.1.1 In Example 2-1, a virtual tunnel interface is created on Router R1 with the interface Tunnel 1 command. An IP address is then assigned with the ip address 192.168.0.1 255.255.255.252 command. Next, the tunnel source Loopback0 command is used to specify Router R1’s Lo 0 interface (and therefore its IP address of 1.1.1.1) as one end of the GRE tunnel. The tunnel destination 4.4.4.4 command is then used to specify the Lo 0 interface on Router R4 as the other end of the tunnel. A mirrored configuration of the tunnel interface is then entered on Router R4. Example 2-2 shows verification of the GRE tunnel. In the output of the show interfaces tunnel 1 command, notice that the interface is up at Layer 1 and Layer 2. Also, note that the encapsulation type is TUNNEL. Also, the output of the traceroute 192.168.0.2 command shows that the IP address of 192.168.0.2 is logically a single hop away from Router R1, even though it is physically three hops away. From the Library of Alexey Evseenko Chapter 2: Remote Site Connectivity 55 Key Topic Example 2-2 GRE Tunnel Verification R1# show interfaces tunnel 1 Tunnel1 is up, line protocol is up Hardware is Tunnel Internet address is 192.168.0.1/30 MTU 17916 bytes, BW 100 Kbit/sec, DLY 50000 usec, reliability 255/255, txload 1/255, rxload 1/255 Encapsulation TUNNEL, loopback not set Keepalive not set Tunnel source 1.1.1.1 (Loopback0), destination 4.4.4.4 Tunnel Subblocks: src-track: Tunnel1 source tracking subblock associated with Loopback0 Set of tunnels with source Loopback0, 1 member (includes iterators), on interface Tunnel protocol/transport GRE/IP Key disabled, sequencing disabled Checksumming of packets disabled Tunnel TTL 255, Fast tunneling enabled Tunnel transport MTU 1476 bytes Tunnel transmit bandwidth 8000 (kbps) Tunnel receive bandwidth 8000 (kbps) Last input 00:00:01, output 00:00:01, output hang never Last clearing of "show interface" counters 00:54:43 Input queue: 0/75/0/0 (size/max/drops/flushes); Total output drops: 0 Queueing strategy: fifo Output queue: 0/0 (size/max) 5 minute input rate 0 bits/sec, 0 packets/sec 5 minute output rate 0 bits/sec, 0 packets/sec 779 packets input, 67357 bytes, 0 no buffer Received 0 broadcasts (0 IP multicasts) 0 runts, 0 giants, 0 throttles 0 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored, 0 abort 787 packets output, 68037 bytes, 0 underruns 0 output errors, 0 collisions, 0 interface resets 0 unknown protocol drops 0 output buffer failures, 0 output buffers swapped out R1# traceroute 192.168.0.2 Type escape sequence to abort. Tracing the route to 192.168.0.2 VRF info: (vrf in name/id, vrf out name/id) 1 192.168.0.2 108 msec 100 msec 108 msec From the Library of Alexey Evseenko 56 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide DMVPN Consider a hub-and-spoke VPN topology in which multiple remote sites have a siteto-site VPN connection to a headquarters location. In such a topology, if one remote site wanted to communicate securely with another remote site, the traffic would travel between the sites through the headquarters location, rather than directly between the sites. One fix for this suboptimal pathing issue would be to create a full mesh of IPsec site-to-site VPN connections, which would provide a direct IPsec VPN connection between any two remote sites. Such a solution, however, could be complex and expensive to configure and maintain. A more economical solution to providing optimal pathing without necessitating a fullmesh topology is the Dynamic Multipoint VPN (DMVPN) feature. DMVPN allows a VPN tunnel to be dynamically created and torn down between two remote sites on an as-needed basis. Consider Figure 2-5, which shows a hub-and-spoke topology, with the headquarters acting as the hub. Branch B and Branch C want to communicate with one another. Therefore, a DMVPN tunnel is created between these two locations. Branch A Branch B Headquarters Figure 2-5 Dynamic Multipoint VPN Branch C Dynamic Multipoint VPN Tunnel From the Library of Alexey Evseenko Chapter 2: Remote Site Connectivity 57 From a troubleshooting perspective, a common issue experienced with DMVPN networks is flapping (that is, the DMVPN tunnel is repeatedly torn down and reestablished). When experiencing such an issue, Cisco recommends that you check the routing protocol neighborship between the routers at each end of the DMVPN. If the neighborship is not always up, the DMVPN might flap. Note Multipoint GRE, Next Hop Resolution Protocol (NHRP), and IPsec are required to support a DMVPN topology. Each of these technologies is discussed in the remainder of this chapter. Multipoint GRE The scalability offered by DMVPN is made possible, in part, by multipoint GRE (mGRE), which allows a router to support multiple GRE tunnels on a single GRE interface. Some of mGRE’s characteristics are as follows: ■ Like traditional GRE, mGRE can transport a wide variety of protocols (for example, IP unicast, multicast, and broadcast). ■ In a hub-and-spoke topology, a hub router can have a single mGRE interface, and multiple tunnels can use that single interface. ■ An interface configured for mGRE is able to dynamically form a GRE tunnel by using Next Hop Resolution Protocol (NHRP) to discover the IP address of the device at the far end of the tunnel. You can deploy mGRE in a hub-and-spoke topology or a spoke-to-spoke topology. Figure 2-6 illustrates a hub-and-spoke topology, where only the hub router is configured with an mGRE interface. Figure 2-7 shows a spoke-to-spoke mGRE topology. With a spoke-to-spoke mGRE topology, each router has an mGRE interface, which allows the sites in the network to interconnect using a partial mesh or a full mesh collection of tunnels. From the Library of Alexey Evseenko 58 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Branch A mGRE Interface Spoke Hub Headquarters Spoke Branch B Spoke Branch C Figure 2-6 Hub-and-Spoke mGRE Tunnel Topology Branch A mGRE Interface mGRE Interface Spoke Hub Headquarters mGRE Interface Spoke Branch B Spoke mGRE Interface Branch C Figure 2-7 Spoke-to-Spoke mGRE Tunnel Topology From the Library of Alexey Evseenko Chapter 2: Remote Site Connectivity 59 NHRP DMVPNs require that routers run Next Hop Resolution Protocol (NHRP), which uses a client-server model. A router designated as a hub router acts as a server. The remaining routers, designated as spokes, act as clients. NHRP spokes are configured with the IP address of the NHRP hub, and when a spoke comes online, it informs the hub of both a physical IP address (assigned to its physical interface) and a logical IP address (assigned to its virtual tunnel interface) that are going to be used for its tunnels. As an example, examine Figure 2-8. Branch A 10.0.0.1 at 192.0.2.1 Headquarters 192.0.2.1 Spoke 10.0.0.2 at 203.0.113.1 Branch B Spoke Hub 203.0.113.1 NHRP Database Tunnel Interface Physical Interface IP IP 10.0.0.1 192.0.2.1 10.0.0.2 203.0.113.1 10.0.0.3 198.51.100.1 Spoke 10.0.0.3 at 198.51.100.1 198.51.100.1 Branch C Figure 2-8 NHRP Registration Process In Figure 2-8, the Headquarters router is acting as the hub, and the Branch A, Branch B, and Branch C routers are acting as spokes. When the spokes come online, they each advertise the IP address of their physical interface that is going to be used for tunnel formation, along with the IP address of the virtual tunnel interface. For example, the Branch A router informs the Headquarters router that the IP address of its virtual tunnel interface is 10.0.0.1, and it is available at a physical interface’s IP address of 192.0.2.1. The Branch B and Branch C routers send similar advertisements to the Headquarters router. As a result, the Headquarters router populates its NHRP database. From the Library of Alexey Evseenko 60 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Note The prior description of NHRP used the term physical interface to distinguish a nontunnel interface from a tunnel interface. Realize, however, that an interface being referred to here as a physical interface could actually be a loopback interface. With the hub’s database populated, a spoke can query the hub to find out the IP address of a physical interface that corresponds to a specific tunnel interface’s IP address. As an example, notice in Figure 2-9 how NHRP helps the Branch C router set up a GRE tunnel with the Branch B router. NHRP Database Tunnel Interface Physical Interface IP IP 10.0.0.1 192.0.2.1 10.0.0.2 203.0.113.1 10.0.0.3 198.51.100.1 Headquarters 192.0.2.1 Branch A Spoke Branch B (2) 10.0.0.2 is at 203.0.113.1. Spoke Hub NHRNPHQRuPerRyeply (1) What physical interface’s IP address is associated with a tunnel interface’s IP address of 10.0.0.2? Spoke 203.0.113.1 (3) Dynamic GRE tunnel formation. 198.51.100.1 Branch C Figure 2-9 NHRP Query Process In Figure 2-9, the Branch C router needs to dynamically form a GRE tunnel with the Branch B router. The Branch C router knows that the other end of the tunnel it wants to form has an IP address of 10.0.0.2. However, the Branch C router does not know the IP address of the physical interface on the Branch B router that corresponds to the virtual tunnel’s IP address. The process of discovering the remote physical IP address and the formation of the tunnel is as follows: Key Topic Step 1. The Branch C router sends an NHRP query to the hub router asking what physical interface’s IP address is associated with a tunnel interface’s IP address of 10.0.0.2. From the Library of Alexey Evseenko Chapter 2: Remote Site Connectivity 61 Step 2. The hub router (that is, the Headquarters router) checks its NHRP database and responds to the query, telling the Branch C router that the physical interface’s IP address corresponding to the tunnel interface IP address of 10.0.0.2 is 203.0.113.1, which is the IP address of the Branch B router. Step 3. Having dynamically learned the IP address of the physical interface in the Branch B router, the Branch C router sets up a GRE tunnel with the Branch B router. While the configuration of NHRP is beyond the scope of the ROUTE curriculum, you should be familiar with the output of the show ip nhrp verification command. Example 2-3 shows sample output from this command. Example 2-3 Sample Output from the show ip nhrp Command Key Topic Router# show ip nhrp 192.168.0.2 255.255.255.255, tunnel 100 created 0:00:44 expire 1:59:15 Type: dynamic Flags: authoritative NBMA address: 10.1111.1111.1111.1111.1111.1111.1111.1111.1111.11 192.168.0.1 255.255.255.255, Tunnel10 created 0:10:04 expire 1:49:56 Type: static Flags: authoritative NBMA address: 192.168.1.2 The output in Example 2-3 shows the IP addresses (and corresponding subnet masks) in the IP-to-NBMA address cache. Note that the subnet mask for an IP address is always a /32 mask, because the Cisco implementation of NHRP does not support the aggregation of nonbroadcast multiaccess (NBMA) information. The output also shows the tunnel interface name and how long it has been since the tunnel was created. Finally, notice the authoritative flag. This flag indicates that a next-hop server (or router) provided the NHRP information. IPsec Security in a DMVPN is provided by IPsec. The following four security features are offered by IPsec: Key Topic ■ Confidentiality: Data confidentiality is provided by encrypting data. If a third party intercepts the encrypted data, the party would not be able to interpret the data. ■ Integrity: Data integrity ensures that data is not modified in transit. For example, routers at each end of a tunnel could calculate a checksum value or a hash value for the data, and if both routers calculate the same value, the data has most likely not been modified in transit. ■ Authentication: Data authentication allows parties involved in a conversation to verify that the other party is the party it claims to be. ■ Antireplay: IPsec uses antireplay protection to ensure that packets being sent are not duplicate packets. For example, an attacker might capture packets that make up a valid login to a host and attempt to play those packets back, so that he can gain access to the host. However, IPsec uses sequence numbers to determine whether a packet is to be considered a duplicate packet, and any duplicate packets are not transmitted. From the Library of Alexey Evseenko 62 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Key Topic Of these IPsec services, encryption and authentication are particularly helpful in a DMVPN network. For example, encryption can help protect traffic flowing between sites (either over the Internet or through a service provider’s cloud). Also, authentication can make sure that GRE tunnels are not dynamically set up with undesired spokes. IPsec uses a collection of protocols to provide its features. One of the primary protocols used by IPsec is the Internet Key Exchange (IKE) protocol. Specifically, IPsec can provide encryption between authenticated peers using encryption keys, which are periodically changed. IKE does, however, allow an administrator to manually configure keys. There are two phases to establish an IPsec tunnel. During IKE Phase 1, a secure Internet Security Association and Key Management Protocol (ISAKMP) session is established. As part of this phase, the IPsec endpoints establish transform sets (that is, a collection of encryption and authentication protocols), hash methods, and other parameters needed to establish a secure ISAKMP session (sometimes called an ISAKMP tunnel or an IKE Phase 1 tunnel). This collection of parameters is called a security association (SA). With IKE Phase 1, the SA is bidirectional, meaning that the same key exchange is used for data flowing across the tunnel in either direction. IKE Phase 2 occurs within the protection of an IKE Phase 1 tunnel. A session formed during IKE Phase 2 is sometimes called an IKE Phase 2 tunnel, or simply an IPsec tunnel. However, unlike IKE Phase 1, IKE Phase 2 performs unidirectional SA negotiations, meaning that each data flow uses a separate key exchange. In addition to IKE, which establishes the IPsec tunnel, IPsec also relies on either the Authentication Header (AH) protocol (IP protocol number 51) or the Encapsulating Security Payload (ESP) protocol (IP protocol number 50). Both AH and ESP offer origin authentication and integrity services, which ensure that IPsec peers are who they claim to be and that data was not modified in transit. The main distinction between AH and ESP, however, is encryption support. ESP encrypts the original packet, while AH does not offer any encryption. As a result, ESP is far more popular on today’s networks. Both AH and ESP can operate in one of two modes, transport mode or tunnel mode. Figure 2-10 illustrates the structure of an ESP transport mode packet versus an ESP tunnel mode packet. Following is a detailed description of these two modes: ■ Transport Mode: Transport mode uses a packet’s original IP header, as opposed to adding an additional tunnel header. This approach works well in networks where increasing a packet’s size could cause an issue. Also, transport mode is frequently used for client-to-site VPNs, where a PC running VPN client software connects back to a VPN termination device at a headquarters location. ■ Tunnel Mode: Tunnel mode, unlike transport mode, encapsulates an entire packet. As a result, the encapsulated packet has a new header (that is, an IPsec header). This new header has source and destination IP address information that reflects the two VPN termination devices at different sites. Therefore, tunnel mode is frequently used in an IPsec site-to-site VPN. From the Library of Alexey Evseenko ESP Auth ESP Trailer Transport Mode Payload Chapter 2: Remote Site Connectivity 63 ESP Header Original IP Header ESP Auth ESP Trailer Tunnel Mode Payload Original IP ESP New IP Header Header Header Figure 2-10 Transport Mode Versus Tunnel Mode The process of establishing, maintaining, and tearing down an IPsec site-to-site VPN consists of five primary steps, as illustrated in Figure 2-11 and described in the list that follows. PC1 PC2 R1 R2 Step 1 Data Step 2 IKE Phase 2 Tunnel Step 3 Step 4 Data IKE Phase 1 Tunnel IKE Phase 1 Tunnel Data Step 5 Figure 2-11 IPsec VPN Steps Step 1. PC1 sends traffic destined for PC2. Router1 classifies the traffic as “interesting” traffic, which initiates the creation of an IPsec tunnel. Step 2. Router1 and Router2 negotiate a security association (SA) used to form an IKE Phase 1 tunnel, which is also known as an ISAKMP tunnel. From the Library of Alexey Evseenko 64 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Step 3. Within the protection of the IKE Phase 1 tunnel, an IKE Phase 2 tunnel is negotiated and set up. An IKE Phase 2 tunnel is also known as an IPsec tunnel. Step 4. After the IPsec tunnel is established, interesting traffic (for example, traffic classified by an ACL) flows through the protected IPsec tunnel. Note that traffic not deemed interesting can still be sent between PC1 and PC2. However, the noninteresting traffic is transmitted outside of the protection of the IPsec tunnel. Step 5. After no interesting traffic has been seen for a specified amount of time, or if the IPsec SA is deleted, the IPsec tunnel is torn down. Even though the configuration of IPsec is beyond the scope of the ROUTE curriculum, you should be familiar with the output of the show crypto ipsec sa command, which lets you see information about the SA negotiated between IPsec peers. Example 2-4 shows sample output from this command. Key Topic Example 2-4 Sample Output from the show crypto ipsec sa Command R1# show crypto ipsec sa interface: FastEthernet0/0 Crypto map tag: test, local addr. 30.1.1.1 local ident (addr/mask/prot/port): (20.1.1.0/255.255.255.0/0/0) remote ident (addr/mask/prot/port): (10.1.1.0/255.255.255.0/0/0) current_peer: 30.1.1.2 PERMIT, flags={origin_is_acl,} #pkts encaps: 7647918, #pkts encrypt: 7647918, #pkts digest 7647918 #pkts decaps: 7640382, #pkts decrypt: 7640382, #pkts verify 7640382 #pkts compressed: 0, #pkts decompressed: 0 #pkts not compressed: 0, #pkts compr. failed: 0, #pkts decompress failed: 0, #send errors 1, #recv errors 0 local crypto endpt.: 30.1.1.1, remote crypto endpt.: 30.1.1.2 path mtu 1500, media mtu 1500 current outbound spi: 3D3 inbound esp sas: spi: 0x136A010F(325714191) transform: esp-3des esp-md5-hmac , in use settings ={Tunnel, } slot: 0, conn id: 3442, flow_id: 1443, crypto map: test sa timing: remaining key lifetime (k/sec): (4608000/52) IV size: 8 bytes replay detection support: Y inbound ah sas: inbound pcp sas: inbound pcp sas: outbound esp sas: spi: 0x3D3(979) From the Library of Alexey Evseenko Chapter 2: Remote Site Connectivity 65 transform: esp-3des esp-md5-hmac , in use settings ={Tunnel, } slot: 0, conn id: 3443, flow_id: 1444, crypto map: test sa timing: remaining key lifetime (k/sec): (4608000/52) IV size: 8 bytes replay detection support: Y outbound ah sas: outbound pcp sas: In Example 2-4, an IPsec tunnel is formed between 30.1.1.1 and 30.1.1.2. The tunnel goes between networks 10.1.1.0 /24 and 20.1.1.0 /24. An ACL is used to identify (that is, permit) traffic that should be sent over the IPsec tunnel. Encapsulating Security Payload (ESP) or Triple Data Encryption Standard (3DES) is being used for encryption, and Message Digest 5 (MD5) is used for authentication. From the Library of Alexey Evseenko 66 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Exam Preparation Tasks Planning Practice The CCNP ROUTE exam expects test takers to review design documents, create implementation plans, and create verification plans. This section provides some exercises that can help you to take a step back from the minute details of the topics in this chapter so that you can think about the same technical topics from the planning perspective. For each planning practice table, simply complete the table. Note that any numbers in parentheses represent the number of options listed for each item in the solutions in Appendix F, “Completed Planning Practice Tables.” Design Review Table Table 2-2 lists several design goals related to this chapter. If these design goals were listed in a design document, and you had to take that document and develop an implementation plan, what implementation options come to mind? For any configuration items, a general description can be used, without concern about the specific parameters. Table 2-2 Design Review Design Goal The design requires that routers at remote sites appear as adjacent to one another, and they are interconnected over an MPLS network. The design requires customer edge (CE) routers at each enterprise site to communicate over an MPLS network and to form neighborships with provider edge (PE) routers to which they connect. Possible Implementation Choices Covered in This Chapter The design requires that multicast, broadcast, and unicast IP traffic between sites be secured within a VPN. The design requires that spokes in a hub-and-spoke VPN topology be able to dynamically form GRE tunnels between themselves. The design requires that a single GRE tunnel interface support multiple GRE tunnels. From the Library of Alexey Evseenko Chapter 2: Remote Site Connectivity 67 Design Goal The design requires that spoke routers in a huband-spoke VPN design be able to query the hub to determine the IP address of a physical interface corresponding to the far side of a tunnel. The design requires that you provide confidentiality, data integrity, authentication, and antireplay protection for unicast traffic flowing over a VPN. Possible Implementation Choices Covered in This Chapter Implementation Plan Peer Review Table Table 2-3 shows a list of questions that others might ask, or that you might think about, during a peer review of another network engineer’s implementation plan. Complete the table by answering the questions. Table 2-3 Notable Questions from This Chapter to Consider During an Implementation Plan Peer Review Question Answer The plan requires that an MPLS VPN technology be used to interconnect remote sites. What broad categories of MPLS VPNs could you choose from? (Choose two.) The plan mandates the use of a Layer 3 MPLS VPN. What routing protocol will the service provider probably use to propagate route information from a customer edge (CE) router at one site to a CE router at another site? The plan calls for the use of a GRE tunnel. What protocols can you send over a GRE tunnel? The plan calls for the use of a Dynamic Multipoint VPN (DMVPN). What VPN technologies are required to support a DMVPN? (Choose three.) The plan requires a hub router in a hub-andspoke topology to have four GRE tunnels out to remote sites. If you use mGRE, how many tunnel interfaces need to be configured on the hub router to support the four GRE tunnels? From the Library of Alexey Evseenko 68 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Question Answer The plan calls for the use of NHRP in a huband-spoke VPN topology. What router, or routers, in the topology will hold the NHRP database? The plan requires the use of IPsec. What are IPsec’s modes of operation? (Choose two.) Create an Implementation Plan Table To practice skills useful when creating your own OSPF implementation plan, list in Table 2-4 configuration commands related to the configuration of the following features. You might want to record your answers outside the book, and set a goal to complete this table (and others like it) from memory during your final reviews before taking the exam. Table 2-4 Implementation Plan Configuration Memory Drill Feature Create a GRE virtual tunnel interface (in global configuration mode). Assign an IP address to a GRE tunnel (in interface configuration mode). Specify the source of a GRE tunnel (in interface configuration mode). Configuration Commands/Notes Specify the destination of a GRE tunnel (in interface configuration mode). Choose Commands for a Verification Plan Table To practice skills useful when creating your own OSPF verification plan, list in Table 2-5 all commands that supply the requested information. You might want to record your answers outside the book, and set a goal to complete this table (and others like it) from memory during your final reviews before taking the exam. Table 2-5 Verification Plan Memory Drill Information Needed Command(s) Verify the interface status and encapsulation of a GRE tunnel. Verify that a router sees the far side of a GRE tunnel as a single hop away, even though multiple routers might need to be transited to reach the far side of the tunnel. From the Library of Alexey Evseenko Chapter 2: Remote Site Connectivity 69 Review All the Key Topics Review the most important topics from inside the chapter, noted with the Key Topics icon in the outer margin of the page. Table 2-6 lists a reference of these key topics and the page numbers on which each is found. Table 2-6 Key Topics for Chapter 2 Key Topic Key Topic Element Description Page Number Figure 2-1 Logical View of a Layer 2 MPLS VPN 52 Figure 2-2 A Layer 3 MPLS VPN 52 List Steps to configure a GRE tunnel 53 Example 2-1 GRE Sample Configuration 54 Example 2-2 GRE Tunnel Verification 55 List Steps used by NHRP to discover a remote physical IP 60 address and form a tunnel Example 2-3 Sample Output from the show ip nhrp Command 61 List Four security features offered by IPsec 61 List Two modes of IPsec operation 62 Example 2-4 Sample Output from the show crypto ipsec sa 64 Command Complete the Tables and Lists from Memory Print a copy of Appendix D, “Memory Tables,” (found on the CD) or at least the section for this chapter, and complete the tables and lists from memory. Appendix E, “Memory Tables Answer Key,” also on the CD, includes completed tables and lists to check your work. Define Key Terms Define the following key terms from this chapter, and check your answers in the glossary: GRE, DMVPN, mGRE, NHRP, IPsec From the Library of Alexey Evseenko This chapter covers the following subjects: ■ Global Unicast Addressing, Routing, and Subnetting: This section introduces the concepts behind unicast IPv6 addresses, IPv6 routing, and how to subnet using IPv6, all in comparison to IPv4. ■ IPv6 Global Unicast Address Assignment: This section examines how global unicast addresses can be assigned to hosts and other devices. ■ Survey of IPv6 Addressing: This section examines all types of IPv6 addresses. ■ Configuring IPv6 Addresses on Cisco Routers: This section shows how to configure and verify static IPv6 addresses on Cisco routers. ■ RIP Next Generation (RIPng): This section compares and contrasts IPv4’s RIPv2 and IPv6’s RIPng routing protocols and shows how to configure RIPng. From the Library of Alexey Evseenko CHAPTER 3 IPv6 Review and RIPng In your CCNA studies, you were introduced to IP version 6 (IPv6) addressing, and you learned that IPv6 is the replacement protocol for IPv4. IPv6 provides the ultimate solution for the problem of running out of IPv4 addresses in the global Internet by using a 128-bit address, as opposed to IPv4’s 32-bit addresses. This gives IPv6 approximately 1038 total addresses, versus the mere (approximate) 4*109 total addresses in IPv4. However, many articles over the years have discussed when, if ever, a mass migration to IPv6 would take place. IPv6 has been the ultimate long-term solution for more than ten years, in part because the interim IPv4 solutions, including NAT/PAT, have thankfully delayed the day in which we truly run out of public unicast IP addresses. With all the promise of IPv6 and its rapid adoption, most networking professionals are still most familiar with IPv4. Therefore, this chapter spends a few pages reviewing the fundamentals of IPv6 to set the stage for a discussion of IPv6 routing protocols. IPv6 uses an updated version of the three popular interior gateway protocols (IGP) (RIP, EIGRP, and OSPF) to exchange routes inside an enterprise. Additionally, updates to the BGP version 4 standard, called multiprotocol extensions for BGP-4 (RFC 4760), allow the exchange of IPv6 routing information in the Internet. This chapter demonstrates how to configure RIPng to support IPv6 routing. Upcoming chapters delve into IPv6 routing using EIGRP and OSPF version 3 (OSPFv3). “Do I Know This Already?” Quiz The “Do I Know This Already?” quiz allows you to assess whether you should read the entire chapter. If you miss no more than one of these ten self-assessment questions, you might want to move ahead to the “Exam Preparation Tasks” section. Table 3-1 lists the major headings in this chapter and the “Do I Know This Already?” quiz questions covering the material in those headings so that you can assess your knowledge of these specific areas. The answers to the “Do I Know This Already?” quiz appear in Appendix A. Table 3-1 “Do I Know This Already?” Foundation Topics Section-to-Question Mapping Foundation Topics Section Global Unicast Addressing, Routing, and Subnetting IPv6 Global Unicast Address Assignment Questions 1, 2 3, 4 Survey of IPv6 Addressing 5, 6 From the Library of Alexey Evseenko 72 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Foundation Topics Section Configuring IPv6 Addresses on Cisco Routers RIP Next Generation (RIPng) Questions 7, 8 9, 10 1. Which of the following is the shortest valid abbreviation for FE80:0000:0000:0000:0 010:0000:0000:0123? a. FE80::10::123 b. FE8::1::123 c. FE80:0:0:0:10::123 d. FE80::10:0:0:123 2. An ISP has assigned prefix 3000:1234:5678::/48 to Company1. Which of the following terms would typically be used to describe this type of public IPv6 prefix? a. Subnet prefix b. ISP prefix c. Global routing prefix d. Registry prefix 3. Which of the following answers list either a protocol or function that can be used by a host to dynamically learn its own IPv6 address? (Choose two.) a. Stateful DHCP b. Stateless DHCP c. Stateless autoconfiguration d. Neighbor Discovery Protocol 4. Which of the following is helpful to allow an IPv6 host to learn the IP address of a default gateway on its subnet? a. Stateful DHCP b. Stateless RS c. Stateless autoconfiguration d. Neighbor Discovery Protocol 5. Which of the following answers lists a multicast IPv6 address? a. 2000::1:1234:5678:9ABC b. FD80::1:1234:5678:9ABC c. FE80::1:1234:5678:9ABC d. FF80::1:1234:5678:9ABC From the Library of Alexey Evseenko Chapter 3: IPv6 Review and RIPng 73 6. Router R1 has two LAN interfaces and three serial interfaces enabled for IPv6. All the interfaces use link-local addresses automatically generated by the router. Which of the following could be the link-local address of R1’s interface S0/0? a. FEA0::200:FF:FE11:0 b. FE80::200:FF:FE11:1111 c. FE80::0213:19FF:FE7B:0:1 d. FEB0::211:11FF:FE11:1111 7. Router R1 has the following configuration. Assuming that R1’s F0/0 interface has a MAC address of 0200.0011.1111, what IPv6 addresses will R1 list for interface F0/0 in the output of the show ipv6 interface brief command? (Choose two.) interface f0/0 ipv6 address 2345:0:0:8::1/64 a. 2345:0:0:8::1 b. 2345:0:0:8:0:FF:FE11:1111 c. FE80::FF:FE11:1111 d. FE80:0:0:8::1 8. Router R1 lists the following output from a show command. Which of the following is true about R1? R1# show ipv6 interface f0/0 FastEthernet0/0 is up, line protocol is up IPv6 is enabled, link-local address is FE80::213:19FF:FE12:3456 No Virtual link-local address(es): Global unicast address(es): 2000::4:213:19FF:FE12:3456, subnet is 2000:0:0:4::/64 [EUI] Joined group address(es): FF02::1 FF02::2 FF02::1:FF12:3456 a. R1’s solicited node multicast address is FF02::1:FF12:3456. b. R1’s 2000::4:213:19FF:FE12:3456 address is a global unicast with all 128 bits statically configured. c. Address FF02::2 is R1’s solicited node multicast. d. R1’s solicited node multicast, not listed in this output, would be FF02::213:19FF:FE12:3456. From the Library of Alexey Evseenko 74 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide 9. Which of the following features work the same in both RIPv2 and RIPng? (Choose three.) a. Distance Vector Logic b. Uses UDP c. Uses RIP-specific authentication d. Maximum useful metric of 15 e. Automatic route summarization 10. Router R1 currently has no configuration related to IPv6 or IPv4. The following configuration exists in a planning document, intended to be used to copy/paste into Router R1 to enable RIPng and IPv6 on interfaces Fa0/0 and S0/0/0. No other related configuration exists. Which of the following is true about RIPng on R1 after this configuration has been pasted into R1? ipv6 unicast-routing interface fa0/0 ipv6 rip one enable ipv6 address 2000::1/64 interface s0/0/0 ipv6 address 2001::/64 eui-64 ipv6 rip one enable a. RIPng will be enabled on no interfaces. b. RIPng will be enabled on one interface. c. RIPng will be enabled on two interfaces. d. RIPng will advertise about prefixes connected to S0/0/0 and Fa0/0, but only send Updates on one interface. From the Library of Alexey Evseenko Foundation Topics Chapter 3: IPv6 Review and RIPng 75 The world has changed tremendously over the past 10–20 years as a result of the growth and maturation of the Internet and networking technologies in general. As recently as 1990, a majority of the general public did not know about nor use global networks to communicate, and when businesses needed to communicate, those communications mostly flowed over private networks. During the last few decades, the public Internet grew to the point where people in most parts of the world could connect to the Internet. Many companies connected to the Internet for a variety of applications, with the predominate applications being email and web access. During the first decade of the twentyfirst century, the Internet has grown further to billions of addressable devices, with the majority of people on the planet having some form of Internet access. With that pervasive access came a wide range of applications and uses, including voice, video, collaboration, and social networking, with a generation that has grown up with this easily accessed global network. The eventual migration to IPv6 will likely be driven by the need for more and more IP addresses. Practically every mobile phone supports Internet traffic, requiring the use of an IP address. Most new cars have the capability to acquire and use an IP address, along with wireless communications, allowing a car dealer to contact the customer when the car’s diagnostics detect a problem with the car. Some manufacturers have embraced the idea that all their appliances need to be IP-enabled. Although the two biggest reasons why networks might migrate from IPv4 to IPv6 are the need for more addresses and mandates from government organizations, at least IPv6 includes some attractive features and migration tools. Some of those advantages are as follows: ■ Address assignment features: IPv6 supports a couple of methods for dynamic address assignment, including DHCP and stateless autoconfiguration. ■ Built-in support for address renumbering: IPv6 supports the ability to change the public IPv6 prefix used for all addresses in an enterprise, using the capability to advertise the current prefix with a short timeout and the new prefix with a longer lease life. ■ Built-in support for mobility: IPv6 supports mobility so that IPv6 hosts can move around an internetwork and retain their IPv6 addresses without losing current application sessions. ■ Provider-independent and -dependent public address space: Internet Service Providers (ISP) can assign public IPv6 address ranges (dependent), or companies can register their own public address space (independent). ■ Aggregation: IPv6’s huge address space makes for much easier aggregation of blocks of addresses in the Internet, making routing in the Internet more efficient. ■ No need for NAT/PAT: The huge public IPv6 address space removes the need for NAT/PAT, which avoids some NAT-induced application problems and makes for more efficient routing. From the Library of Alexey Evseenko 76 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide ■ IPsec: Unlike IPv4, IPv6 requires that every IPv6 implementation support IPsec. IPv6 does not require that each device use IPsec, but any device that implements IPv6 must also have the ability to implement IPsec. ■ Header improvements: Although it might seem like a small issue, the IPv6 header actually improves several things compared to IPv4. In particular, routers do not need to recalculate a header checksum for every packet, reducing per-packet overhead. Additionally, the header includes a flow label that allows easy identification of packets sent over the same single TCP or UDP connection. ■ No broadcasts: IPv6 does not use Layer 3 broadcast addresses, instead relying on multicasts to reach multiple hosts with a single packet. ■ Transition tools: As covered later in this chapter, IPv6 has many rich tools to help with the transition from IPv4 to IPv6. This list includes many legitimate advantages of IPv6 over IPv4, but the core difference is IPv6 addressing. The first two sections of this chapter examine one particular type of IPv6 addresses, global unicast addresses, which have many similarities to IPv4 addresses (particularly public IPv4 addresses). The third section broadens the discussion to include all types of IPv6 addresses, and protocols related to IPv6 address assignment, default router discovery, and neighbor discovery. The fourth section looks at the router configuration commands for IPv6 addressing. The fifth section of this chapter examines RIP Next Generation (RIPng) and shows how it can be used to route traffic for IPv6 networks. Global Unicast Addressing, Routing, and Subnetting The original Internet design called for all organizations to register and be assigned one or more public IP networks (Class A, B, or C). By registering to use a particular public network address, the company or organization using that network was assured by the numbering authorities that no other company or organization in the world would be using the same addresses. As a result, all hosts in the world would have globally unique IP addresses. From the perspective of the Internet infrastructure, in particular the goal of keeping Internet routers’ routing tables from getting too large, assigning an entire network to each organization helped to some degree. The Internet routers could ignore all subnets as defined inside an enterprise, instead having a route for each classful network. For example, if a company registered and was assigned Class B network 128.107.0.0/16, the Internet routers just needed one route for that entire network. Over time, the Internet grew tremendously. It became clear by the early 1990s that something had to be done, or the growth of the Internet would grind to a halt when all the public IP networks were assigned and no more existed. Additionally, the IP routing tables in Internet routers were becoming too large for the router technology of that day. So, the Internet community worked together to come up with both some short-term and long-term solutions to two problems: the shortage of public addresses and the size of the routing tables. From the Library of Alexey Evseenko Chapter 3: IPv6 Review and RIPng 77 The short-term solutions included a much smarter public address assignment policy in which public addresses were not assigned as only Class A, B, and C networks, but as smaller subdivisions (prefixes), reducing waste. Additionally, the growth of the Internet routing tables was reduced by smarter assignment of the actual address ranges based on geography. For example, assigning the Class C networks that begin with 198 to only a particular ISP in a particular part of the world allowed other ISPs to use one route for 198.0.0.0/8—in other words, all addresses that begin with 198—rather than a route for each of the 65,536 different Class C networks that begin with 198. Finally, Network Address Translation/Port Address Translation (NAT/PAT) achieved amazing results by allowing a typical home or small office to consume only one public IPv4 address, greatly reducing the need for public IPv4 addresses. IPv6 provides the long-term solution to both problems (address exhaustion and Internet routing table size). The sheer size of IPv6 addresses takes care of the address exhaustion issue. The address assignment policies already used with IPv4 have been refined and applied to IPv6, with good results for keeping the size of IPv6 routing tables smaller in Internet routers. This section provides a general discussion of both issues, in particular how global unicast addresses, along with good administrative choices for how to assign IPv6 address prefixes, aid in routing in the global Internet. This section concludes with a discussion of subnetting in IPv6. Global Route Aggregation for Efficient Routing By the time the Internet community started serious work to find a solution to the growth problems in the Internet, many people already agreed that a more thoughtful public address assignment policy for the public IPv4 address space could help keep Internet routing tables much smaller and more manageable. IPv6 public address assignment follows these same well-earned lessons. Note The descriptions of IPv6 global address assignment in this section provide a general idea about the process. The process can vary from one Regional Internet Registry (RIR) to another and one Internet Service Provider (ISP) to another, based on many other factors. The address assignment strategy for IPv6 is elegant, but simple, and can be roughly summarized as follows: ■ Public IPv6 addresses are grouped (numerically) by major geographic region. ■ Inside each region, the address space is further subdivided by ISPs inside that region. ■ Inside each ISP in a region, the address space is further subdivided for each customer. The same organizations handle this address assignment for IPv6 as for IPv4. The Internet Corporation for Assigned Network Numbers (ICANN, www.icann.org) owns the process, with the Internet Assigned Numbers Authority (IANA) managing the process. IANA From the Library of Alexey Evseenko 78 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Key Topic assigns one or more IPv6 address ranges to each RIR, of which there are five at the time of this publication, roughly covering North America, Central/South America, Europe, Asia/Pacific, and Africa. These RIRs then subdivide their assigned address space into smaller portions, assigning prefixes to different ISPs and other smaller registries, with the ISPs then assigning even smaller ranges of addresses to their customers. The IPv6 global address assignment plan results in more efficient routing, as shown in Figure 3-1. The figure shows a fictitious company (Company1), which has been assigned an IPv6 prefix by a fictitious ISP, NA-ISP1 (indicating North American ISP number 1). Company 1 R1 R2 NA-ISP2 1 Route for All NA-ISP1 Addresses ISP-1 ISP-2 1 Route for All Company 1 Addresses NA-ISP1 ISP-3 Europe 1 Route for All North American IPv6 Addresses 1 Route for All North American IPv6 Addresses South America Figure 3-1 Conceptual View of IPv6 Global Routes As shown in the figure, the routers installed by ISPs in other major geographies of the world can have a single route that matches all IPv6 addresses in North America. Although there might be hundreds of ISPs operating in North America, and hundreds of thousands of enterprise customers of those ISPs, and tens of millions of individual customers of those ISPs, all the public IPv6 addresses can be from one (or a few) very large address blocks—requiring only one (or a few) routes on the Internet routers in other parts of the world. Similarly, routers inside other ISPs in North America (for example, NA-ISP2, indicating North American ISP number 2 in the figure) can have one route that matches all address ranges assigned to NA-ISP1. Also, the routers inside NA-ISP1 just need to have one route that matches the entire address range assigned to Company1, rather than needing to know about all the subnets inside Company1. Besides keeping the routers’ routing tables much smaller, this process also results in fewer changes to Internet routing tables. For example, if NA-ISP1 signed a service contract with From the Library of Alexey Evseenko Chapter 3: IPv6 Review and RIPng 79 another enterprise customer, NA-ISP1 could assign another prefix inside the range of addresses already assigned to NA-ISP1 by the American Registry for Internet Numbers (ARIN). The routers outside NA-ISP1’s network (that is, the majority of the Internet) do not need to know any new routes, because their existing routes already match the address range assigned to the new customer. The NA-ISP2 routers (another ISP) already have a route that matches the entire address range assigned to NA-ISP1, so they do not need any more routes. Likewise, the routers in ISPs in Europe and South America already have a route that works as well. Conventions for Representing IPv6 Addresses IPv6 conventions use 32 hexadecimal numbers, organized into 8 quartets of 4 hex digits separated by a colon, to represent a 128-bit IPv6 address, for example: 2340:1111:AAAA:0001:1234:5678:9ABC:1111 Each hex digit represents 4 bits, so if you want to examine the address in binary, the conversion is relatively easy if you memorize the values shown in Table 3-2. Table 3-2 Hexadecimal/Binary Conversion Chart Hex Binary Hex 0 0000 8 1 0001 9 2 0010 A 3 0011 B 4 0100 C 5 0101 D 6 0110 E 7 0111 F Binary 1000 1001 1010 1011 1100 1101 1110 1111 Key Topic Writing or typing 32 hexadecimal digits, although more convenient than writing or typing 128 binary digits, can still be a pain. To make things a little easier, two conventions allow you to shorten what must be typed for an IPv6 address: ■ Omit the leading 0s in any given quartet. ■ Represent one or more consecutive quartets of all hex 0s with “::” but only for one such occurrence in a given address. Note For IPv6, a quartet is one set of four hex digits in an IPv6 address. There are eight quartets in each IPv6 address. From the Library of Alexey Evseenko 80 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide For example, consider the following address. The bold digits represent digits in which the address could be abbreviated. FE00:0000:0000:0001:0000:0000:0000:0056 This address has two different locations in which one or more quartets have four hex 0s, so two main options exist for abbreviating this address—using the :: abbreviation in one or the other location. The following two options show the two briefest valid abbreviations: FE00::1:0:0:0:56 FE00:0:0:1::56 In particular, note that the :: abbreviation, meaning “one or more quartets of all 0s,” cannot be used twice, because that would be ambiguous. So, the abbreviation FE00::1::56 would not be valid. Conventions for Writing IPv6 Prefixes IPv6 prefixes represent a range or block of consecutive IPv6 addresses. Just like routers use IPv4 subnets in IPv4 routing tables to represent ranges of consecutive addresses, routers use IPv6 prefixes to represent ranges of consecutive IPv6 addresses. The concepts mirror those of IPv4 addressing when using a classless view of the IPv4 address. Figure 3-2 reviews both the classful and classless views of IPv4 addresses, compared to the IPv6 view of addressing and prefixes. Length of Network + Subnet Parts Network Subnet Host IPv4 Classful Addressing Prefix Host IPv4 Classless Addressing Prefix Prefix Length Host (Interface ID) IPv6 Addressing Prefix Length Figure 3-2 IPv4 Classless and Classful Addressing, IPv6 Addressing First, for perspective, compare the classful and classless view of IPv4 addresses. Classful IPv4 addressing means that the class rules always identify part of the address as the network part. For example, the written value 128.107.3.0/24 (or 128.107.3.0 255.255.255.0) means 16 network bits (because the address is in a Class B network), 8 host bits (because the mask has 8 binary 0s), leaving 8 subnet bits. The same value, interpreted with From the Library of Alexey Evseenko Chapter 3: IPv6 Review and RIPng 81 classless rules, means prefix 128.107.3.0, prefix length 24. Classless addressing and classful addressing just give a slightly different meaning to the same numbers. IPv6 uses a classless view of addressing, with no concept of classful addressing. Like IPv4, IPv6 prefixes list some prefix value, a slash, and then a numeric prefix length. Like IPv4 prefixes, the last part of the number, beyond the length of the prefix, will be represented by binary 0s. And finally, IPv6 prefix numbers can be abbreviated with the same rules as IPv6 addresses. Note IPv6 prefixes are often called IPv6 subnets. This book uses these terms interchangeably. Key Topic For example, consider the following IPv6 address that is assigned to a host on a LAN: 2000:1234:5678:9ABC:1234:5678:9ABC:1111/64 This value represents the full 128-bit IP address—there are no opportunities to even abbreviate this address. However, the /64 means that the prefix (subnet) in which this address resides is the subnet that includes all addresses that begin with the same first 64 bits as the address. Conceptually, it is the same logic as an IPv4 address. For example, address 128.107.3.1/24 is in the prefix (subnet) whose first 24 bits are the same values as address 128.107.3.1. As with IPv4, when writing or typing a prefix, the bits past the end of the prefix length are all binary 0s. In the IPv6 address previously shown, the prefix in which the address resides would be 2000:1234:5678:9ABC:0000:0000:0000:0000/64 Which, when abbreviated, would be 2000:1234:5678:9ABC::/64 Next, consider one last fact about the rules for writing prefixes before seeing some examples. If the prefix length is not a multiple of 16, the boundary between the prefix and the interface ID (host) part of the address is inside a quartet. In such cases, the prefix value should list all the values in the last quartet in the prefix part of the value. For example, if the address just shown with a /64 prefix length instead had a /56 prefix length, the prefix would include all of the first three quartets (a total of 48 bits), plus the first 8 bits of the fourth quartet. The next 8 bits (last 2 hex digits) of the fourth octet should now be binary 0s, as part of the host portion of the address. So, by convention, the rest of the fourth octet should be written, after being set to binary 0s, as 9A00, which produces the following IPv6 prefix: 2000:1234:5678:9A00::/56 The following list summarizes some key points about how to write IPv6 prefixes. ■ A prefix has the same value as the IP addresses in the group for the number of bits in the prefix length. ■ Any bits after the prefix length number of bits are binary 0s. From the Library of Alexey Evseenko 82 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide ■ A prefix can be abbreviated with the same rules as IPv6 addresses. ■ If the prefix length is not on a quartet boundary, write down the value for the entire quartet. Examples can certainly help in this case. Table 3-3 shows several sample prefixes, their format, and a brief explanation. Table 3-3 Example IPv6 Prefixes and Their Meanings Prefix 2000::/3 2340:1140::/26 2340:1111::/32 Explanation All addresses whose first 3 bits are equal to the first 3 bits of hex number 2000 (bits are 001). All addresses whose first 26 bits match the listed hex number. All addresses whose first 32 bits match the listed hex number. Incorrect Alternative 2000/3 (omits ::) 2340:114::/26 (omits trailing 0 in the second quartet) 2340:1111:/32 (uses : instead of ::) Note which options are not allowed. For example, 2::/3 is not allowed instead of 2000::/3, because it omits the rest of the quartet, and a device could not tell whether 2::/3 means “hex 0002” or “hex 2000.” Now that you understand a few of the conventions about how to represent IPv6 addresses and prefixes, a specific example can show how IANA’s IPv6 global unicast IP address assignment strategy can allow the easy and efficient routing previously shown in Figure 3-1. Global Unicast Prefix Assignment Example IPv6 standards reserve the range of addresses inside the 2000::/3 prefix as global unicast addresses. This address range includes all IPv6 addresses that begin with binary 001, or as more easily recognized, all IPv6 addresses that begin with a 2 or 3. IANA assigns global unicast IPv6 addresses as public and globally unique IPv6 addresses, as discussed using the example previously shown in Figure 3-1, allowing hosts using those addresses to communicate through the Internet without the need for NAT. In other words, these addresses fit the purest design for how to implement IPv6 for the global Internet. Figure 3-3 shows an example set of prefixes that could result in a company (Company1) being assigned a prefix of 2340:1111:AAAA::/48. From the Library of Alexey Evseenko Key Topic Company1 Owns 2340:1111:AAAA::/48 Assigns 2340:1111:AAAA::/48 R1 ISP-1 Chapter 3: IPv6 Review and RIPng 83 R2 Company1 NA-ISP1Owns 2340:1111::/32 Assigns 2340:1111::/32 ISP-2 NA-ISPI ISP-3 ARIN (RIR) Owns 2340::/12 Assigns 2340::/12 IANA Figure 3-3 Example IPv6 Prefix Assignment in the Internet The process starts with IANA, who owns the entire IPv6 address space and assigns the rights to a registry prefix to one of the RIRs (ARIN in this case, in North America). For the purposes of this chapter, assume that IANA assigns prefix 2340::/12 to ARIN. This assignment means that ARIN has the rights to assign any IPv6 addresses that begin with the first 12 bits of hex 2340 (binary value 0010 0011 0100). For perspective, that’s a large group of addresses: 2116 to be exact. Next, NA-ISP1 asks ARIN for a prefix assignment. After ARIN ensures that NA-ISP1 meets some requirements, ARIN might assign ISP prefix 2340:1111::/32 to NA-ISP1. This too is a large group: 296 addresses to be exact. For perspective, this one address block might well be enough public IPv6 addresses for even the largest ISPs, without that ISP ever needing another IPv6 prefix. Finally, Company1 asks its ISP, NA-ISP1, for the assignment of an IPv6 prefix. NA-ISP1 assigns Company1 the site prefix 2340:1111:AAAA::/48, which is again a large range of addresses: 280 in this case. A little later in this section, the text shows what Company1 could do with that prefix, but first, examine Figure 3-4, which presents the same concepts as in Figure 3-1, but now with the actual prefixes shown. From the Library of Alexey Evseenko 84 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Company1 R1 R2 NA-ISP2 1 Route for 2340:1111::/32 ISP-1 1 Route for 2340:1111:AAAA::/48 ISP-2 NA-ISP1 ISP-3 Europe 1 Route for 2340::/12 1 Route for 2340::/12 South America Figure 3-4 IPv6 Global Routing Concepts The figure shows the perspectives of routers outside North America, routers from another ISP in North America, and other routers in the same ISP. Routers outside North America can use a route for prefix 2340::/12, knowing the IANA assigned this prefix to be used only by ARIN. This one route could match all IPv6 addresses assigned in North America. Routers in NA-ISP2, an example alternative ISP in North America, need one route for 2340:1111::/32, the prefix assigned to NA-ISP1. This one route could match all packets destined for all customers of NA-ISP1. Inside NA-ISP1, its routers need to know to which NA-ISP1 router to forward packets for that particular customer (named ISP-1 in this case), so the routes inside NA-ISP1’s routers list a prefix of 2340:1111:AAAA::/48. Note The /48 prefix assigned to a single company is called either a global routing prefix or a site prefix. Subnetting Global Unicast IPv6 Addresses Inside an Enterprise The original IPv4 Internet design called for each organization to be assigned a classful network number, with the enterprise subdividing the network into smaller address ranges by subnetting the classful network. This same concept of subnetting carries over from IPv4 to IPv6, with the enterprise subnetting its assigned global unicast prefix into smaller prefixes. From the Library of Alexey Evseenko Chapter 3: IPv6 Review and RIPng 85 To better understand IPv6 subnetting, you can draw on either classful or classless IPv4 addressing concepts, whichever you find most comfortable. From a classless perspective, you can view the IPv6 addresses as follows: Key Topic ■ The prefix assigned to the enterprise by the ISP (the global routing prefix) acts like the prefix assigned for IPv4. ■ The enterprise engineer extends the prefix length, borrowing host bits, to create a subnet part of the address with which to identify individual subnets. ■ The remaining part of the addresses on the right, called either the interface ID or host part, works just like the IPv4 host part, uniquely identifying a host inside a subnet. For example, Figure 3-5 shows a more detailed view of the Company1 enterprise network, shown in several of the previous figures in this chapter. The design concepts behind how many subnets are needed with IPv6 are identical to those of IPv4. Specifically, a subnet is needed for each VLAN and for each serial link, with the same Frame Relay subnetting options. In this case, two LANs and two serial links exist. So Company1 needs four subnets. Key Topic Subnet 1 Company 1 Subnet 2 Subnet 3 Fa0/0 R1 S0/0/1 S0/1/1 Subnet 4 ISP-1 S0/1/0 R2 Fa0/0 48 Bits 16 Bits Prefix (ISP-assigned) 2340:1111:AAAA Subnet 64 Bits Host (Interface ID) Subnet Prefix Host Figure 3-5 Company1—Needs Four Subnets The figure also shows how the enterprise engineer extended the length of the prefix as assigned by the ISP (/48) to /64, thereby creating a 16-bit subnet part of the address structure. To create this extra 16-bit subnet field, the engineer uses the same concept as with IPv4 when choosing a subnet mask, by borrowing bits from the host field of an IPv4 address. In this case, think of the original host field (before subnetting) as having 80 bits, because the site prefix is 48 bits long, leaving 80 bits. The design in Figure 3-5 borrows 16 bits for the subnet field, leaving a measly 64 bits for the host field. A bit of math about the design choices can help provide some perspective on the scale of IPv6. The 16-bit subnet field allows for 216, or 65,536, subnets—overkill for all but the very largest organizations or companies. (There are no worries about a zero or broadcast subnet in IPv6!) The host field is seemingly even more overkill: 264 hosts per subnet, From the Library of Alexey Evseenko 86 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide which is more than 1,000,000,000,000,000,000 addresses per subnet. However, there is a good reason for this large host or interface ID part of the address. It allows one of the automatic IPv6 address assignment features to work well, as covered later in the “IPv6 Global Unicast Addresses Assignment” section of this chapter. Figure 3-6 takes the concept to the conclusion, assigning the specific four subnets to be used inside Company1. Note that the figure shows the subnet fields and prefix lengths (64 in this case) in bold. Note The subnet numbers in Figure 3-6 could be abbreviated slightly, removing the three leading 0s from the last shown quartets. The figure includes the leading 0s to show the entire subnet part of the prefixes. Prefix 2340:1111:AAAA:0001::/64 Company 1 Prefix 2340:1111:AAAA:0002::/64 Prefix 2340:1111:AAAA:0003::/64 Fa0/0 R1 S0/0/1 S0/1/1 S0/1/0 R2 Prefix 2340:1111:AAAA:0004::/64 Fa0/0 ISP-1 Figure 3-6 Company1—Four Subnets Assigned Figure 3-6 just shows one option for subnetting the prefix assigned to Company1. However, any number of subnet bits could be chosen if the host field retained enough bits to number all hosts in a subnet. For example, a /112 prefix length could be used, extending the /48 prefix by 64 bits (four hex quartets). Then, for the design in Figure 3-6, you could choose the following four subnets: 2340:1111:AAAA::0001:0000/112 2340:1111:AAAA::0002:0000/112 2340:1111:AAAA::0003:0000/112 2340:1111:AAAA::0004:0000/112 By using global unicast IPv6 addresses, Internet routing can be very efficient. Enterprises can have plenty of IP addresses and plenty of subnets with no requirement for NAT functions to conserve the address space. From the Library of Alexey Evseenko Chapter 3: IPv6 Review and RIPng 87 Prefix Terminology Before wrapping up this section, you need to review a few terms. The process of global unicast IPv6 address assignment examines many different prefixes with many different prefix lengths. The text scatters a couple of more specific terms, but for easier study, Table 3-4 summarizes the four key terms with some reminders of what each means. Table 3-4 Example IPv6 Prefixes and Their Meanings Term Registry prefix ISP prefix Assignment By IANA to an RIR By an RIR to an ISP1 Example 2340::/12 2340:1111/32 Site prefix or global routing By an ISP or registry to a prefix customer (site) 2340:1111:AAAA/48 Subnet prefix By an enterprise engineer for 2340:1111:AAAA:0001/64 each individual link 1 Although an RIR can assign a prefix to an ISP, an RIR can also assign a prefix to other Internet registries, which might subdivide and assign additional prefixes, until eventually an ISP and then its customers are assigned some unique prefix. IPv6 Global Unicast Addresses Assignment This section still focuses on global unicast IPv6 addresses but now examines the topic of how a host, router interface, or other device knows what global unicast IPv6 address to use. Also, hosts (and sometimes routers) need to know a few other facts that can be learned at the same time as they learn their IPv6 address. So, this section also discusses how hosts can get all the following relevant information that lets them use their global unicast addresses: ■ IP address ■ IP subnet mask (prefix length) ■ Default router IP address ■ DNS IP address(es) IPv6 actually has four major options for IPv6 global unicast address assignment. This section looks at these options in the same order as listed in Table 3-5. Each method can use dynamic processes or static configuration, and each method can differ in terms of how a host or router gathers the other pertinent information (such as DNS IP addresses). Table 3-5 summarizes these main methods for easier review. From the Library of Alexey Evseenko 88 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Table 3-5 Summary of IPv6 Address Assignment for Global Unicast Addresses Method Dynamic or Static Stateful DHCP Dynamic Stateless Dynamic Autoconfig Static Static Configuration Static Config Static with EUI-64 Prefix and Length Learned from... Host Learned from... Default Router Learned from... DHCP Server DHCP Server Router, using NDP Router, using Derived from Router, using NDP MAC NDP Local config Local config Router, using NDP Local config Derived from Router, using MAC NDP DNS Addresses Learned from... (Stateful) DHCP Server Stateless DHCP Stateless DHCP Stateless DHCP The rest of this section develops more detail about the topics in the table. Some of the processes work much like IPv4, and some do not. Regardless, as you work through the material, keep in mind one key fact about how IPv6 protocols approach the address assignment process: IPv6 address assignment processes can split the IPv6 address assignment into two parts: the prefix/length assignment and the host (interface ID) assignment. Stateful DHCP for IPv6 IPv6 hosts can use stateful DHCP to learn and lease an IP address and corresponding prefix length (mask) and the DNS IP address(es). The concept works basically like DHCP for IPv4. The host sends a (multicast) packet searching for the DHCP server. When a server replies, the DHCP client sends a message asking for a lease of an IP address, and the server replies, listing an IPv6 address, prefix length, and DNS IP addresses. (Note that Stateful DHCPv6 does not supply the default router information, instead relying on Neighbor Discovery Protocol [NDP] between the client and local routers.) The names and formats of the actual DHCP messages have changed quite a bit from IPv4 to IPv6. So, DHCPv4 and DHCPv6 actually differ in detail, but the basic process remains the same. (The term DHCPv4 refers to the version of DHCP used for IPv4, and the term DHCPv6 refers to the version of DHCP used for IPv6.) DHCPv4 servers retain state information about each client, such as the IP address leased to that client and the length of time for which the lease is valid. In other words, DHCPv4 tracks the current state of DHCP clients. DHCPv6 servers happen to have two operational modes: stateful, in which the server does track state information, and stateless, in which the server does not track any state information. Stateful DHCPv6 servers fill the same role as the older DHCPv4 servers, whereas stateless DHCPv6 servers fill a different purpose as one part of the stateless autoconfiguration process. (Stateless DHCP, and its purpose, is covered in the upcoming section “Finding the DNS IP Addresses Using Stateless DHCP.”) From the Library of Alexey Evseenko Chapter 3: IPv6 Review and RIPng 89 One difference between DHCPv4 and stateful DHCPv6 is that IPv4 hosts send IP broadcasts to find DHCP servers, whereas IPv6 hosts send IPv6 multicasts. IPv6 multicast addresses have a prefix of FF00::/8, meaning that the first 8 bits of an address are binary 11111111, or FF in hex. The multicast address FF02::1:2 (longhand FF02:0000:0000:00 00:0000:0000:0001:0002) has been reserved in IPv6 to be used by hosts to send packets to an unknown DHCP server, with the routers working to forward these packets to the appropriate DHCP server. Stateless Autoconfiguration The second of the two options for dynamic IPv6 address assignment uses a built-in IPv6 feature called stateless autoconfiguration as the core tool. Stateless autoconfiguration allows a host to automatically learn the key pieces of addressing information—prefix, host, and prefix length—plus the default router IP address and DNS IP addresses. To learn or derive all these pieces of information, stateless autoconfiguration actually uses the following functions: Key Topic Step 1. IPv6 Neighbor Discovery Protocol (NDP), particularly the router solicitation and router advertisement messages, to learn the prefix, prefix length, and default router Step 2. Some math to derive the interface ID (host ID) portion of the IPv6 address, using a format called EUI-64 Step 3. Stateless DHCP to learn the DNS IPv6 addresses This section examines all three topics in order. Learning the Prefix/Length and Default Router with NDP Router Advertisements The IPv6 Neighbor Discovery Protocol (NDP) has many functions. One function allows IPv6 hosts to multicast a message that asks all routers on the link to announce two key pieces of information: the IPv6 addresses of routers willing to act as a default gateway and all known IPv6 prefixes on the link. This process uses ICMPv6 messages called a Router Solicitation (RS) and a Router Advertisement (RA). For this process to work, before a host sends an RS message on a LAN, some router connected to that same LAN must already be configured for IPv6. The router must have an IPv6 address configured, and it must be configured to route IPv6 traffic. At that point, the router knows it can be useful as a default gateway, and it knows at least one prefix that can be useful to any clients on the LAN. For example, Figure 3-7 shows a subset of the internetwork seen in Figures 3-5 and 3-6, with the same IPv6 addresses and subnets used. Router R1’s Fa0/0 has already been configured with an IPv6 address (2340:1111:AAAA:1:213:19FF:FE7B:5004/64) and has been configured to route IPv6 with the ipv6 unicast-routing global command. From the Library of Alexey Evseenko 90 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide PC1 1 R1 RS – All Routers – Identity Yourselves 2 RA – All Nodes: Prefix Is 2340:1111:AAAA:1::/64 Default Router Is 2340:1111:AAAA:1:213:19FF:FE7B:5004 Figure 3-7 Example NDP RS/RA Process to Find the Default Routers In the figure, host PC1, using stateless autoconfig, sends the RS message as an IPv6 multicast message destined to all IPv6 routers on the local link. The RS asks all routers to respond to the questions “What IPv6 prefix(s) is used on this subnet?” and “What is the IPv6 address(s) of any default routers on this subnet?” The figure also shows R1’s response (RA), listing the prefix (2340:1111:AAAA:1::/64), and with R1’s own IPv6 address as a potential default router. Note IPv6 allows multiple prefixes and multiple default routers to be listed in the RA message; Figure 3-7 just shows one of each for simplicity’s sake. One router’s RA would also include IPv6 addresses and prefixes advertised by other routers on the link. IPv6 does not use broadcasts. In fact, there is no such thing as a subnet broadcast address, a network-wide broadcast address, or an equivalent of the all-hosts 255.255.255.255 broadcast IPv4 address. Instead, IPv6 makes use of multicast addresses. By defining different multicast IPv6 addresses for different functions, an IPv6 host that has no need to participate in a particular function can simply ignore those particular multicasts, reducing the impact on the host. For example, the RS message needs to be received and processed only by routers, so the RS message’s destination IP address is FF02::2, which IPv6 reserves for use only by IPv6 routers. IPv6 defines that routers send RA messages to a multicast address intended for use by all IPv6 hosts on the link (FF02::1); routers do not forward these messages to other links. As a result, not only does the host that sent the RS message learn the information, but all other hosts on the link also learn the details. Table 3-6 summarizes some of the key details about the RS/RA messages. Table 3-6 Details of the RS/RA Process Message Multicast destination Meaning of multicast address RS FF02::2 All routers on this link RA FF02::1 All IPv6 nodes on this link From the Library of Alexey Evseenko Chapter 3: IPv6 Review and RIPng 91 Calculating the Interface ID Using EUI-64 Earlier in the chapter, Figure 3-5 showed the format of an IPv6 global unicast address with the second half of the address called the host ID or interface ID. The value of the interface ID portion of a global unicast address can be set to any value if no other host in the same subnet attempts to use the same value. To automatically create a guaranteed-unique interface ID, IPv6 defines a method to calculate a 64-bit interface ID derived from that host’s MAC address. Because the burned-in MAC address should be literally globally unique, the derived interface ID should also be globally unique. The EUI-64 process takes the 6-byte (48-bit) MAC address and expands it into a 64-bit value. To do so, IPv6 fills in 2 more bytes into the middle of the MAC address. IPv6 separates the original MAC address into two 3-byte halves and inserts hex FFFE in between the halves to form the Interface ID field of the IPv6 address. The conversion also requires flipping the seventh bit inside the IPv6 address, resulting in a 64-bit number that conforms to a convention called the EUI-64 format. The process is shown in Figure 3-8. Key Topic Subnet Prefix 48 Bits 16 Bits 64 Bits Prefix (ISP-assigned) Subnet Interface ID Site Prefix EUI-64 Format 1st Half of MAC FFFE 2nd Half of MAC Flip 7th Bit (Reading Left to Right) in First Byte Figure 3-8 IPv6 Address Format with Interface ID and EUI-64 Although it might seem a bit convoluted, it works. Also, with a little practice, you can look at an IPv6 address and quickly notice the FFFE late in the address and then easily find the two halves of the corresponding interface’s MAC address. For example, the following two lines list a host’s MAC address, and corresponding EUI64 format Interface ID, assuming the use of an address configuration option that uses the EUI-64 format: 0034:5678:9ABC 0234:56FF:FE78:9ABC Note To change the seventh bit (left-to-right) in the example, we notice that hex 00 converts to binary 00000000. Then we change the seventh bit to 1 (00000010) and convert back to hex, which gives us hex 02 as the first two hexadecimal digits. From the Library of Alexey Evseenko 92 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide At this point in the stateless autoconfig process, a host knows its full IPv6 address and prefix length, plus a local router to use as the default gateway. The next section discusses how to complete the process using stateless DHCP. Finding the DNS IP Addresses Using Stateless DHCP Although the DHCP server function for IPv4 does not explicitly use the word “stateful” in its name, IPv4 DHCP servers keep state information about DHCP clients. The server keeps a record of the leased IP addresses and when the lease expires. The server typically releases the addresses to the same client before the lease expires, and if no response is heard from a DHCP client in time to renew the lease, the server releases that IP address back into the pool of usable IP addresses—again keeping that state information. The server also has configuration of the subnets in use and a pool of addresses in most subnets from which the server can assign IP addresses. It also serves other information, such as the default router IP addresses in each subnet, and the DNS servers’ IP addresses. The IPv6 stateful DHCP server, as previously discussed in the section “Stateful DHCP for IPv6,” follows the same general idea. However, for IPv6, this server’s name includes the word stateful, to contrast it with the stateless DHCP server function in IPv6. The stateless DHCP server function in IPv6 solves one particular problem: It supplies the DNS servers’ IPv6 addresses to clients. Because all hosts typically use the same small number of DNS servers, the stateless DHCP server does not need to keep track of any state information. An engineer simply configures the stateless DHCP server to know the IPv6 addresses of the DNS servers, and the server tells any host or other device that asks, keeping no record of the process. Hosts that use stateless autoconfig also use stateless DHCP to learn the DNS servers’ IPv6 addresses. Table 3-7 summarizes some of the key features of stateful and stateless DHCPv6. Table 3-7 Comparing Stateless and Stateful DHCPv6 Services Key Topic Feature Stateful DHCP Stateless DHCP Remembers IPv6 address (state information) of clients Yes No that make requests Assigns IPv6 address to client Yes No Supplies useful information, such as DNS server IP Yes Yes addresses Most useful in conjunction with stateless autoconfiguration No Yes From the Library of Alexey Evseenko Chapter 3: IPv6 Review and RIPng 93 Static IPv6 Address Configuration Two options exist for static configuration of IPv6 addresses: ■ You configure the entire 128-bit IPv6 address. ■ You configure the 64-bit prefix and tell the device to use an EUI-64 calculation for the interface ID portion of the address. Both options result in the host or router interface knowing its full 128-bit IPv6 address and prefix length. When a host uses either form of static IPv6 address configuration, the host does not need to statically configure the other key pieces of information (default router and DNS IP addresses). The host can use the usual NDP process to discover any default routers and stateless DHCP to discover the DNS IPv6 addresses. When a router uses static IPv6 address configuration, it might still use stateless DHCP to learn the DNS IP addresses. The upcoming section “Configuring IPv6 Addresses on Cisco Routers” shows several examples of this configuration. Survey of IPv6 Addressing So far, this chapter has focused on the IPv6 addresses that most closely match the concept of IPv4 addresses: the global unicast IPv6 addresses. This section now takes a broader look at IPv6 addressing, including some concepts that can be tied to older IPv4 concepts, and some that are unique to IPv6. This section begins with a brief overview of IPv6 addressing. It then looks at unicast IPv6 addresses, along with a brief look at some of the commonly used multicast addresses. This section ends with a discussion of a couple of related protocols, namely, Neighbor Discovery Protocol (NDP) and Duplicate Address Detection (DAD). Overview of IPv6 Addressing The entire concept of global unicast addressing with IPv6 does have many similarities to IPv4. If viewing IPv4 addresses from a classless perspective, both IPv4 and IPv6 global unicast addresses have two parts: subnet plus host for IPv4 and prefix plus interface ID for IPv6. The format of the addresses commonly list a slash followed by the prefix length—a convention sometimes referred to as CIDR notation and other times as prefix notation. Subnetting works much the same, with a public prefix assigned by some numbering authority and the enterprise choosing subnet numbers, extending the length of the prefix to make room to number the subnets. IPv6 addressing, however, includes several other types of unicast IPv6 addresses in addition to the global unicast address. Additionally, IPv6 defines other general categories of addresses, as summarized in the list that follows: Key Topic ■ Unicast: Like IPv4, hosts and routers assign these IP addresses to a single interface for the purpose of allowing that one host or interface to send and receive IP packets. From the Library of Alexey Evseenko 94 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide ■ Multicast: Like IPv4, these addresses represent a dynamic group of hosts, allowing a host to send one packet that is then delivered to every host in the multicast group. IPv6 defines some special-purpose multicast addresses for overhead functions (such as NDP). IPv6 also defines ranges of multicast addresses for application use. ■ Anycast: This address type allows the implementation of a nearest server among duplicate servers concept. This design choice allows servers that support the exact same function to use the exact same unicast IP address. The routers then forward a packet destined for such an address to the nearest server that is using the address. Two big differences exist when comparing general address categories for IPv4 and IPv6: ■ IPv6 adds the formal concept of Anycast IPv6 addresses as shown in the preceding list. IPv4 does not formally define an Anycast IP address concept, although a similar concept might be implemented in practice. ■ IPv6 simply has no Layer 3 broadcast addresses. For example, all IPv6 routing protocols send Updates either to unicast or multicast IPv6 addresses, and overhead protocols such as NDP make use of multicasts as well. In IPv4, ARP still uses broadcasts, and the RIP version 1 routing protocol also uses broadcasts. With IPv6, there is no need to calculate a subnet broadcast address (hoorah!) and no need to make hosts process overhead broadcast packets meant only for a few devices in a subnet. Finally, note that IPv6 hosts and router interfaces typically have at least two IPv6 addresses and might well have more. Hosts and routers typically have a link local type of IPv6 address (as described in the upcoming section “Link-local Unicast Addresses”). A router might or might not have a global unicast address, and might well have multiple addresses. IPv6 simply allows the configuration of multiple IPv6 addresses with no need for or concept of secondary IP addressing. Unicast IPv6 Addresses IPv6 supports three main types of unicast addresses: unique local, global unicast, and link-local. This section takes a brief look at unique local and link-local addresses. Unique Local IPv6 Addresses Unique local unicast IPv6 addresses have the same function as IPv4 RFC 1918 private addresses. RFC 4193 states that these addresses should be used inside a private organization and should not be advertised into the Internet. Unique local unicast addresses begin with hex FC00::/7, with the format shown in Figure 3-9. The L-bit is set to a 1 if the address is locally assigned. This makes FD the first two hex digits in a unique local address that is locally assigned. From the Library of Alexey Evseenko 111 110 L Global ID Subnet ID Chapter 3: IPv6 Review and RIPng 95 Interface ID 7 Bits 1 Bit 40 Bits 16 Bits 64 Bits Figure 3-9 Unique Local Address Format To use these addresses, an enterprise engineer would choose a 40-bit global ID in a pseudorandom manner rather than asking for a registered public prefix from an ISP or other registry. To form the complete prefix, the chosen 40 bits would be combined with the initial required 8 bits (hex FD) to form a 48-bit site prefix. The engineer can then use a 16-bit subnet field to create subnets, leaving a 64-bit interface ID. The interface ID could be created by static configuration or by the EUI-64 calculation. This type of unicast address gives the engineer the ability to create the equivalent of an IPv4 private address structure, but given the huge number of available public IPv6 addresses, it might be more likely that engineers plan to use global unicast IP addresses throughout an enterprise. Link-local Unicast Addresses IPv6 uses link-local addresses for sending and receiving IPv6 packets on a single subnet. Many such uses exist; here’s just a small sample: ■ Used as the source address for RS and RA messages for router discovery (as previously shown in Figure 3-7) ■ Used by Neighbor Discovery (the equivalent of ARP for IPv6) ■ Used as the next-hop IPv6 address for IP routes By definition, routers use a link-local scope for packets sent to a link-local IPv6 address. The term link-local scope means exactly that—the packet should not leave the local link, or local subnet if you will. When a router receives a packet destined for such a destination address, the router does not forward the packet. The link-local IPv6 addresses also help solve some chicken-and-egg problems, because each host, router interface, or other device can calculate its own link-local IPv6 address without needing to communicate with any other device. So, before sending the first packets, a host can calculate its own link-local address. Therefore, the host has an IPv6 address to use when doing its first overhead messages. For example, before a host sends an NDP RS (Router Solicitation) message, the host will have already calculated its linklocal address, which can be used as the source IPv6 address in the RS message. Link-local addresses come from the FE80::/10 range, meaning that the first 10 bits must be 1111 1110 10. An easier range to remember is that all hex link-local addresses begin with FE8, FE9, FEA, or FEB. However, practically speaking, for link-local addresses formed automatically by a host (rather than through static configuration), the address always starts with FE80, because the automatic process sets bits 11-64 to binary 0s. From the Library of Alexey Evseenko 96 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Figure 3-10 shows the format of the link-local address format under the assumption that the host or router is deriving its own link-local address, therefore using 54 binary 0s after the FE80::/10 prefix. Key Topic 10 Bits FE80/10 1111111010 54 Bits All 0s 64 Bits Interface ID Figure 3-10 Link-local Address Format IPv6 Unicast Address Summary You might come across a few other types of IPv6 addresses in other reading. For example, earlier IPv6 RFCs defined the site local address type, which was meant to be used like IPv4 private addresses. However, this address type has been deprecated (RFC 3879). Also, IPv6 migration and coexistence tools use some conventions for IPv6 unicast addresses such that IPv4 addresses are embedded in the IPv6 address. Additionally, it is helpful to know about other special unicast addresses. An address of all hex 0s, written ::/128, represents an unknown address. This can be used as a source IPv6 address in packets when a host has no suitable IPv6 address to use. The address ::1/128, representing an address of all hex 0s except a final hex digit 1, is a loopback address. Packets sent to this address will be looped back up the TCP/IP stack, allowing easier software testing. (This is the equivalent of IPv4’s 127.0.0.1 loopback address.) Table 3-8 summarizes the IPv6 unicast address types for easier study. Table 3-8 Common IPv6 Unicast Address Types Key Topic Type of Address Purpose Prefix Easily Seen Hex Prefix(es) Global unicast Unicast packets sent through the 2000::/3 public Internet 2 or 3 Unique local Unicast packets inside one organization FD00::/8 FD Link-local Packets sent in the local subnet FE80::/10 FE8* Site local Deprecated; originally meant to be used like private IPv4 addresses FECO::/10 FEC, FED, FEE, FEF Unspecified An address used when a host ::/128 N/A has no usable IPv6 address Loopback Used for software testing, like ::1/128 N/A IPv4’s 127.0.0.1 *IPv6 RFCs define the FE80::/10 prefix, which technically means that the first three hex digits could be FE8, FE9, FEA, or FEB. However, bit positions 11-64 of link-local addresses should be 0, so in practice, link-local addresses should always begin with FE80. From the Library of Alexey Evseenko Chapter 3: IPv6 Review and RIPng 97 Multicast and Other Special IPv6 Addresses IPv6 supports multicasts on behalf of applications and multicasts to support the inner workings of IPv6. To aid this process, IPv6 defines ranges of IPv6 addresses and an associated scope, with the scope defining how far away from the source of the packet the network should forward a multicast. All IPv6 multicast addresses begin with FF::/8. In other words, they begin with FF as their first two digits. Multicasts with a link-local scope, like most of the multicast addresses referenced in this chapter, begin with FF02::/16; the 2 in the fourth hex digit identifies the scope as link-local. A fourth digit of hex 5 identifies the broadcast as having a site local scope, with those multicasts beginning with FF05::/16. For reference, Table 3-9 lists some of the more commonly seen IPv6 multicast addresses. Of particular interest are the addresses chosen for use by Routing Information Protocol (RIP), Open Shortest Path First (OSPF), and Enhanced IGRP (EIGRP), which somewhat mirror the multicast addresses that each protocol uses for IPv4. Note also that all but the last two entries have a link-local scope. Table 3-9 Common Multicast Addresses Purpose All IPv6 nodes on the link IPv6 Address FF02::1 All IPv6 routers on the link OSPF messages RIPv2 messages FF02::2 FF02::5, FF02::6 FF02::9 EIGRP messages FF02::A DHCP relay agents (routers that forward FF02::1:2 to the DHCP server) DHCP servers (site scope) All NTP servers (site scope) FF05::1:3 FF05::101 IPv4 Equivalent Subnet broadcast address — 224.0.0.5, 224.0.0.6 224.0.0.9 224.0.0.10 — — — Layer 2 Addressing Mapping and Duplicate Address Detection As with IPv4, any device running IPv6 needs to determine the data link layer address used by devices on the same link. IPv4 uses Address Resolution Protocol (ARP) on LANs and Inverse ARP (InARP) on Frame Relay. IPv6 defines a couple of new protocols that perform the same function. These new functions use ICMPv6 messages and avoid the use of broadcasts, in keeping with IPv6’s avoidance of broadcasts. This section gives a brief explanation of each protocol. From the Library of Alexey Evseenko 98 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Neighbor Discovery Protocol for Layer 2 Mapping When an IPv6 host or router needs to send a packet to another host or router on the same LAN, the host/router first looks in its neighbor database. This database contains a list of all neighboring IPv6 addresses (addresses on connected links) and their corresponding MAC addresses. If not found, the host or router uses the Neighbor Discovery Protocol (NDP) to dynamically discover the MAC address. Figure 3-11 shows a sample of such a process, using the same host and router seen earlier in Figure 3-8. Key Topic PC1 R1 Neighbor Solicitation Source = PC1 IPv6 Address Dest = Solicited Node Mcast of R1 Question = What’s Your Datalink Address? Neighbor Advertisement Source = R1’s IPv6 Address Dest = PC1’s IPv6 Address Answer = MAC 0013.197B.5004 Figure 3-11 Neighbor Discovery Protocol The process acts like the IPv4 ARP process, just with different details. In this case, PC1 sends a multicast message called a Neighbor Solicitation (NS) Internet Control Message Protocol (ICMP) message, asking R1 to reply with R1’s MAC address. R1 sends a Neighbor Advertisement (NA) ICMP message, which is unicast back to PC1, listing R1’s MAC address. Now PC1 can build a data-link frame with R1’s MAC listed as the destination address and send encapsulated packets to R1. The NS message uses a special multicast destination address called a solicited node multicast address. On any given link, the solicited node multicast address represents all hosts with the same last 24 bits of their IPv6 addresses. By sending packets to the solicited node multicast address, the packet reaches the correct host, but it might also reach a few other hosts—which is fine. (Note that packets sent to a solicited node multicast address have a link-local scope.) The solicited node multicast address begins with FF02::1:FF00:0/104. The final 24 bits (6 hex digits) of the address are formed by adding the last 24 bits of the IPv6 address to which the message is being sent. All IPv6 hosts listen for frames sent to their own solicited node multicast address, so that when a host or router receives such a multicast, the From the Library of Alexey Evseenko Chapter 3: IPv6 Review and RIPng 99 host realizes that it should reply. For example, in this case, based on R1’s IPv6 address previously seen in Figure 3-7 ■ R1’s IPv6 address: 2340:1111:AAAA:1:213:19FF:FE7B:5004 ■ R1’s solicited node address: FF02::1:FF7B:5004 Note The corresponding Ethernet multicast MAC address would be 0100.5E7B.5004. Duplicate Address Detection (DAD) When an IPv6 interface first learns an IPv6 address, or when the interface begins working after being down for any reason, the interface performs Duplicate Address Detection (DAD). The purpose of this check is to prevent hosts from creating problems by trying to use the same IPv6 address already used by some other host on the link. To perform such a function, the interface uses the same NS message shown in Figure 3-11 but with small changes. To check its own IPv6 address, a host sends the NS message to the solicited node multicast address based on its own IPv6 address. If some host sends a reply, listing the same IPv6 address as the source address, the original host has found that a duplicate address exists. Inverse Neighbor Discovery The ND protocol discussed in this section starts with a known neighbor’s IPv6 address and seeks to discover the link-layer address used by that IPv6 address. On Frame Relay networks, and with some other WAN data-link protocols, the order of discovery is reversed. A router begins with knowledge of the neighbor’s data link layer address and instead needs to dynamically learn the IPv6 address used by that neighbor. IPv4 solves this discovery problem on LANs using ARP and the reverse problem over Frame Relay using Inverse ARP (InARP). IPv6 solves the problem on LANs using ND, and now for Frame Relay, IPv6 solves this problem using Inverse Neighbor Discovery (IND). IND, also part of the ICMPv6 protocol suite, defines an Inverse NS (INS) and Inverse NA (INA) message. The INS message lists the known neighbor link-layer address (Data-Link Connection Identifier [DLCI] for Frame Relay), and the INS asks for that neighboring device’s IPv6 addresses. The details inside the INS message include the following: ■ Source IPv6: IPv6 unicast of sender ■ Destination IPv6: FF02::1 (all IPv6 hosts multicast) ■ Link-layer addresses ■ Request: Please reply with your IPv6 address(es) From the Library of Alexey Evseenko 100 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide The IND reply lists all the IPv6 addresses. As with IPv4, the show frame-relay map command lists the mapping learned from this process. Configuring IPv6 Addresses on Cisco Routers Most IPv6 implementation plans make use of both static IPv6 address configuration and dynamic configuration options. As is the case with IPv4, the plan assigns infrastructure devices with static addresses, with client hosts using one of the two dynamic methods for address assignment. IPv6 addressing includes many more options than IPv4, and as a result, many more configuration options exist. A router interface can be configured with a static global unicast IPv6 address, either with or without using the EUI-64 option. Although less likely, a router could be configured to dynamically learn its IPv6 address with either stateful DHCP or stateless autoconfig. The router interface could be configured to either not use a global unicast address, instead relying solely on its link-local address, or to borrow another interface’s address using the IPv6 unnumbered feature. This section summarizes the address configuration commands and shows several examples of configuration and verification commands for IPv6. To that end, Table 3-10 summarizes the IPv6 configuration commands and their meanings. Table 3-10 Router IOS IPv6 Configuration Command Reference Command ipv6 unicast-routing ipv6 cef Description A global configuration mode command that enables the routing of unicast IPv6 traffic. A global configuration mode command that enables Cisco Express Forwarding (CEF) for IPv6. ipv6 flowset A global configuration mode command that configures flow-label marking in 1280-byte or larger packets sent from the router. ipv6 address address/length Static configuration of the entire IPv6 unicast address. ipv6 address prefix/length eui64 ipv6 address autoconfig ipv6 address dhcp Static configuration of the first 64 address bits; the router derives the last 64 bits with EUI-64. Router uses stateless autoconfig to find an address. Router uses stateful DHCP to find an address. ipv6 unnumbered interface-type number Uses the same IPv6 unicast address as a referenced interface. ipv6 enable Enables IPv6 on the interface, but results in only a link-local address. From the Library of Alexey Evseenko Chapter 3: IPv6 Review and RIPng 101 Command ipv6 address address link-local ipv6 address address/length anycast Description Overrides the automatically created link-local address. The configured value must conform to the FE80::/10 prefix. Designates that the unicast address is an anycast address. Note All the interface subcommands in Table 3-10 enable IPv6 on an interface, which means that a router derives an IPv6 link-local address for the interface. The description shows what the command does in addition to enabling IPv6. Configuring Static IPv6 Addresses on Routers The configuration examples in this section use the internetwork shown in Figure 3-12. The figure shows a diagram that you might see in an implementation plan, with the five IPv6 subnet numbers shown over the five links. The interface ID of each interface is then abbreviated, or shown as EUI-64, as a reminder of whether to configure the entire 128-bit address or to rely on the EUI-64 feature. 2000:0:0:0::/64 2000:0:0:1::/64 2000:0:0:2::/64 2000:0:0:3::/64 ::1 ::1 f0/0 R1 s0/0/0 eui-64 s0/0/1 ::2 R2 f0/1 f0/0 eui-64 ::3 eui-64 f0/0 R3 f0/1 2000:0:0:4::/64 Figure 3-12 Sample IPv6 Address Planning Diagram Example 3-1 shows the configuration process on Router R2, which uses EUI-64 on two interfaces and a complete IPv6 address on another. Also, note that the configuration includes the ipv6 unicast-routing global configuration command, which enables the router to route IPv6 traffic. (The addresses can be configured without also configuring ipv6 unicast-routing, but without this command, the router acts more like an IPv6 host, and it will not forward IPv6 packets.) Example 3-1 R2’s IPv6 Configuration R2# show running-config ! lines omitted for brevity interface FastEthernet0/0 ipv6 address 2000:0:0:4::/64 eui-64 From the Library of Alexey Evseenko 102 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide ! interface FastEthernet0/1 ipv6 address 2000:0:0:2::2/64 ! interface Serial0/0/1 ipv6 address 2000:0:0:1::/64 eui-64 ! ! R2# show ipv6 interface brief FastEthernet0/0 [up/up] FE80::213:19FF:FE7B:5004 2000::4:213:19FF:FE7B:5004 FastEthernet0/1 [up/up] FE80::213:19FF:FE7B:5005 2000:0:0:2::2 Serial0/0/0 [administratively down/down] unassigned Serial0/0/1 [up/up] FE80::213:19FF:FE7B:5004 2000::1:213:19FF:FE7B:5004 Serial0/1/0 [administratively down/down] unassigned Serial0/1/1 [administratively down/down] unassigned R2# show interfaces fa0/0 FastEthernet0/0 is up, line protocol is up Hardware is Gt96k FE, address is 0013.197b.5004 (bia 0013.197b.5004) MTU 1500 bytes, BW 100000 Kbit/sec, DLY 100 usec, reliability 255/255, txload 1/255, rxload 1/255 ! lines omitted for brevity The ipv6 address commands both enable IPv6 on the associated interfaces and define either the prefix (with the EUI-64 option) or the entire address. The show commands listed after the configuration confirm the IPv6 addresses. Of particular note: ■ All three interfaces now have link-local addresses that begin with FE80. ■ Fa0/1 has the address exactly as configured. ■ S0/0/1 and Fa0/0 have the configured prefixes (2000:0:0:1 and 2000:0:0:4, respectively), but with EUI-64-derived interface IDs. ■ S0/0/1 uses Fa0/0’s MAC address (as shown in the show interfaces fa0/0 command) when forming its EUI-64. From the Library of Alexey Evseenko Chapter 3: IPv6 Review and RIPng 103 On this last point, whenever Cisco IOS needs a MAC address for an interface, and that interface does not have a built-in MAC address, the router uses the MAC address of the lowest-numbered LAN interface on the router—in this case, Fa0/0. The following list shows the derivation of the last 64 bits (16 hexadecimal digits) of R2’s IPv6 interface IDs for its global unicast IPv6 addresses on Fa0/0 and S0/0/1: Step 1. Use Fa0/0’s MAC address: 0013.197B.5004. Step 2. Split and insert FFFE: 0013:19FF:FE7B:5004. Step 3. Invert bit 7: Hex 00 = 00000000 binary, flip for 00000010, and convert back to hex 02, resulting in 0213:19FF:FE7B:5004. Multicast Groups Joined by IPv6 Router Interfaces Next, consider the deeper information held in the show ipv6 interface fa0/0 command output on Router R2, as shown in Example 3-2. Not only does it list the same link-local and global unicast addresses, but it also lists other special addresses as well. Example 3-2 All IPv6 Addresses on an Interface R2# show ipv6 interface fa0/0 FastEthernet0/0 is up, line protocol is up IPv6 is enabled, link-local address is FE80::213:19FF:FE7B:5004 No Virtual link-local address(es): Global unicast address(es): 2000::4:213:19FF:FE7B:5004, subnet is 2000:0:0:4::/64 [EUI] Joined group address(es): FF02::1 FF02::2 FF02::1:FF7B:5004 MTU is 1500 bytes ICMP error messages limited to one every 100 milliseconds ICMP redirects are enabled ICMP unreachables are sent ND DAD is enabled, number of DAD attempts: 1 ND reachable time is 30000 milliseconds (using 22807) ND advertised reachable time is 0 (unspecified) ND advertised retransmit interval is 0 (unspecified) ND router advertisements are sent every 200 seconds ND router advertisements live for 1800 seconds ND advertised default router preference is Medium Hosts use stateless autoconfig for addresses. The three joined multicast groups should be somewhat familiar after reading this chapter. The first multicast address, FF02::1, represents all IPv6 devices, so router interfaces must listen for packets sent to this address. FF02::2 represents all IPv6 routers, so again, R2 must listen for packets sent to this address. Finally, the FF02::1:FF beginning value is the From the Library of Alexey Evseenko 104 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide range for an address’s solicited node multicast address, used by several functions, including Duplicate Address Detection (DAD) and Neighbor Discovery (ND). Connected Routes and Neighbors The third example shows some new concepts with the IP routing table. Example 3-3 shows R2’s current IPv6 routing table that results from the configuration shown in Example 3-1. Note that no IPv6 routing protocols have been configured, and no static routes have been configured. Example 3-3 Connected and Local IPv6 Routes R2# show ipv6 route IPv6 Routing Table - Default - 7 entries Codes: C - Connected, L - Local, S - Static, U - Per-user Static route B - BGP, M - MIPv6, R - RIP, I1 - ISIS L1 I2 - ISIS L2, IA - ISIS interarea, IS - ISIS summary, D - EIGRP EX - EIGRP external O - OSPF Intra, OI - OSPF Inter, OE1 - OSPF ext 1, OE2 - OSPF ext 2 ON1 - OSPF NSSA ext 1, ON2 - OSPF NSSA ext 2 C 2000:0:0:1::/64 [0/0] via Serial0/0/1, directly connected L 2000::1:213:19FF:FE7B:5004/128 [0/0] via Serial0/0/1, receive C 2000:0:0:2::/64 [0/0] via FastEthernet0/1, directly connected L 2000:0:0:2::2/128 [0/0] via FastEthernet0/1, receive C 2000:0:0:4::/64 [0/0] via FastEthernet0/0, directly connected L 2000::4:213:19FF:FE7B:5004/128 [0/0] via FastEthernet0/0, receive L FF00::/8 [0/0] via Null0, receive First, the IPv6 routing table lists the expected connected and local routes. The connected routes occur for any unicast IPv6 addresses on the interface that happen to have more than link-local scope. So, R2 has routes for subnets 2000:0:0:1::/64, 2000:0:0:2::/64, and 2000:0:0:4::/64, but no connected subnets related to R2’s link-local addresses. The local routes, all /128 routes, are essentially host routes for the router’s unicast IPv6 addresses. These local routes allow the router to more efficiently process packets directed to the router itself, as compared to packets directed toward connected subnets. The IPv6 Neighbor Table The IPv6 neighbor table replaces the IPv4 ARP table, listing the MAC address of other devices that share the same link. Example 3-4 shows a debug that lists messages during From the Library of Alexey Evseenko Chapter 3: IPv6 Review and RIPng 105 the NDP process, a ping to R3’s Fa0/0 IPv6 address, and the resulting neighbor table entries on R2. Example 3-4 Creating Entries and Displaying the Contents of R2’s IPv6 Neighbor Table R2# debug ipv6 nd ICMP Neighbor Discovery events debugging is on R2# ping 2000:0:0:2::3 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 2000:0:0:2::3, timeout is 2 seconds: !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 0/0/4 ms R2# *Sep 2 17:07:25.807: ICMPv6-ND: DELETE -> INCMP: 2000:0:0:2::3 *Sep 2 17:07:25.807: ICMPv6-ND: Sending NS for 2000:0:0:2::3 on FastEthernet0/1 *Sep 2 17:07:25.807: ICMPv6-ND: Resolving next hop 2000:0:0:2::3 on interface FastEthernet0/1 *Sep 2 17:07:25.811: ICMPv6-ND: Received NA for 2000:0:0:2::3 on FastEthernet0/1 from 2000:0:0:2::3 *Sep 2 17:07:25.811: ICMPv6-ND: Neighbor 2000:0:0:2::3 on FastEthernet0/1 : LLA 0013.197b.6588 R2# undebug all All possible debugging has been turned off R2# show ipv6 neighbors IPv6 Address 2000:0:0:2::3 FE80::213:19FF:FE7B:6588 Age Link-layer Addr State Interface 0 0013.197b.6588 REACH Fa0/1 0 0013.197b.6588 REACH Fa0/1 The example shows the entire NDP process by which R2 discovers R3’s Fa0/0 MAC address. The example begins with a debug ipv6 nd command, which tells R2 to issue messages related to NDP messages. The ping 2000:0:0:2::3 command that follows tells Cisco IOS to use IPv6 to ping R3’s F0/0 address; however, R2 does not know the corresponding MAC address. The debug output that follows shows R2 sending an NS, with R3 replying with an NA message, listing R3’s MAC address. The example ends with the output of the show ipv6 neighbor command, which lists the neighbor table entries for both of R3’s IPv6 addresses. Stateless Autoconfiguration The final example in this section demonstrates stateless autoconfiguration using two routers, R2 and R3. In Example 3-5, R2’s Fa0/1 configuration will be changed, using the ipv6 address autoconfig subcommand on that interface. This tells R2 to use the stateless autoconfig process, with R2 learning its prefix from Router R3. R2 then builds the rest of its IPv6 address using EUI-64. From the Library of Alexey Evseenko 106 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Example 3-5 Using Stateless Autoconfig on Router R2 R2# conf t Enter configuration commands, one per line. End with CNTL/Z. R2(config)# interface fa0/1 R2(config-if)# no ipv6 address R2(config-if)# ipv6 address autoconfig R2(config-if)# ^Z R2# show ipv6 interface brief FastEthernet0/0 [up/up] FE80::213:19FF:FE7B:5004 2000::4:213:19FF:FE7B:5004 FastEthernet0/1 [up/up] FE80::213:19FF:FE7B:5005 2000::2:213:19FF:FE7B:5005 Serial0/0/0 [administratively down/down] unassigned Serial0/0/1 [up/up] FE80::213:19FF:FE7B:5004 2000::1:213:19FF:FE7B:5004 Serial0/1/0 [administratively down/down] unassigned Serial0/1/1 [administratively down/down] unassigned R2# show ipv6 router Router FE80::213:19FF:FE7B:6588 on FastEthernet0/1, last update 0 min Hops 64, Lifetime 1800 sec, AddrFlag=0, OtherFlag=0, MTU=1500 HomeAgentFlag=0, Preference=Medium Reachable time 0 (unspecified), Retransmit time 0 (unspecified) Prefix 2000:0:0:2::/64 onlink autoconfig Valid lifetime 2592000, preferred lifetime 604800 Starting with the configuration, the no ipv6 address command actually removes all configured IPv6 addresses from the interface and also disables IPv6 on interface Fa0/1. Then, the ipv6 address autoconfig command again enables IPv6 on Fa0/1 and tells R2 to use stateless autoconfig. The show commands confirm that R2 does indeed learn its IPv6 address: 2000:0:0:2:0213:19FF:FE7B:5005. The show ipv6 router command, which lists the cached contents of any received RA messages, lists the information received from R3’s RA message, including R3’s link-local address (used to identify the routers) and R3’s advertised prefix (2000:0:0:2::/64). From the Library of Alexey Evseenko Chapter 3: IPv6 Review and RIPng 107 RIP Next Generation (RIPng) To support IPv6, all the IPv4 routing protocols had to go through varying degrees of changes, with the most obvious being that each had to be changed to support longer addresses and prefixes. The actual messages used to send and receive routing information have changed in some cases, using IPv6 headers instead of IPv4 headers, and using IPv6 addresses in those headers. In particular, like their IPv4 versions, each IPv6 IGP uses IPv6 multicast addresses. For example, RIPng sends routing updates to the IPv6 destination address FF02::9 instead of the old RIPv2 IPv4 224.0.0.9 address. Also, the routing protocols typically advertise their link local IP address as the next hop in a route. Even with these changes, each IPv6 IGP has more similarities than differences compared to its respective IPv4 cousin. For example, RIPng, based on RIPv2, is still a distance vector protocol, with hop count as the metric and 15 hops as the longest valid route (16 is infinity). OSPF version 3 (OSPFv3), created specifically to support IPv6, uses link-state logic like OSPFv2, uses cost as the metric, and retains the link-state advertisement (LSA) types—but there are some changes to how the LSAs work. However, most of the core OSPF operational concepts remain the same. This section examines RIPng. Upcoming chapters examine OSPFv3 and EIGRP for IPv6. Table 3-11 lists the IPv6 routing protocols and their new RFCs (as appropriate). Table 3-11 Updates to Routing Protocols for IPv6 Routing Protocol RIPng OSPFv3 EIGRP for IPv6 Full Name RIP next generation OSPF version 3 EIGRP for IPv6 MP-BGP4 Multiprotocol BGP-4 RFC 2080 5340 Proprietary 4760 Routing Information Protocol (RIP) began life as one of the earliest efforts in the field of dynamic IP routing protocols. It eventually became the first dynamic routing protocol for the emerging IP protocol back in the 1970s. Later, in the mid-1990s, the RIP version 2 (RIPv2) specifications enhanced RIP, with the original version becoming known as RIP version 1, or simply RIPv1. Also in the mid-1990s, the process of defining IPv6 was drawing toward completion, at least for the original IPv6 standards. To support IPv6, the IETF committees defined a new version of RIP to support IPv6. But rather than number this updated flavor of RIP as RIP version 3, the creators chose to number this new protocol as version 1, treating it like a new protocol. However, no one bothered to put “version 1” in the name, simply calling it RIP next generation (RIPng), or even simply RIP. To date, no new version of RIPng has been defined, making the original RIPng still the most recent version of the protocol. From the Library of Alexey Evseenko 108 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Note For you Star Trek TV show fans, yes, the name came in part from Star Trek: The Next Generation. RIPng: Theory and Comparisons to RIPv2 The RIPng RFC states that the protocol uses many of the same concepts and conventions as the original RIPv1 specification, also drawing on some RIPv2 concepts. Table 3-12 lists a variety of facts about RIPv2 and RIPng. Table 3-12 Comparing RIPv2 to RIPng Key Topic Feature Advertises routes for... RIP messages use these Layer 3/4 protocols UDP port Use distance vector Default administrative distance Supports VLSM Can perform automatic summarization Uses Split Horizon Uses Poison Reverse 30-second periodic full updates Uses triggered updates Uses Hop Count metric Metric meaning infinity Supports route tags Multicast Update destination Authentication RIPv2 IPv4 IPv4, UDP 520 Yes 120 Yes Yes Yes Yes Yes Yes Yes 16 Yes 224.0.0.9 RIP-specific RIPng IPv6 IPv6, UDP 521 Yes 120 Yes — Yes Yes Yes Yes Yes 16 Yes FF02::9 Uses IPv6 AH/ESP The overall operation of RIPng closely matches RIPv2. In both, routers send periodic full updates with all routes, except for routes omitted because of Split Horizon rules. No neighbor relationships occur. The continuing periodic Updates, on a slightly variable 30-second period, also serve the purpose of confirming that the neighboring router still works. The metrics work exactly the same. When a router ceases to see a route in received updates, ceases to receive updates, or receives a poisoned (metric 16) route, it reacts to converge, but relatively slowly compared to EIGRP and OSPF. From the Library of Alexey Evseenko Chapter 3: IPv6 Review and RIPng 109 Some differences relate specifically to IPv6. First, the messages themselves list IPv6 prefixes/lengths, rather than subnet/mask. In RIPv1 and RIPv2, RIP-encapsulated RIP Update messages inside an IPv4 and UDP header; with IPv6, the encapsulation uses IPv6 packets, again with a UDP header. Some small differences in the Update message format exist as well, with the most obvious difference being that the Updates list IPv6 prefixes and prefix lengths. The last difference of note is that because IPv6 supports authentication using the IPsec Authentication Header (AH), RIPng does not natively support authentication, instead relying on IPsec. Configuring RIPng RIPng uses a new command style for the basic configuration, but most of the optional features and verification commands look much like the commands used for RIP for IPv4. This section first takes a look at the basic RIPng configuration, accepting as many defaults as possible. The big difference between RIPv2 and RIPng configuration is that RIPng discards the age-old RIP network command in deference to the ipv6 rip name enable interface subcommand, which enables RIPng on an interface. Another difference relates to the routing of IPv4 and IPv6: Cisco IOS routes IPv4 by default (because of a default global configuration command of ip routing), but Cisco IOS does not route IPv6 by default (a default of no ipv6 unicast-routing). Finally, RIPng allows multiple RIPng processes on a single router, so Cisco IOS requires that each RIPng process is given a text name that identifies each RIPng process for that one router—another difference compared to RIPv2. The following list shows the basic configuration steps for RIPng, including steps to enable IPv6 routing and enabling IPv6 on the interfaces: Key Topic Step 1. Step 2. Enable IPv6 routing with the ipv6 unicast-routing global command. Enable RIPng using the ipv6 router rip name global configuration command. The name must be unique on a router but does not need to match on neighboring routers. Step 3. Enable IPv6 on the interface, typically with one of these two methods: ■ Configure an IPv6 unicast address on each interface using the ipv6 address address/prefix-length [eui-64] interface command. Step 4. ■ Configure the ipv6 enable command, which enables IPv6 and causes the router to derive its link-local address. Enable RIP on the interface with the ipv6 rip name enable interface subcommand (where the name matches the ipv6 router rip name global configuration command). The list includes just a few straightforward configuration commands, but a few subtle interactions also exist. The list shows steps related directly to RIPng (Steps 2 and 4), plus From the Library of Alexey Evseenko 110 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide other steps related to making IPv6 itself work (Steps 1 and 3). The list also pairs two sets of dependent steps with each other, as follows: ■ Step 2 relies on Step 1, because Cisco IOS rejects the command at Step 2 (ipv6 router rip name) if the command at Step 1 (ipv6 unicast-routing) has been omitted. ■ Step 4 relies on Step 3, because Cisco IOS rejects the command at Step 4 if IPv6 has not yet been enabled on the interface. Finally, note that although the ipv6 rip process-name enable interface subcommand (Step 4) refers to the process name configured at Step 2 (the ipv6 router rip processname command), Cisco IOS creates the RIP process in reaction to the ipv6 rip processname enable interface subcommand if that RIPng process name does not yet exist. In other words, if you followed the previous steps in order, but forgot to do Step 2, the command at Step 4 causes Cisco IOS to automatically create the command at Step 2. As with RIPv1 and RIPv2, for any interface on which RIPng has been enabled, the RIP process does three main actions: 1. It starts sending RIP updates on that interface. 2. It also starts processing any RIP updates received on that interface. 3. Finally, it advertises the connected routes on that interface. In particular, because IPv6 allows the configuration of multiple IPv6 unicast addresses on an interface, RIP advertises most IPv6 unicast prefixes associated with the interface. The notable exceptions are that RIP does not advertise any link-local addresses, nor does RIP advertise the local host routes—routes with a /128 prefix length—created for each interface IPv6 address. In short, RIP advertises all routable subnets associated with the interface. Figure 3-13 shows a sample internetwork with IPv6 global unicast IPv6 subnets displayed. Subnet 2034::/64 Fa0/0 S0/0/0.1 R3 S0/0/0.2 Fa0/0 S0/0/0.1 R4 S0/0/0.2 Fa0/0 S0/0.1 R5 S0/0.2 Subnet 2005::/64 Subnet 2013::/64 Subnet 2014::/64 R1 Fa0/0.1 Fa0/0 Fa0/1 SW1 Fa0/1 Fa0/2 Gi0/1 Subnet 2015::/64 Subnet 2023::/64 Subnet 2024::/64 Subnet 2025::/64 Fa0/0.1 Fa0/0 R2 Fa0/1 Fa0/1 Gi0/1 Fa0/2 SW2 Data SW3 Center Subnet 2099::/64 Figure 3-13 Sample Internetwork for IPv6 Routing Protocol Configuration From the Library of Alexey Evseenko Chapter 3: IPv6 Review and RIPng 111 The sample internetwork uses addressing values that are both memorable and make for shorter IPv6 addresses when abbreviated. All the subnets use /64 prefix length, with quartets 2, 3, and 4 composed of all 0 values. The interface ID portion of each address uses all hex 0s in the first three quartets (quartets 5, 6, and 7 in the overall address), with the final digit in the final quartet used to identify each router. This last digit matches the name of each router in most cases. For example, all of R1’s IPv6 addresses’ last four octets are 0000:0000:0000:0001. R1’s S0/0/0.3 subinterface, which connects with a permanent virtual circuit (PVC) to Router R3, uses a prefix of 2003:0000:0000:0000::/64, making the entire IPv6 address on this interface, when abbreviated, 2003::1/64—a convenient value for sifting through all the output in the upcoming examples. Example 3-6 shows the RIPng configuration on Router R1 in this design. The RIP process name is fred. Example 3-6 Configuring IPv6 Routing and Routing Protocols on R1 R1# show running-config ! The output is edited to remove lines not pertinent to this example. ! Next, step 1's task: enable IPv6 routing ipv6 unicast-routing ! ! Next, on 5 interfaces, steps 3 and 4: configuring an IPv6 address, ! and enable RIPng, process "fred". interface FastEthernet0/0.1 ipv6 address 2012::1/64 ipv6 rip fred enable ! interface FastEthernet0/0.2 ipv6 address 2017::1/64 ipv6 rip fred enable ! interface FastEthernet0/1.18 ipv6 address 2018::1/64 ipv6 rip fred enable ! interface Serial0/0/0.3 ipv6 address 2013::1/64 ipv6 rip fred enable ! interface Serial0/0/0.4 ipv6 address 2014::1/64 ipv6 rip fred enable ! interface Serial0/0/0.5 ipv6 address 2015::1/64 ipv6 rip fred enable From the Library of Alexey Evseenko 112 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide ! ! Next, step 2's task, creating the RIPng process named "fred" ipv6 router rip fred Verifying RIPng The show commands related to RIPng have the same general kinds of information as seen with RIPv2. However, some of the commands used to get to the same piece of information differ, and of course, some obvious differences exist because of the different IPv6 address structure. Table 3-13 lists a cross-reference comparing all commands related to RIP that begin with either show ip or show ipv6. It also lists the similar debug commands used to display RIP routing information. Table 3-13 Comparing Verification Commands: show ip and show ipv6 Function All routes IPv4 ... route IPv6 ... route All RIP-learned routes Details on the routes for a specific prefix Interfaces on which RIP is enabled ... route rip ... route subnet mask ... protocols ... route rip ... route prefix/length ... protocols RIP timers List of routing information sources Debug that displays sent and received updates ... protocols ... protocols debug ip rip ... rip ... rip next-hops debug ipv6 rip The most notable differences occur with the information seen with IPv4 in the show ip protocols command. The show ip protocols command displays a wide variety of information for IPv4 RIP, whereas the IPv6 commands spread the information over a couple of different commands, as listed in Table 3-13. Example 3-7 shows a sampling of the commands, taken from Router R3 in Figure 3-13. The explanatory comments are listed within the example in this case. Note that Router R3 used a RIPng process name of barney. Example 3-7 IPv6 RIPng show Commands ! On R3, process name "barney" has two current routes to reach the ! datacenter prefix 2099::/64. R3# show ipv6 route 2099::/64 Routing entry for 2099::/64 Known via "rip barney", distance 120, metric 3 Route count is 2/2, share count 0 Routing paths: FE80::22FF:FE22:2222, Serial0/0/0.2 From the Library of Alexey Evseenko Last updated 00:27:12 ago FE80::11FF:FE11:1111, Serial0/0/0.1 Last updated 00:27:10 ago Chapter 3: IPv6 Review and RIPng 113 ! Note that the next command lists only RIP-learned routes. It lists ! two next-hops for 2099::64. Note the next-hop information lists ! link-local addresses. R3# show ipv6 route rip IPv6 Routing Table - Default - 19 entries Codes: C - Connected, L - Local, S - Static, U - Per-user Static route B - BGP, M - MIPv6, R - RIP, I1 - ISIS L1 I2 - ISIS L2, IA - ISIS interarea, IS - ISIS summary, D - EIGRP EX - EIGRP external O - OSPF Intra, OI - OSPF Inter, OE1 - OSPF ext 1, OE2 - OSPF ext 2 ON1 - OSPF NSSA ext 1, ON2 - OSPF NSSA ext 2 R 2005::/64 [120/3] via FE80::11FF:FE11:1111, Serial0/0/0.1 via FE80::22FF:FE22:2222, Serial0/0/0.2 R 2012::/64 [120/2] via FE80::11FF:FE11:1111, Serial0/0/0.1 via FE80::22FF:FE22:2222, Serial0/0/0.2 ! lines omitted for brevity... R 2099::/64 [120/3] via FE80::22FF:FE22:2222, Serial0/0/0.2 via FE80::11FF:FE11:1111, Serial0/0/0.1 ! Unlike show ip protocols, show ipv6 protocols displays little info. R3# show ipv6 protocols IPv6 Routing Protocol is "connected" IPv6 Routing Protocol is "rip barney" Interfaces: Serial0/0/0.2 Serial0/0/0.1 FastEthernet0/0 Redistribution: None ! This command lists the timers displayed for RIPv2 with show ip protocols. R3# show ipv6 rip RIP process "barney", port 521, multicast-group FF02::9, pid 258 Administrative distance is 120. Maximum paths is 16 Updates every 30 seconds, expire after 180 Holddown lasts 0 seconds, garbage collect after 120 Split horizon is on; poison reverse is off Default routes are not generated From the Library of Alexey Evseenko 114 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Periodic updates 57, trigger updates 10 Interfaces: Serial0/0/0.2 Serial0/0/0.1 FastEthernet0/0 Redistribution: None ! This command lists the equivalent of the information in the ! show ip protocols commands' "Routing Information Sources" heading. ! Note the link-local addresses are listed. R3# show ipv6 rip next-hops RIP process "barney", Next Hops FE80::11FF:FE11:1111/Serial0/0/0.1 [9 paths] FE80::44FF:FE44:4444/FastEthernet0/0 [3 paths] FE80::22FF:FE22:2222/Serial0/0/0.2 [9 paths] Beyond the information emphasized in the comments inside the example, the next-hop IPv6 addresses in the example need to be scrutinized. RIPng uses the link-local IPv6 address as the next-hop IP address. (Reminder: link-local addresses begin with FE80.) To discover which routers use which link-local addresses, and to make it easier to work with link-local addresses, you have a couple of options. First, you can set the MAC address of each LAN interface to something noticeable. For Example 3-7, the routers each used a recognizable MAC: R1 used 0200.1111.1111, R2 used 0200.2222.2222, and so on. Alternatively, you can just configure the link-local address with the ipv6 address command, using the link-local keyword at the end, and make each link-local address be more recognizable. Regardless, to find the router whose link-local address is listed in the IPv6 routing table, the show cdp entry name command can be useful, because it lists both the IPv4 and IPv6 addresses, including the neighbor’s link-local address. From the Library of Alexey Evseenko Exam Preparation Tasks Chapter 3: IPv6 Review and RIPng 115 Planning Practice The CCNP ROUTE exam expects test takers to review design documents, create implementation plans, and create verification plans. This section provides some exercises that can help you to take a step back from the minute details of the topics in this chapter so that you can think about the same technical topics from the planning perspective. For each planning practice table, simply complete the table. Note that any numbers in parentheses represent the number of options listed for each item in the solutions in Appendix F, “Completed Planning Practice Tables.” Design Review Table Table 3-14 lists several design goals related to this chapter. If these design goals were listed in a design document, and you had to take that document and develop an implementation plan, what implementation options come to mind? You should write a general description; specific configuration commands are not required. Table 3-14 Design Review Design Goal Possible Implementation Choices Covered in This Chapter An IPv6 design suggests that all client hosts should dynamically learn their IPv6 addresses. Which tools can be used? (2) A plan shows the use of stateless autoconfiguration. What functions should we expect the IPv6 DHCP server to perform? Implementation Plan Peer Review Table Table 3-15 shows a list of questions that others might ask, or that you might think about, during a peer review of another network engineer’s implementation plan. Complete the table by answering the questions. From the Library of Alexey Evseenko 116 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Table 3-15 Notable Questions from This Chapter to Consider During an Implementation Plan Peer Review Question Answers An implementation plan states that router IPv6 addresses should be assigned as obvious values, using the lowest numbers in the range per each assigned prefix. What configuration methods could be used to configure these low address values? A plan calls for the use of stateless autoconfig for client hosts. What must be configured on the routers to support this process? A RIPng implementation plan lists two neighboring routers with unicast IPv6 addresses 2000::1/64 and 2001::2/64, respectively. Will this cause a neighborship issue? Create an Implementation Plan Table To practice skills useful when creating your own implementation plan, list in Table 3-16 all configuration commands related to the configuration of the following features. You might want to record your answers outside the book, and set a goal to complete this table (and others like it) from memory during your final reviews before taking the exam. Table 3-16 Implementation Plan Configuration Memory Drill Feature Configuration Commands/Notes Globally enable the routing of IPv6 unicast traffic. Globally enable Cisco Express Forwarding (CEF) for IPv6. Configure flow-label marking in 1280-byte or larger packets sent by the router. Configure the full global unicast address on an interface. Configure the unicast IPv6 prefix on an interface, and let the router add the interface ID. Configure an interface to find its unicast IPv6 address using stateless autoconfig. From the Library of Alexey Evseenko Chapter 3: IPv6 Review and RIPng 117 Feature Configure an interface to enable IPv6 and use another interface’s IPv6 address as needed. Enable IPv6 on an interface and do not configure a unicast IPv6 address. Configure the link-local address of an interface. Assuming that IPv6 routing and IPv6 addresses have already been configured, configure RIPng. Configuration Commands/Notes Choose Commands for a Verification Plan Table To practice skills useful when creating your own verification plan, list in Table 3-17 all commands that supply the requested information. You might want to record your answers outside the book, and set a goal to be able to complete this table (and others like it) from memory during your final reviews before taking the exam. Note Some of the entries in this table might not have been specifically mentioned in this chapter but are listed in this table for review and reference. Table 3-17 Verification Plan Memory Drill Information Needed All IPv6 routes Commands A single line per IPv6 address Detailed information about IPv6 on an interface, including multicast addresses The MAC address used by an interface The MAC addresses of neighboring IPv6 hosts The information learned from another router in an RA message All RIP-learned IPv6 routes All next-hop IPv6 addresses used by RIP routes The interfaces on which RIP is enabled From the Library of Alexey Evseenko 118 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Review All the Key Topics Review the most important topics from inside the chapter, noted with the Key Topic icon in the outer margin of the page. Table 3-18 lists a reference of these key topics and the page numbers on which each is found. Table 3-18 Key Topics for Chapter 3 Key Topic Key Topic Element Description Page Number Figure 3-1 Conceptual View of IPv6 Global Routes 78 List Rules for abbreviating IPv6 addresses 79 List Rules about how to write IPv6 prefixes 81 Figure 3-3 Example IPv6 Prefix Assignment in the Internet 83 List IPv6 subnetting process 85 Figure 3-5 Company1—Needs Four Subnets 85 List Three steps used by the stateless autoconfig feature 89 Figure 3-8 IPv6 Address Format with Interface ID and EUI-64 91 Table 3-7 Comparing Stateless and Stateful DHCPv6 Services 92 List IPv6 address types (unicast, multicast, and anycast) 93 Figure 3-10 Link Local Address Format 96 Table 3-8 Common IPv6 Unicast Address Types 96 Figure 3-11 Neighbor Discovery Protocol 98 Table 3-12 Comparing RIPv2 to RIPng 108 List Configuration steps for RIPng 109 Complete the Tables and Lists from Memory Print a copy of Appendix D, “Memory Tables,” (found on the CD) or at least the section for this chapter, and complete the tables and lists from memory. Appendix E, “Memory Tables Answer Key,” also on the CD, includes completed tables and lists to check your work. Define Key Terms Define the following key terms from this chapter, and check your answers in the glossary. global unicast address, link-local address, unique local address, stateful DHCP, stateless DHCP, stateless autoconfig, Neighbor Discovery Protocol (NDP), Neighbor Solicitation (NS), Neighbor Advertisement (NA), Router Solicitation (RS), Router Advertisement (RA), solicited node multicast address, Duplicate Address Detection (DAD), Inverse Neighbor Discovery, RIP next generation (RIPng) From the Library of Alexey Evseenko This page intentionally left blank From the Library of Alexey Evseenko This chapter covers the following topics that you need to master for the CCNP ROUTE exam: ■ EIGRP Fundamentals: This section reviews the EIGRP concepts, configuration, and verification commands covered in the CCNA curriculum. ■ EIGRP Neighborships: This section discusses a variety of features that impact when a router attempts to form EIGRP neighbor relationships (neighborships), what must be true for those neighborships to work, and what might prevent those neighborships. ■ Neighborships over WANs: This section examines the typical usage of EIGRP neighborships over various types of WAN technologies. From the Library of Alexey Evseenko CHAPTER 4 Fundamental EIGRP Concepts Enhanced Interior Gateway Routing Protocol (EIGRP) is configured with a few relatively simple commands. In fact, for most any size network, you could go to every router, enter the router eigrp 1 command, followed by one or more network net-id subcommands (one for each classful network to which the router is connected), and EIGRP would likely work, and work very well, with no other configuration. In spite of that apparent simplicity, here you sit beginning the first of four chapters of EIGRP coverage in this book. Many reasons exist for the amount of EIGRP material included here. First, EIGRP includes many optional configuration features that you need to both understand and master for the CCNP ROUTE exam. Many of these features require a solid understanding of EIGRP internals as well—a topic that can be conveniently ignored if you just do the minimal configuration, but something very important to planning, implementing, and optimizing a medium/large enterprise network. Another reason for the depth of EIGRP coverage in this book is a fundamental change in the philosophy of the CCNP exams, as compared with earlier CCNP exam versions. Cisco has increased the focus on planning for the implementation and verification of new network designs. The bar has been raised, and in a way that is consistent with typical engineering jobs. Not only do you need to understand all the EIGRP features, but you also need to be able to look at a set of design requirements, and from that decide which EIGRP configuration settings could be useful—and which are not useful. You must also be able to direct others as to what verification steps would tell them if the implementation worked or not, rather than just relying on typing a ? and looking around for that little piece of information you know exists somewhere. This chapter begins with the “EIGRP Fundamentals” section, which is a review of the core prerequisite facts about EIGRP. Following the review, the chapter examines EIGRP neighbor relationships, including a variety of configuration commands that impact neighbor relationships, and the verification commands that you can use to confirm how well EIGRP neighbors work. “Do I Know This Already?” Quiz The “Do I Know This Already?” quiz enables you to assess whether you should read the entire chapter. If you miss no more than one of these seven self-assessment questions, you might want to move ahead to the “Exam Preparation Tasks” section. Table 4-1 lists the major headings in this chapter and the “Do I Know This Already?” quiz questions covering the material in those headings so that you can assess your knowledge of these specific areas. The answers to the “Do I Know This Already?” quiz appear in Appendix A. From the Library of Alexey Evseenko 122 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Table 4-1 “Do I Know This Already?” Foundation Topics Section-to-Question Mapping Foundation Topics Section EIGRP Fundamentals EIGRP Neighborships Questions 1, 2 3–6 Neighborships over WANs 7 1. A router has been configured with the commands router eigrp 9 and network 172.16.1.0 0.0.0.255. No other EIGRP-related commands have been configured. The answers list the IP addresses that could be assigned to this router’s Fa0/0 interface. Which answers list an IP address/prefix length that would cause the router to enable EIGRP on Fa0/0? (Choose two answers.) a. 172.16.0.1/23 b. 172.16.1.1/26 c. 172.16.1.1/24 d. 172.16.0.255/23 e. None of the other answers are correct. 2. Router R1 has working interfaces S0/0, S0/1, and S0/2, with IP address/prefix combinations of 10.10.10.1/24, 10.10.11.2/24, and 10.10.12.3/22. R1’s configuration includes the commands router eigrp 9 and network 10.0.0.0. The show ip eigrp interfaces command lists S0/0 and S0/1 in the command output, but not S0/2. Which answer gives a possible reason for the omission? a. R1 has EIGRP neighbors reachable through S0/0 and S0/1, but not through S0/2, so it is not included. b. S0/2 might currently be in a state other than up/up. c. The network 10.0.0.0 command requires the use of mask 255.0.0.0 because of EIGRP being classful by default. d. S0/2 might be configured as a passive interface. 3. Routers R1 and R2 are EIGRP neighbors using their Fa0/0 interfaces, respectively. An engineer adds the ip hello-interval eigrp 9 6 command to R1’s Fa0/0 configuration. Which of the following is true regarding the results from this change? a. The show ip eigrp neighbors command on R1 lists the revised Hello timer. b. The show ip eigrp interfaces command on R1 lists the revised Hello timer. c. The R1-R2 neighborship fails because of a Hello timer mismatch. d. The show ip eigrp interfaces detail command on R1 lists the revised Hello timer. From the Library of Alexey Evseenko Chapter 4: Fundamental EIGRP Concepts 123 4. Router R1 has been configured with the commands router eigrp 9 and network 172.16.2.0 0.0.0.255, with no other current EIGRP configuration. R1’s (working) Fa0/0 interface has been configured with IP address 172.16.2.2/26. R1 has found three EIGRP neighbors reachable through interface Fa0/0, including the router with IP address 172.16.2.20. When the engineer attempts to add the neighbor 172.16.2.20 fa0/0 command in EIGRP configuration mode, which of the following occurs? a. Fa0/0 fails. b. The command is rejected. c. The existing three neighbors fail. d. The neighborship with 172.16.2.20 fails and then reestablishes. e. None of the other answers is correct. 5. Which of the following settings could prevent two potential EIGRP neighbors from becoming neighbors? (Choose two answers.) a. The interface used by one router to connect to the other router is passive in the EIGRP process. b. Duplicate EIGRP router IDs. c. Mismatched Hold Timers. d. IP addresses of 10.1.1.1/24 and 10.2.2.2/24, respectively. 6. An engineer has added the following configuration snippet to an implementation planning document. The configuration will be added to Router R1, whose Fa0/0 interface connects to a LAN to which Routers R2 and R3 also connect. R2 and R3 are already EIGRP neighbors with each other. Assuming that the snippet shows all commands on R1 related to EIGRP authentication, which answer lists an appropriate comment to be made during the implementation plan peer review? key chain fred key 3 key-string whehew interface fa0/0 ip authentication key-chain eigrp 9 fred a. The configuration is missing one authentication-related configuration command. b. The configuration is missing two authentication-related configuration commands. c. Authentication type 9 is not supported; type 5 should be used instead. d. The key numbers must begin with key 1, so change the key 3 command to key 1. From the Library of Alexey Evseenko 124 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide 7. A company has a Frame Relay WAN with one central-site router and 100 branch office routers. A partial mesh of PVCs exists: one PVC between the central site and each of the 100 branch routers. Which of the following could be true about the number of EIGRP neighborships? a. A partial mesh totaling 100: one between the central-site router and each of the 100 branches. b. A full mesh — (101 * 100) / 2 = 5050 — One neighborship between each pair of routers. c. 101 — One between each router (including the central site) and its nearby PE router. d. None of the answers is correct. From the Library of Alexey Evseenko Foundation Topics Chapter 4: Fundamental EIGRP Concepts 125 EIGRP Fundamentals All the CCNP exams consider CCNA materials as prerequisites. So this book also assumes that the reader is already familiar with CCNA topics. However, the CCNP exams do test on features that overlap with CCNA. Additionally, most people forget some details along the way. Therefore, this section reviews the CCNA-level topics as a brief refresher. To that end, this section begins with a review of EIGRP configuration using only the router eigrp and network commands. Following that, the next section details the key fields used to verify that EIGRP is working. Finally, the last part of this introduction summarizes the basic EIGRP internals behind this initial simple example. Configuration Review Cisco IOS uses the router eigrp asn command (where asn is an autonomous system number [ASN]), plus one or more network net-id wildcard-mask subcommands, to enable EIGRP on the router and on router interfaces. The rules for these commands are as follows: Key Topic 1. Neighboring routers’ router eigrp asn commands must be configured with the same ASN parameter to become neighbors. 2. Cisco IOS enables only EIGRP on interfaces matched by an EIGRP network command. When enabled, the router does the following: a. Attempts to discover EIGRP neighbors on that interface by sending multicast EIGRP Hello messages b. Advertises to other neighbors about the subnet connected to the interface 3. If no wildcard mask is configured on the EIGRP network command, the command’s single parameter should be a classful network number (in other words, a class A, B, or C network number). 4. If no wildcard mask is configured on the EIGRP network command, the command enables EIGRP on all of that router’s interfaces directly connected to the configured classful network. 5. If the network command includes a wildcard mask, the router performs access control list (ACL) logic when comparing the net-id configured in the network command with each interface’s IP address, using the configured wildcard mask as an ACL wildcard mask. Example 4-1 shows a sample configuration for each router in Figure 4-1, with several variations in the network commands to make the details in the preceding list more obvious. From the Library of Alexey Evseenko 126 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Fa0/0 1.1/24 R1 S0/0/0 12.1/30 Fa0/1 192.168.9.99/28 S0/0/1 13.1/30 12.2/30 S0/0/1 Fa0/1 222.2/27 S0/0/0 23.2/30 R2 Fa0/0 2.2/25 13.2/30 S0/0/0 S0/0/1 23.1/30 R3 Fa0/0 3.3/26 Note: All IP addresses begin with 10.1 unless otherwise noted. Figure 4-1 Three-Router Internetwork Example 4-1 EIGRP Configuration on Routers R1, R2, and R3 ! On Router R1: !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! router eigrp 1 network 10.0.0.0 network 192.168.9.0 ! On Router R2: !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! router eigrp 1 network 10.1.0.0 0.0.31.255 network 10.1.2.2 0.0.0.0 ! On Router R3: !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! router eigrp 1 network 10.1.0.0 0.0.255.255 First, note that all three routers use the router eigrp 1 command, so all three routers’ ASN values match. Next, consider the two network commands on R1. The network 10.0.0.0 command, without a wildcard-mask parameter, means that R1 matches all interfaces in class A network 10.0.0.0—which in this case means R1’s Fa0/0, S0/0/0, and S0/0/1 interfaces. The network 192.168.9.0 command, again without a wildcard mask, matches interface Fa0/1. From the Library of Alexey Evseenko Chapter 4: Fundamental EIGRP Concepts 127 On R2, the network 10.1.0.0 0.0.31.255 command requires a little more thought. The router uses the 0.0.31.255 value—the wildcard (WC) mask—just like an ACL WC mask. Cisco IOS compares the 10.1.0.0 value with each interface IP address, but only for the bit positions for which the WC mask lists a binary 0. For example, 0.0.31.255 represents 19 binary 0s, followed by 13 binary 1s. So, R2 would compare the first 19 bits of 10.1.0.0 with the first 19 bits of each interface’s IP address. Two features of the mechanics of the network command require a little extra attention. First, Cisco IOS might convert the address portion of the network address wc-mask command before putting the command into the running config. Just as Cisco IOS does for the address/WC mask combinations for the access-list command, Cisco IOS inverts the WC mask and then performs a Boolean AND of the address and mask. For example, if you type the network 10.1.1.1 0.0.255.255 command, Cisco IOS inverts the WC mask (to 255.255.0.0) and ANDs this value with 10.1.1.1, resulting in 10.1.0.0. As a result, Cisco IOS stores the command network 10.1.0.0 0.0.255.255. The second feature is that when you know for sure the values in the network command, you can easily find the range of interface addresses that match the address/WC mask combination in the network command. The low end of the range is the address as listed in the network command. To find the high end of the range, just add the address and WC mask together. For example, the network 10.1.0.0 0.0.31.255 command has a range of 10.1.0.0 through 10.1.31.255. Finally, on R3, the network 10.1.0.0 0.0.255.255 command tells R3 to enable EIGRP on all interfaces whose IP addresses begin with 10.1, which includes all three interfaces on R3, as shown in Figure 4-1. Taking a step back from the details, this config has enabled EIGRP, with ASN 1, on all three routers, and on all interfaces shown in Figure 4-1—except one interface. R2’s Fa0/1 interface is not matched by any network commands on R2. So, EIGRP is not enabled on that interface. The next section reviews the commands that can be used to confirm that EIGRP is enabled, the interfaces on which it is enabled, the neighbor relationships that have been formed, and which EIGRP routes have been advertised and learned. Verification Review Even before starting to configure the routers, an engineer first considers all requirements. Those requirements lead to a design, which in turn leads to a chosen set of configuration commands. Then, the verification process that follows must consider the design requirements. The goal of verification is to determine that the internetwork works as designed, not just that some EIGRP routes have been learned. For the purposes of this section, assume that the only design goal for the internetwork shown in Figure 4-1 is that EIGRP be used so that all routers have routes to reach all subnets shown in the figure. To verify such a simple design, an engineer should start by confirming on which interfaces EIGRP has been enabled on each router. The next step should be to determine whether the EIGRP neighbor relationships that should occur are indeed up and working. Then, From the Library of Alexey Evseenko 128 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide the EIGRP topology table should be examined to confirm that there is at least one entry for each subnet or network in the design. Finally, the IP routes on each router should be examined, confirming that all routes are known. To that end, Table 4-2 summarizes five key show commands that provide the information to answer these questions. Note The following table mentions some information that is covered later in this chapter (passive interfaces) or in other chapters (successor/feasible successors). Example 4-2 shows samples of each command listed in Table 4-2. Note that the output highlights various samples of items that should be verified: the interfaces on which EIGRP is enabled, the known neighbors, the subnets in the topology table, and the EIGRP routes. Table 4-2 Key EIGRP Verification Commands Key Topic Command Key Information show ip eigrp interfaces Lists the working interfaces on which EIGRP is enabled (based on the network commands); it omits passive interfaces. show ip protocols Lists the contents of the network configuration commands for each routing process, and a list of neighbor IP addresses. show ip eigrp neighbors Lists known neighbors; does not list neighbors for which some mismatched parameter is preventing a valid EIGRP neighbor relationship. show ip eigrp topology Lists all successor and feasible successor routes known to this router. It does not list all known topology details. (See Chapter 5, “Advanced EIGRP Concepts,” for more detail on successors and feasible successors.) show ip route Lists the contents of the IP routing table, listing EIGRP-learned routes with a code of D on the left side of the output. Example 4-2 EIGRP Verification on Routers R1, R2, and R3 ! On Router R1: !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! R1# show ip eigrp interfaces IP-EIGRP interfaces for process 1 Interface Fa0/0 Se0/0/0 Peers 0 1 Xmit Queue Un/Reliable 0/0 0/0 Mean SRTT 0 25 Pacing Time Multicast Un/Reliable Flow Timer 0/1 0 0/15 123 Pending Routes 0 0 From the Library of Alexey Evseenko Se0/0/1 Fa0/1 0 1 0/0 0/0 0 Chapter 4: Fundamental EIGRP Concepts 129 23 0/15 111 0 0/1 0 0 ! On Router R2: !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! R2# show ip protocols Routing Protocol is "eigrp 1" Outgoing update filter list for all interfaces is not set Incoming update filter list for all interfaces is not set Default networks flagged in outgoing updates Default networks accepted from incoming updates EIGRP metric weight K1=1, K2=0, K3=1, K4=0, K5=0 EIGRP maximum hopcount 100 EIGRP maximum metric variance 1 Redistributing: eigrp 1 EIGRP NSF-aware route hold timer is 240s Automatic network summarization is in effect Maximum path: 4 Routing for Networks: 10.1.2.2/32 10.1.0.0/19 Routing Information Sources: Gateway Distance Last Update 10.1.12.1 90 00:19:36 10.1.23.1 90 00:19:36 Distance: internal 90 external 170 ! On Router R3: !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! R3# show ip eigrp neighbors IP-EIGRP neighbors for process 1 H Address Interface Hold Uptime SRTT RTO Q Seq (sec) (ms) Cnt Num 1 10.1.23.2 Se0/0/1 11 00:19:53 31 200 0 6 0 10.1.13.1 Se0/0/0 10 00:19:53 32 200 0 6 ! On Router R2: !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! R2# show ip eigrp topology IP-EIGRP Topology Table for AS(1)/ID(10.1.222.2) Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply, r - reply Status, s - sia Status P 10.1.13.0/30, 2 successors, FD is 2681856 via 10.1.23.1 (2681856/2169856), Serial0/0/0 via 10.1.12.1 (2681856/2169856), Serial0/0/1 P 10.1.12.0/30, 1 successors, FD is 2169856 via Connected, Serial0/0/1 From the Library of Alexey Evseenko 130 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide P 10.1.3.0/26, 1 successors, FD is 2172416 via 10.1.23.1 (2172416/28160), Serial0/0/0 P 10.1.2.0/25, 1 successors, FD is 28160 via Connected, FastEthernet0/0 P 10.1.1.0/24, 1 successors, FD is 2172416 via 10.1.12.1 (2172416/28160), Serial0/0/1 ! On Router R3: !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! R3# show ip route Codes: C - connected, S - static, R - RIP, M - mobile, B - BGP D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2 E1 - OSPF external type 1, E2 - OSPF external type 2 i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2 ia - IS-IS inter area, * - candidate default, U - per-user static route o - ODR, P - periodic downloaded static route Gateway of last resort is not set D 192.168.9.0/24 [90/2172416] via 10.1.13.1, 00:19:55, Serial0/0/0 10.0.0.0/8 is variably subnetted, 6 subnets, 4 masks C 10.1.13.0/30 is directly connected, Serial0/0/0 D 10.1.12.0/30 [90/2681856] via 10.1.23.2, 00:19:55, Serial0/0/1 [90/2681856] via 10.1.13.1, 00:19:55, Serial0/0/0 C 10.1.3.0/26 is directly connected, FastEthernet0/0 D 10.1.2.0/25 [90/2172416] via 10.1.23.2, 00:19:55, Serial0/0/1 D 10.1.1.0/24 [90/2172416] via 10.1.13.1, 00:19:55, Serial0/0/0 C 10.1.23.0/30 is directly connected, Serial0/0/1 To verify the interfaces on which EIGRP is enabled, both the show ip eigrp interfaces command (shown on R1) and the show ip protocols command (shown on R2) list the information. For this example, look at the list of interfaces in R2’s show ip protocols command output: S0/0/0, S0/0/1, and FA0/0 are listed, but Fa0/1—unmatched by any of R2’s network commands—is not. In this design, each router should form a neighbor relationship with the other two routers, in each case over a point-to-point serial link. The show ip eigrp neighbors command (on R3) confirms R3’s neighbors. Finally, one design goal was for all routers to have routes for all subnets/networks. You could move on to the show ip route command or first look for all prefixes in the show ip eigrp topology command. With relatively general requirements, just looking at the IP routing table is fine. The example highlights R3’s topology data and IP route for subnet 10.1.1.0/24. Of more interest might be the fact that the show ip route command output on R3 lists all subnet/network numbers except one: subnet 10.1.222.0/27. This subnet exists off R2’s Fa0/1 interface (as seen in Figure 4-1), which is the interface on which EIGRP has not yet been enabled. From the Library of Alexey Evseenko Chapter 4: Fundamental EIGRP Concepts 131 Internals Review To complete the review of prerequisite CCNA-level EIGRP knowledge, this section looks at a few of the internals of EIGRP. Some of the facts listed here simply need to be memorized, whereas other topics will be discussed in more detail later. EIGRP follows three general steps to add routes to the IP routing table, as follows: Step 1. Neighbor discovery: EIGRP routers send Hello messages to discover potential neighboring EIGRP routers and perform basic parameter checks to determine which routers should become neighbors. Step 2. Topology exchange: Neighbors exchange full topology updates when the neighbor relationship comes up, and then only partial updates as needed based on changes to the network topology. Step 3. Choosing routes: Each router analyzes its respective EIGRP topology table, choosing the lowest-metric route to reach each subnet. Because the majority of the rest of this chapter examines EIGRP neighborships, this review section skips any discussion of EIGRP neighbors, instead focusing on topology exchange and route selection. Exchanging Topology Information First, the EIGRP neighbor table lists the neighboring routers. Second, the EIGRP topology table holds all the topology information learned from EIGRP neighbors. Finally, EIGRP chooses the best IP routes, and those routes become candidates to be injected into the IP routing table. (Table 4-2, earlier in this chapter, lists the show commands that can be used to examine these tables.) EIGRP routers follow the process shown in Figure 4-2 to build the necessary information in these tables, with the end goal of populating the IP routing table. B Neighbor Discovery (Hello) Full Routing Update Continuous Hellos Partial Updates (Status Changes and New Subnet Info) Reliable Update A Neighbor Discovery (Hello) Full Routing Update Continuous Hellos Partial Updates (Status Changes and New Subnet Info) Figure 4-2 EIGRP Discovery and Update Process EIGRP uses Update messages to send topology information to neighbors. These Update messages can be sent to multicast IP address 224.0.0.10 if the sending router needs to From the Library of Alexey Evseenko 132 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide update multiple routers on the same subnet. Unlike OSPF, there is no concept of a designated router (DR) or backup designated router (BDR), but the use of multicast packets on LANs allows EIGRP to exchange routing information with all neighbors on the LAN efficiently. The update messages are sent using the Reliable Transport Protocol (RTP). The significance of RTP is that, like OSPF, EIGRP resends routing updates that are lost in transit. By using RTP to guarantee delivery of the EIGRP messages, EIGRP can better avoid loops. Note The acronym RTP also refers to a different protocol, Real-time Transport Protocol (RTP), which is used to transmit voice and video IP packets. Neighbors use both full routing updates and partial updates, as depicted in Figure 4-2. A full update means that a router sends information about all known routes, whereas a partial update includes only information about recently changed routes. Full updates occur when neighbors first come up. After that, the neighbors send only partial updates in reaction to changes to a route. Calculating the Best Routes for the Routing Table EIGRP topology information includes the subnet number and mask, along with the components of the EIGRP composite metric. Each router then calculates an integer metric for each route, using the individual values of the EIGRP metric components listed in the EIGRP topology database. By default, EIGRP only uses the bandwidth and delay settings when calculating the metric. Optionally, the calculation can also include interface load and interface reliability, although Cisco recommends against using either. Note Past documents and books often stated that EIGRP, and its predecessor IGRP, also could use Maximum Transmission Unit (MTU) as a part of the metric. However, MTU size is intended to be a tiebreaker if two paths have equal metrics but different MTU sizes. In such a case, the path with the higher MTU is selected. So, while MTU size is listed in EIGRP Update messages, it is not directly used in metric calculations. EIGRP calculates the metric for each possible route by inserting the values of the composite metric into a formula. If the choice is made to just use the default parameters of bandwidth and delay, the formula is as follows: ( Metric = 107 + cumulative-delay 256 least-bandwidth (( In this formula, the term least-bandwidth represents the lowest-bandwidth link in the route, using a unit of kilobits per second. For example, if the slowest link in a route is a 10-Mbps Ethernet link, the first part of the formula is 107 / 104, because 10 Mbps equals From the Library of Alexey Evseenko Chapter 4: Fundamental EIGRP Concepts 133 10,000 kbps, or 104 kbps. The cumulative-delay value used by the formula is the sum of all the delay values for all links in the route, with a unit of “tens of microseconds.” So, if you add up all the delays (from the output of the show interfaces type number command) from all egress interfaces, you would take that number (which is in microseconds) and divide by 10 (to give you a unit of tens of microseconds) for use in the formula. You can set both bandwidth and delay for each link, using the bandwidth and delay interface subcommands. Table 4-3 summarizes some of the key facts about EIGRP. Table 4-3 EIGRP Feature Summary Key Topic Feature Description Transport IP, protocol type 88 (does not use UDP or TCP). Metric Based on constrained bandwidth and cumulative delay by default, and optionally load and reliability. Hello interval Interval at which a router sends EIGRP Hello messages on an interface. Hold Timer Timer used to determine when a neighboring router has failed, based on a router not receiving any EIGRP messages, including Hellos, in this timer period. Update destination address Normally sent to 224.0.0.10, with retransmissions being sent to each neighbor’s unicast IP address. Can also be sent to the neighbor’s unicast IP address. Full or partial updates Full updates are used when new neighbors are discovered; otherwise, partial updates are used. Authentication Supports MD5 authentication only. VLSM/classless EIGRP includes the mask with each route, also allowing it to support discontiguous networks and VLSM. Route tags Allows EIGRP to tag routes as they are redistributed into EIGRP. Next-hop field Supports the advertisement of routes with a different nexthop router than the advertising router. Manual route summarization Allows route summarization at any point in the EIGRP network. Automatic summarization EIGRP supports, and defaults to use, automatic route summarization at classful network boundaries. Multiprotocol Supports the advertisement of IPX, AppleTalk, IP version 4, and IP version 6 routes. This completes the CCNA-level EIGRP review. The rest of this chapter now examines EIGRP neighbor relationships. From the Library of Alexey Evseenko 134 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide EIGRP Neighborships Like OSPF, EIGRP uses three major steps to achieve its goal of learning the best available loop-free routes: Step 1. Establish EIGRP neighbor relationships—neighborships—with other routers that share a common subnet. Step 2. Exchange EIGRP topology data with those neighbors. Step 3. Calculate the currently best IP route for each subnet, based on the known EIGRP topology data, and add those best routes to the IP routing table. This three-step process hinges on the first step—the successful creation of neighbor relationships between EIGRP routers. The basic EIGRP configuration described earlier in this chapter, particularly the network command, most directly tells EIGRP on which interfaces to dynamically discover neighbors. After EIGRP neighborships have been formed with neighboring routers that are reachable through those interfaces, the final two steps occur without any additional direct configuration. EIGRP dynamically discovers neighbors by sending EIGRP Hello messages on each EIGRP-enabled interface. When two routers hear EIGRP Hello messages from each other, they check the EIGRP parameters listed in those messages and decide whether the two routers should or should not become neighbors. The rest of this section focuses on topics related to EIGRP neighborship, specifically: ■ Manipulating EIGRP Hello and Hold Timers ■ Controlling whether routers become neighbors by using either passive interfaces or statically defined neighbors ■ Examining configuration settings that can prevent EIGRP neighborships Manipulating EIGRP Hello and Hold Timers The word convergence defines the overall process by which routers notice internetwork topology changes, communicate about those changes, and change their routing tables to contain only the best currently working routes. EIGRP converges very quickly, even with all default settings. One of the slower components of the EIGRP convergence process relates to the timers that EIGRP neighbors use to recognize that a neighborship has failed. If the interface over which the neighbor is reachable fails, and Cisco IOS changes the interface state to anything other than “up/up,” a router immediately knows that the neighborship should fail. However, in some cases, an interface state might stay “up/up” during times when the link is not usable. In such cases, EIGRP convergence relies on the Hold Timer to expire, which by default, on LANs, means a 15-second wait. (The default EIGRP Hold time on interfaces/subinterfaces with a bandwidth of T1 or lower, with an encapsulation type of Frame Relay, is 180 seconds.) From the Library of Alexey Evseenko Chapter 4: Fundamental EIGRP Concepts 135 The basic operation of these two timers is relatively simple. EIGRP uses the Hello messages in part as a confirmation that the link between the neighbors still works. If a router does not receive a Hello from a neighbor for one entire Hold time, that router considers the neighbor to be unavailable. For example, with a default LAN setting of Hello = 5 and Hold = 15, the local router sends Hellos every 5 seconds. The neighbor resets its downward-counting Hold Timer to 15 upon receiving a Hello from that neighbor. Under normal operation on a LAN, with defaults, the Hold Timer for a neighbor would vary from 15, down to 10, and then be reset to 15. However, if the Hellos were no longer received for 15 seconds, the neighborship would fail, driving convergence. To optimize convergence, an engineer could simply reduce the Hello and Hold Timers, accepting insignificant additional overhead, in return for shorter convergence times. These settings can be made per interface/subinterface, and per EIGRP process. Note Although expected to be outside the scope of CCNP, EIGRP can also use the Bi-directional Forwarding Detection (BFD) feature, which provides a means for subsecond detection of a failure in IP connectivity between two neighboring routers. Configuring the Hello/Hold Timers Most design engineers would normally choose Hello/Hold Timers that match on all router interfaces on a subnet. However, these settings do not have to match. Interestingly, by setting the Hello and Hold Timers to nondefault values, you can see some oddities with how EIGRP neighbors use these values. For example, consider four WAN distribution routers, as shown in Figure 4-3. These routers might each have a number of Frame Relay PVCs to remote branches, or multiple MPLS VPN connections to branches. However, to communicate with each other and with data centers at the home office, these four routers connect through a core VLAN/subnet. Note that the design shows routers, rather than Layer 3 switches, but the concept is the same in either case. A design that hoped to speed EIGRP convergence might call for setting the Hello and Hold Timers to 2 and 6, respectively. (The Hold Timer does not have to be three times the Hello Timer, but the 3:1 ratio is a reasonable guideline.) However, to make an important point about operation of the configuration commands, Example 4-3 sets only R1’s Fa0/1 timers to the new values. Note that in this case, EIGRP has already been configured on all four routers, using ASN 9. From the Library of Alexey Evseenko 136 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide To Data Centers To Branches .1/24 R1 Fa0/1 .3/24 R3 Fa0/1 .2/24 Fa0/1 R2 .4/24 Fa0/1 R4 To Branches Note: All IP addresses begin with 172.16.1 Figure 4-3 Four WAN Distribution Routers on the Same VLAN/Subnet Example 4-3 EIGRP Hello and Hold Timer Configuration—R1 interface Fastethernet0/1 ip hello-interval eigrp 9 2 ip hold-time eigrp 9 6 A couple of interesting points can be made about the operation of these seemingly simple commands. First, these two settings can be made per interface/subinterface, but not per neighbor. In Figure 4-3, the Example 4-3 configuration then applies on R1 for all three neighbors reachable on interface Fa0/1. The second interesting point about these commands is that one parameter (the Hello Interval) tells R1 what to do, whereas the other (the Hold Timer) actually tells the neighboring routers what to do. As shown in Figure 4-4, the ip hello-interval eigrp 9 2 interface subcommand tells R1 to send Hellos every 2 seconds. However, the ip hold-time eigrp 9 6 interface subcommand tells R1, again for the EIGRP process with ASN 9, to tell its neighbors to use a Hold Timer of 6 for their respective neighbor relationships with R1. In short, the EIGRP Hello message sent by R1 announces the Hold Timer that other routers should use in the neighbor relationship with R1. Figure 4-4 shows this idea in graphical form. Note Cisco IOS does not prevent you from making the unfortunate configuration choice of setting the Hold Timer to a value smaller than the Hello interval. In such a case, the neighborship repeatedly fails and recovers, flapping routes in and out of the routing table. From the Library of Alexey Evseenko Chapter 4: Fundamental EIGRP Concepts 137 R1 R2 Hello Hello Timer: 2 Hold Timer: 6 2 Seconds Hello 2 Seconds Hello 2 Seconds Hello Hello Timer: 5 Hold Timer: 15 Hold Timer 6 Hello 5 4 6 5 4 6 5 4 Figure 4-4 R1 Announcing New Hello and Hold Timers Verifying the Hello/Hold Timers To find the Hello interface and Hold time configured on a router’s interface, you could of course look at a router’s configuration, but the show running-config command might not be available to you on some question types on the ROUTE exam. However, if you have access to only user mode, you can issue the show ip eigrp interfaces detail type number command. It’s important to note, however, that if you use that command on some older versions of Cisco IOS, the Hold time might not displayed. Example 4-4 shows some sample command output from R1, R2, and R3. Note that the Hello and Hold Timer settings on R1 are all in the range of 10–15 seconds, because the timers on R2, R3, and R4 all still default to 5 and 15 seconds, respectively. R2’s neighborship with R1 lists a Hold Timer of 4, which is within the expected range of 4–6 seconds remaining. Example 4-4 Demonstration that R2 and R3 Use R1’s Configured Hold Timer ! On Router R1: !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! R1# show ip eigrp interfaces detail fa0/1 EIGRP-IPv4 Interfaces for AS(9) Xmit Queue PeerQ Mean Interface Peers Un/Reliable Un/Reliable SRTT Pacing Time Un/Reliable Multicast Flow Timer Pending Routes From the Library of Alexey Evseenko 138 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Fa0/1 3 0/0 0/0 535 0/1 Hello-interval is 2, Hold-time is 6 Split-horizon is enabled Next xmit serial Packetized sent/expedited: 0/0 Hello's sent/expedited: 102/1 Un/reliable mcasts: 0/1 Un/reliable ucasts: 4/9 Mcast exceptions: 1 CR packets: 1 ACKs suppressed: 1 Retransmissions sent: 2 Out-of-sequence rcvd: 0 Topology-ids on interface - 0 Authentication mode is not set 50 0 R1# show ip eigrp neighbors IP-EIGRP neighbors for process 9 H Address Interface Hold Uptime SRTT (sec) (ms) 2 172.16.1.4 Fa0/1 11 00:03:17 1596 1 172.16.1.3 Fa0/1 11 00:05:21 1 0 172.16.1.2 Fa0/1 13 00:09:04 4 ! On Router R2: !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! R2# show ip eigrp neighbors IP-EIGRP neighbors for process 9 H Address Interface Hold Uptime SRTT (sec) (ms) 2 172.16.1.4 Fa0/1 11 00:03:36 4 1 172.16.1.3 Fa0/1 11 00:05:40 12 0 172.16.1.1 Fa0/1 4 00:09:22 1 ! On Router R3: !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! R3# show ip eigrp neighbors IP-EIGRP neighbors for process 9 H Address Interface Hold Uptime SRTT (sec) (ms) 2 172.16.1.4 Fa0/1 11 00:03:40 4 1 172.16.1.1 Fa0/1 5 00:05:44 1278 0 172.16.1.2 Fa0/1 13 00:05:44 1277 RTO Q Seq Cnt Num 5000 0 7 200 0 5 200 0 2 RTO Q Seq Cnt Num 200 0 6 200 0 4 200 0 2 RTO Q Seq Cnt Num 200 0 5 5000 0 4 5000 0 4 Preventing Unwanted Neighbors Using Passive Interfaces When an EIGRP network configuration subcommand matches an interface, EIGRP on that router does two things: Step 1. Attempts to find potential EIGRP neighbors by sending Hellos to the 224.0.0.10 multicast address Step 2. Advertises the subnet connected to that interface From the Library of Alexey Evseenko Chapter 4: Fundamental EIGRP Concepts 139 In some cases, however, no legitimate EIGRP neighbors might exist off an interface. For example, consider the small internetwork shown in Figure 4-5, with three routers, and with only one router connected to each LAN interface. Each router needs to advertise the subnets connected to their various FastEthernet interfaces, but at the same time, there is no benefit to multicast EIGRP Hellos on those interfaces, because only one router connects to each LAN. Fa0/0 1.1/24 R1 S0/0/0 12.1/30 Fa0/1 192.168.9.99/28 S0/0/1 13.1/30 12.2/30 S0/0/1 Fa0/1 222.2/27 S0/0/0 23.2/30 R2 Fa0/0 2.2/25 13.2/30 S0/0/0 S0/0/1 23.1/30 R3 Fa0/0 3.3/26 Note: All IP addresses begin with 10.1 unless otherwise noted. Figure 4-5 LAN Interfaces That Benefit from the Passive Interface Feature The network designer can reasonably choose to limit EIGRP on those interfaces that have no legitimate EIGRP neighbors. However, the subnets connected to those same interfaces also typically need to be advertised by EIGRP. For example, subnet 10.1.1.0/24, off R1’s Fa0/0 interface, still needs to be advertised by EIGRP, even though R1 should never find an EIGRP neighbor on that interface. Given such a requirement—to advertise the subnet while disallowing EIGRP neighborships on the interface—an engineer has two main configuration options to choose from: Key Topic ■ Enable EIGRP on the interface using the EIGRP network command, but tell the router to not send any EIGRP messages on the interface by making the interface passive (using the passive-interface command). ■ Do not enable EIGRP on the interface, and advertise the connected route using route redistribution (and the redistribute connected configuration command). From the Library of Alexey Evseenko 140 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide The first option relies on the passive interface feature—a feature specifically created with this design requirement in mind. When an interface is passive, EIGRP does not send any EIGRP messages on the interface—multicasts or EIGRP unicasts—and the router ignores any EIGRP messages received on the interface. However, EIGRP still advertises the connected subnets if matched with an EIGRP network command. As a result, the first option in the preceding list directly meets all the design requirements. It has the added advantage of being very secure in that no EIGRP neighborships are possible on the interface. The second option—redistributing connected subnets—also works, but frankly it is the less preferred option in this case. Specifically, the passive interface option clearly meets the design requirements, while the redistribution option causes the connected route to be advertised as an external EIGRP route. This could cause problems in some cases with multiple redistribution points between routing domains (as discussed in Chapter 10, “Route Redistribution”). The configuration of the passive interface itself is fairly straightforward. To configure the passive interface option, these three routers could be configured as shown in Example 4-5. Example 4-5 Configuration of passive-interface Commands on R1, R2, and R3 ! On Router R1: !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! router eigrp 1 passive-interface fastethernet0/0 passive-interface fastethernet0/1 network 10.0.0.0 network 192.168.9.0 ! On Router R2: !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! router eigrp 1 passive-interface default no passive-interface serial0/0/0 no passive-interface serial0/0/1 network 10.0.0.0 ! On Router R3: !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! router eigrp 1 passive-interface fastethernet0/0 network 10.0.0.0 R1’s configuration lists two passive-interface commands, one per LAN interface. As a result, R1 no longer sends EIGRP messages on these two interfaces, including the multicast EIGRP Hellos used to discover neighbors. R2’s configuration uses a slightly different option: the passive-interface default command. This command essentially changes the default for an interface from not being passive to instead being passive. Then, to make an interface not passive, you have to use a no version of the passive-interface command for those interfaces. From the Library of Alexey Evseenko Chapter 4: Fundamental EIGRP Concepts 141 Two commands help to verify that the passive interface design is working properly. First, the show ip eigrp interfaces command omits passive interfaces, listing the nonpassive interfaces matched by a network command. Alternatively, the show ip protocols command explicitly lists all passive interfaces. Example 4-6 shows samples of both commands on R2. Example 4-6 Verifying the Results of passive-interface on R2 R2# show ip eigrp interfaces IP-EIGRP interfaces for process 1 Xmit Queue Mean Pacing Time Interface Peers Un/Reliable SRTT Un/Reliable Se0/0/0 1 0/0 32 0/15 Se0/0/1 1 0/0 1290 0/15 R2# show ip protocols Routing Protocol is "eigrp 1" Outgoing update filter list for all interfaces is not set Incoming update filter list for all interfaces is not set Default networks flagged in outgoing updates Default networks accepted from incoming updates EIGRP metric weight K1=1, K2=0, K3=1, K4=0, K5=0 EIGRP maximum hopcount 100 EIGRP maximum metric variance 1 Redistributing: eigrp 1 EIGRP NSF-aware route hold timer is 240s Automatic network summarization is in effect Maximum path: 4 Routing for Networks: 10.0.0.0 Passive Interface(s): FastEthernet0/0 FastEthernet0/1 Routing Information Sources: Gateway Distance Last Update 10.1.12.1 90 00:00:39 10.1.23.1 90 00:00:39 Distance: internal 90 external 170 Multicast Pending Flow Timer Routes 159 0 6443 0 Controlling Neighborships with Static Configuration EIGRP supports the ability to statically define neighbors instead of dynamically discovering neighbors. From the Library of Alexey Evseenko 142 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Although seldom used, you can use this feature to reduce the overhead associated with EIGRP multicast messages. Frame Relay WANs in particular might benefit from the static neighbor definitions, because to support multicasts and broadcasts over Frame Relay, a router must replicate a frame and send a copy over every PVC associated with the interface or subinterface. For example, if a multipoint subinterface has ten PVCs associated with it, but only two of the remote routers used EIGRP, without static neighbors, all ten routers would be sent a copy of the EIGRP multicast Hello packets. With static neighbor definitions for the two routers, EIGRP messages would be sent as unicasts to each of the two neighbors, with no EIGRP messages sent to the eight non-EIGRP routers, reducing overhead. The configuration seems simple, but it has a few subtle caveats. This section examines the straightforward configuration first and then examines the caveats. Configuring Static EIGRP Neighbors To define a neighbor, both routers must configure the neighbor ip-address outgoinginterface EIGRP router subcommand. The IP address is the interface IP address of the neighboring router. Also, the configured IP address must be from the subnet connected to the interface listed in the neighbor command; otherwise, the command is rejected. Also, note that the EIGRP configuration still needs a network command that matches the interface referenced by the neighbor command. For example, consider Figure 4-6, which adds a new router (R5) to the internetwork of Figure 4-3. R1 and R5 have a PVC connecting them, with IP addresses and subinterface numbers shown. R5 10.10.15.5/29 S0/0.1 FR 10.10.15.1/29 S0/0/0.5 R1 R2 R3 R4 Figure 4-6 Adding a Branch, with a Static EIGRP Neighbor Example 4-7 shows the configuration on both R1 and R5 to use static neighbor definitions. Of note, R1’s neighbor command refers to R5’s IP address on their common subnet (10.10.15.5), with R1’s local interface (S0/0/0.5). R5 lists the reverse, with R1’s 10.10.15.1 IP address and R5’s local S0/0.1 interface. Also note that both routers have a network command that references network 10.0.0.0, and both routers do advertise subnet 10.10.15.0/29. From the Library of Alexey Evseenko Chapter 4: Fundamental EIGRP Concepts 143 The show ip eigrp neighbors command does not identify a neighbor as static, but the show ip eigrp neighbors detail command does. Example 4-7 shows the more detailed output near the end, with the designation of 10.10.15.5 (R5) as a static neighbor. Example 4-7 Static EIGRP Neighborship Between R1 and R5 ! New configuration on router R1 R1# show running-config ! lines omitted router eigrp 9 network 172.16.0.0 network 10.0.0.0 no auto-summary neighbor 10.10.15.5 Serial0/0/0.5 ! Back to R1 R1# show ip eigrp neighbors detail IP-EIGRP neighbors for process 9 H Address Interface Hold Uptime SRTT RTO Q Seq (sec) (ms) Cnt Num 3 10.10.15.5 Se0/0/0.5 10 00:00:51 15 200 0 2 Static neighbor Version 12.4/1.2, Retrans: 0, Retries: 0 2 172.16.1.2 Fa0/1 11 00:02:57 3 200 0 25 Version 12.4/1.2, Retrans: 1, Retries: 0 1 172.16.1.3 Fa0/1 10 00:03:45 5 200 0 21 Version 12.4/1.2, Retrans: 0, Retries: 0 0 172.16.1.4 Fa0/1 13 00:03:45 5 200 0 18 ! R5's new config added to support the neighbor R5# show running-config ! lines omitted router eigrp 9 network 10.0.0.0 no auto-summary neighbor 10.10.15.1 Serial0/0.1 Caveat When Using EIGRP Static Neighbors Cisco IOS changes how it processes EIGRP packets on any interface referenced by an EIGRP neighbor command. Keeping in mind the design goal for this feature—to reduce multicasts—Cisco IOS disables all EIGRP multicast packet processing on an interface when an EIGRP neighbor command has been configured. For example, in Example 4-7, R1’s S0/0/0.5 subinterface will not process EIGRP multicast packets any more as a result of R1’s neighbor 10.10.15.5 Serial0/0/0.5 EIGRP subcommand. Because of the operation of the EIGRP neighbor command, if at least one EIGRP static neighbor is defined on an interface, no dynamic neighbors can be either discovered or From the Library of Alexey Evseenko 144 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide continue to work if already discovered. For example, again in Figure 4-6 and Example 4-7, if R1 added a neighbor 172.16.1.5 FastEthernet0/1 EIGRP subcommand, R1 would lose its current neighborships with Routers R2, R3, and R4. Configuration Settings That Could Prevent Neighbor Relationships Some of the configuration settings already mentioned in this chapter, when configured incorrectly, might prevent EIGRP neighborships. This section summarizes those settings, and introduces a few other configuration settings that can prevent neighbor relationships. The list of items that must match—and that do not have to match—can be a useful place to start troubleshooting neighbor initialization problems in real life, and to troubleshoot neighborship problems for simulation questions on the CCNP ROUTE exam. Table 4-4 lists the neighbor requirements for both EIGRP and Open Shortest Path First (OSPF). (OSPF is included here just as a frame of reference for those more familiar with OSPF; this information will be repeated in Chapter 7, “Fundamental OSPF Concepts,” which discusses OSPF neighborship requirements.) Following the table, the next few pages examine some of these settings for EIGRP. Table 4-4 Neighbor Requirements for EIGRP and OSPF Key Topic Requirement The routers must be able to send/receive IP packets to one another. Interfaces’ primary IP addresses must be in same subnet. Must not be passive on the connected interface. Must use the same ASN (EIGRP) or process-ID (OSPF) in the router configuration command. Hello interval/timer, plus either the Hold (EIGRP) or Dead (OSPF) timer, must match. Must pass neighbor authentication (if configured). Must be in same area. IP MTU must match. K-values (used in metric calculation) must match. Router IDs must be unique. EIGRP OSPF Yes Yes Yes Yes Yes Yes Yes No No Yes Yes Yes N/A Yes No Yes Yes — No1 Yes 1 Duplicate EIGRP RIDs do not prevent routers from becoming neighbors, but it can cause problems when adding external EIGRP routes to the IP routing table. Going through Table 4-4 sequentially, the first two items relate to IP connectivity. Two routers must be able to send and receive IP packets with each other. Additionally, the primary IP address on the interfaces—in other words, the IP address configured without the secondary keyword on the ip address command—must be in the same subnet. From the Library of Alexey Evseenko Chapter 4: Fundamental EIGRP Concepts 145 Note It should not matter for CCNP ROUTE, but possibly for CCIE R/S: EIGRP’s rules about neighbor IP addresses being in the same subnet are less exact than OSPF. OSPF requires matching subnet numbers and masks. EIGRP just asks the question of whether the neighbor’s IP address is in the range of addresses for the subnet as known to the local router. For example, two routers with addresses of 10.1.1.1/24 (range 10.1.1.1–10.1.1.254) and 10.1.1.2/30 (range 10.1.1.1–10.1.1.2) would actually allow EIGRP neighborship, because each router believes the neighbor’s IP address to be in the same subnet as the local router. The next three items in Table 4-4—passive interfaces, matching the EIGRP ASN number, and allowing mismatching Hello/Hold Timers—have already been covered in this chapter. The next item, authentication, is discussed in detail in Chapter 17, “Routing Protocol Authentication.” The next two items in the table—matching the IP MTU and matching OSPF areas—do not prevent EIGRP neighborships. These topics, are requirements for OSPF neighborship and will be discussed in Chapter 7. Finally, the last two items in the table (K-values and router IDs) each require more than a cursory discussion for EIGRP and will be explained in the upcoming pages. Configuring EIGRP Metric Components (K-values) EIGRP calculates its integer metric, by default, using a formula that uses constraining bandwidth and cumulative delay. You can change the formula to use link reliability and link load, and even disable the use of bandwidth and/or delay. To change the formula, an engineer can configure five weighting constants, called K-values, which are represented in the metric calculation formula as constants K1, K2, K3, K4, and K5. From a design perspective, Cisco strongly recommends against using link load and link reliability in the EIGRP metric calculation. Most shops that use EIGRP never touch the K-values at all. However, in labs, it can be useful to disable the use of bandwidth from the metric calculation, because that simplifies the metric math and makes it easier to learn the concepts behind EIGRP. The metric weights command sets five variables (K1 through K5), each of which weights the metric calculation formula more or less heavily for various parts of the formula. Mismatched K-value settings prevent two routers from becoming neighbors. Thankfully, determining whether such a mismatch exists is easy. When a router receives an EIGRP Hello with mismatched K-values (as compared to itself), the router issues a log message stating that a K-value mismatch exists. You can also examine the values either by looking at the running configurations or by looking for the K-values listed in the output of the show ip protocols command, as shown in Example 4-8. From the Library of Alexey Evseenko 146 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Note In the command metric weights 0 1 0 1 1 0, the first number (that is, the leftmost 0) represents the Type of Service (ToS) value with which EIGRP packets should be marked. This is a Quality of Service (QoS) setting. It equals 0 and cannot be changed to a different value. The remaining five numbers are the K-values: K1, K2, K3, K4, and K5, respectively. Example 4-8 Mismatched K-values R2(config)# router eigrp 1 R2(config-router)# metric weights 0 1 0 1 1 0 R2(config-router)# end Feb 23 18:48:21.599: %DUAL-5-NBRCHANGE: IP-EIGRP(0) 1: Neighbor 10.1.12.1 (Serial0/0/1) is down: metric changed R2# Feb 23 18:48:24.907: %DUAL-5-NBRCHANGE: IP-EIGRP(0) 1: Neighbor 10.1.12.1 (Serial0/0/1) is down: K-value mismatch R2# show ip protocols Routing Protocol is "eigrp 1" Outgoing update filter list for all interfaces is not set Incoming update filter list for all interfaces is not set Default networks flagged in outgoing updates Default networks accepted from incoming updates EIGRP metric weight K1=1, K2=0, K3=1, K4=1, K5=0 ! lines omitted for brevity EIGRP Router ID EIGRP uses a concept of a representing each router with a router ID (RID). The EIGRP RID is a 32-bit number, represented in dotted decimal. Each router determines its RID when the EIGRP process starts, using the same general rules as does OSPF for determining the OSPF RID, as follows: Key Topic Step 1. Step 2. Use the configured value (using the eigrp router-id a.b.c.d EIGRP subcommand). Use the highest IPv4 address on an up/up loopback interface. Step 3. Use the highest IPv4 address on an up/up nonloopback interface. Although EIGRP does require each router to have an RID, the actual value is of little practical importance. The EIGRP show commands seldom list the RID value, and unlike OSPF RIDs, engineers do not need to know each router’s EIGRP RID to interpret the EIGRP topology database. Additionally, although it is best to make EIGRP RIDs unique, duplicate RIDs do not prevent routers from becoming neighbors. The only time the value of EIGRP RIDs matters is when injecting external routes into EIGRP. In that case, the routers injecting the external routes must have unique RIDs to avoid confusion. From the Library of Alexey Evseenko Chapter 4: Fundamental EIGRP Concepts 147 Neighborship over WANs EIGRP configuration and neighborship rules do not differ when comparing typical LAN and typical WAN technologies. However, some design and operational differences exist, particularly regarding which routers become neighbors with which other routers. This short section closes the EIGRP neighbor discussion with a brief look at Frame Relay, MPLS VPNs, and Metro Ethernet as implemented with Virtual Private LAN Service (VPLS). Neighborship on Frame Relay Frame Relay provides a Layer 2 WAN service. Each router connects to the service using a physical serial link, called a Frame Relay access link. The provider then creates logical connections, called permanent virtual circuits (PVC), which are logical paths between pairs of routers connected to a Frame Relay service. Any pair of routers that connect to the ends of a Frame Relay PVC can send Frame Relay frames to each other. Therefore, they can send IP packets and become EIGRP neighbors. Figure 4-7 shows a typical case, with R1 as a central-site router, and R2, R3, and R4 acting as branch routers. R1 Frame Relay R2 R3 Legend: PVC EIGRP Neighborship Figure 4-7 EIGRP Neighborships over Frame Relay R4 From the Library of Alexey Evseenko 148 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Figure 4-7 shows EIGRP neighborships, but note that all routers can learn all routes in the internetwork, even though not all routers become neighbors. The neighborships can only form when a PVC exists between the two routers. Neighborship on MPLS VPN Multiprotocol Label Switching (MPLS) Virtual Private Networks (VPN) create a WAN service that has some similarities but many differences when compared to Frame Relay. The customer routers connect to the service, often with serial links but at other times with Frame Relay PVCs or with Ethernet. The service itself is a Layer 3 service, forwarding IP packets through a cloud. As a result, no predefined PVCs need to exist between the customer routers. Additionally, the service uses routers at the edge of the service provider cloud—generically called provider edge (PE) routers—and these routers are Layer 3 aware. That Layer 3 awareness means that the customer edge (CE) routers form an EIGRP neighborship with the PE router on the other end of their local access link, as shown in Figure 4-8. The PE routers exchange their routes, typically using Multiprotocol BGP (MP-BGP), a topic outside the scope of this book. However, all the CE routers then learn routes from each other, although each CE router has only one EIGRP neighborship for each of its connections into the MPLS VPN cloud. R1 PE PE PE PE R2 R3 Legend: EIGRP Neighborship Figure 4-8 EIGRP Neighborships over MPLS VPN MPLS VPNs R4 From the Library of Alexey Evseenko Chapter 4: Fundamental EIGRP Concepts 149 Neighborship on Metro Ethernet The term Metropolitan Ethernet (MetroE) represents a range of Layer 2 WAN services in which the CE device connects to the WAN service using some form of Ethernet. Because MetroE provides a Layer 2 Ethernet service, the service delivers an Ethernet frame sent by one customer router to another customer router (for unicast frames), or to many other routers (for multicast or broadcast frames). MetroE encompasses several underlying technologies to create the service. Of note for the purposes of this book are the Virtual Private Wire Service (VPWS) and the Virtual Private LAN Service (VPLS). Both technical specifications allow for connections using Ethernet links, with the service forwarding Ethernet frames. VPWS focuses on point-topoint topologies, whereas VPLS supports multipoint, approximating the concept of the entire WAN service acting like one large Ethernet switch. Because it is a Layer 2 service, MetroE does not have any Layer 3 awareness, and customer routers (typically referenced with the more general service provider term customer premises equipment, or CPE) see the MetroE service as a VLAN. Because the customer routers connect to the service as a VLAN, all the routers connected to the service can become EIGRP neighbors, as shown in Figure 4-9. R1 Gi0/0 Metro Ethernet Fa0/1 R2 Fa0/1 R3 Legend: EIGRP Neighborship Figure 4-9 EIGRP Neighborships over Metro Ethernet Fa0/1 R4 From the Library of Alexey Evseenko 150 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Exam Preparation Tasks Planning Practice The CCNP ROUTE exam expects test takers to be able to review design documents, create implementation plans, and create verification plans. This section provides some exercises that can help you to take a step back from the minute details of the topics in this chapter, so that you can think about the same technical topics from the planning perspective. For each planning practice table, simply complete the table. Note that any numbers in parentheses represent the number of options listed for each item in the solutions in Appendix F, “Completed Planning Practice Tables,” which you can find on the CD-ROM accompanying this book. Design Review Table Table 4-5 lists several design goals related to this chapter. If these design goals were listed in a design document, and you had to take that document and develop an implementation plan, what implementation options come to mind? For any configuration items, a general description can be used, without any concern about the specific parameters. Table 4-5 Design Review Design Goal Improve EIGRP convergence. Implement EIGRP on each router so that neighborships are formed (2). Possible Implementation Choices Covered in This Chapter Limit neighborship formation on interfaces matched with an EIGRP network command (3). Implementation Plan Peer Review Table Table 4-6 shows a list of questions that others might ask, or that you might think about, during a peer review of another network engineer’s implementation plan. Complete the table by answering the questions. From the Library of Alexey Evseenko Chapter 4: Fundamental EIGRP Concepts 151 Table 4-6 Notable Questions from This Chapter to Consider During an Implementation Plan Peer Review Question What happens on a router interface on which an EIGRP network command matches the interface? (2) Answer What configuration settings prevent EIGRP neighbor discovery on an EIGRP-enabled interface? (2) What configuration settings prevent any neighborships on an EIGRP-enabled interface? What settings do potential neighbors check before becoming EIGRP neighbors? (5) What settings that you might think would impact EIGRP neighbor relationships actually do not prevent neighborship? (3) Create an Implementation Plan Table To practice skills useful when creating your own EIGRP implementation plan, list in Table 4-7 configuration commands related to the configuration of the following features. You might want to record your answers outside the book, and set a goal to complete this table (and others like it) from memory during your final reviews before taking the exam. Table 4-7 Implementation Plan Configuration Memory Drill Feature Enabling EIGRP on interfaces Configuration Commands/Notes Setting Hello and Hold Timers Passive interfaces Static EIGRP neighbors K-values EIGRP router ID Choose Commands for a Verification Plan Table To practice skills useful when creating your own EIGRP verification plan, list in Table 4-8 all commands that supply the requested information. You might want to record your answers outside the book, and set a goal to complete this table (and others like it) from memory during your final reviews before taking the exam. From the Library of Alexey Evseenko 152 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Table 4-8 Verification Plan Memory Drill Information Needed Command Routes that have been added to the IP routing table by EIGRP. All routes in a router’s routing table. The specific route for a single destination address or subnet. A listing of all (both statically configured and dynamically discovered) EIGRP neighbors. Notation as to whether a neighbor was dynamically discovered or statically configured. A listing of statistics regarding the numbers of EIGRP messages sent and received by a router. A listing of interfaces on which EIGRP has been enabled (by virtue of the EIGRP network command). A listing of the number of EIGRP peers known through a particular interface. The elapsed time since a neighborship was formed. The parameters of any EIGRP network commands. The configured Hello Timer for an interface. The configured Hold Timer for an interface. The current actual Hold Timer for a neighbor. A router’s EIGRP ASN. A list of EIGRP passive interfaces. A list of nonpassive EIGRP interfaces. A listing of EIGRP K-values. A listing of traffic statistics about EIGRP. A router’s EIGRP Router ID. Review All the Key Topics Review the most important topics from inside the chapter, noted with the Key Topic icon in the outer margin of the page. Table 4-9 lists a reference of these key topics and the page numbers on which each is found. From the Library of Alexey Evseenko Chapter 4: Fundamental EIGRP Concepts 153 Table 4-9 Key Topics for Chapter 4 Key Topic Key Topic Element Description Page Number List Configuration step review for basic EIGRP 125 configuration Table 4-2 Key EIGRP verification commands 128 Table 4-3 Summary of EIGRP features and facts 133 List Methods of disallowing EIGRP neighborships on an 139 interface, while still advertising the connected subnet Table 4-4 List of items that can impact the formation of 144 EIGRP neighborships List Rules for choosing an EIGRP Router ID 146 Complete the Tables and Lists from Memory Print a copy of Appendix D, “Memory Tables,” (found on the CD), or at least the section for this chapter, and complete the tables and lists from memory. Appendix E, “Memory Tables Answer Key,” also on the CD, includes completed tables and lists to check your work. Define Key Terms Define the following key terms from this chapter, and check your answers in the glossary: K-value, neighborship, Hello interval, Hold Timer, passive interface From the Library of Alexey Evseenko This chapter covers the following subjects: ■ Building the EIGRP Topology Table: This sec- tion discusses how a router seeds its local EIGRP topology table, and how neighboring EIGRP routers exchange topology information. ■ Building the IP Routing Table: This section explains how routers use EIGRP topology data to choose the best routes to add to their local routing tables. ■ Optimizing EIGRP Convergence: This section examines items that have an impact on how fast EIGRP converges for a given route. ■ Route Filtering: This section examines how to filter prefixes from being sent in EIGRP Updates or filter them from being processed when received in an EIGRP Update. ■ Route Summarization: This section discusses the concepts and configuration of EIGRP route summarization. ■ Default Routes: This section examines the benefits of using default routes, and the mechanics of two methods for configuring default routes with EIGRP. From the Library of Alexey Evseenko CHAPTER 5 Advanced EIGRP Concepts Enhanced Interior Gateway Routing Protocol (EIGRP), like Open Shortest Path First (OSPF), uses three major branches of logic, each of which populates a different table. EIGRP begins by forming neighbor relationships and listing those relationships in the EIGRP neighbor table (as described in Chapter 4, “Fundamental EIGRP Concepts”). EIGRP then exchanges topology information with these same neighbors, with newly learned information being added to the router’s EIGRP topology table. Finally, each router processes the EIGRP topology table to choose the best IP routes currently available, adding those IP routes to the IP routing table. This chapter moves from the first major branch (neighborships, as covered in Chapter 4) to the second and third branches: EIGRP topology and EIGRP routes. To that end, the first major section of this chapter describes the protocol used by EIGRP to exchange the topology information and details exactly what information EIGRP puts in its messages sent between routers. The next major section shows how EIGRP examines the topology data to then choose the best route currently available for each prefix. The final section of this chapter examines how to optimize the EIGRP convergence processes so that when the topology does change, the routers in the internetwork quickly converge to the then-best routes. This chapter concludes with three sections covering categories of tools that you can use to limit the number of routes in the routing table: route filtering, route summarization, and default routes. “Do I Know This Already?” Quiz The “Do I Know This Already?” quiz allows you to assess whether you should read the entire chapter. If you miss no more than two of these 18 self-assessment questions, you might want to move ahead to the “Exam Preparation Tasks” section. Table 5-1 lists the major headings in this chapter and the “Do I Know This Already?” quiz questions covering the material in those headings, so that you can assess your knowledge of these specific areas. The answers to the “Do I Know This Already?” quiz appear in Appendix A. Table 5-1 “Do I Know This Already?” Foundation Topics Section-to-Question Mapping Foundation Topics Section Building the EIGRP Topology Table Building the IP Routing Table Optimizing EIGRP Convergence Questions 1–3 4–8 9 Route Filtering 10–13 From the Library of Alexey Evseenko 156 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Foundation Topics Section Route Summarization Default Routes Questions 14–16 17, 18 1. Which of the following are methods that EIGRP uses to initially populate (seed) its EIGRP topology table, before learning topology data from neighbors? (Choose two.) a. By adding all subnets listed by the show ip route connected command b. By adding the subnets of working interfaces over which static neighbors have been defined c. By adding subnets redistributed on the local router from another routing source d. By adding all subnets listed by the show ip route static command 2. Which of the following are both advertised by EIGRP in the Update message and included in the formula for calculating the integer EIGRP metric? (Choose two.) a. Jitter b. Delay c. MTU d. Reliability 3. Router R1 uses S0/0 to connect through a T/1 to the Frame Relay service. Five PVCs terminate on the serial link. Three PVCs (101, 102, and 103) are configured on subinterface S0/0.1, and one each (104 and 105) are on S0/0.2 and S0/0.3. The configuration shows no configuration related to EIGRP WAN bandwidth control, and the bandwidth command is not configured. Which of the following is true about how Cisco IOS tries to limit EIGRP’s use of bandwidth on S0/0? a. R1 limits EIGRP to around 250 kbps on DLCI 102. b. R1 limits EIGRP to around 250 kbps on DLCI 104. c. R1 limits EIGRP to around 150 kbps on every DLCI. d. R1 does not limit EIGRP because no WAN bandwidth control has been configured. 4. The output of show ip eigrp topology on Router R1 shows the following output, which is all the output related to subnet 10.11.1.0/24. How many feasible successor routes does R1 have for 10.11.1.0/24? P 10.11.1.0/24, 2 successors, FD is 2172419 via 10.1.1.2 (2172423/28167), Serial0/0/0.1 via 10.1.1.6 (2172423/28167), Serial0/0/0.2 a. 0 b. 1 c. 2 d. 3 From the Library of Alexey Evseenko Chapter 5: Advanced EIGRP Concepts 157 5. A network design shows that R1 has four different possible paths from itself to the data center subnets. Which of the following can influence which of those routes become feasible successor routes, assuming that you follow the Cisco-recommended practice of not changing metric weights? (Choose two.) a. The configuration of EIGRP offset lists b. Current link loads c. Changing interface delay settings d. Configuration of variance 6. Router R1 is three router hops away from subnet 10.1.1.0/24. According to various show interfaces commands, all three links between R1 and 10.1.1.0/24 use the following settings: bandwidth (in kbps): 1000, 500, 100000 and delay (in microseconds): 12000, 8000, 100. Which of the following answers correctly identify a value that feeds into the EIGRP metric calculation? (Choose two.) a. Bandwidth of 101,500 kilobits per second b. Bandwidth of about 34,000 kilobits per second c. Bandwidth of 500 kilobits per second d. Delay of 1200 tens-of-microseconds e. Delay of 2010 tens-of-microseconds f. Delay of 20100 tens microseconds 7. Routers R1 and R2 are EIGRP neighbors. R1 has been configured with the eigrp stub connected command. Which of the following are true as a result? (Choose two.) a. R1 can learn EIGRP routes from R2, but R2 cannot learn EIGRP routes from R1. b. R1 can send IP packets to R2, but R2 cannot send IP packets to R1. c. R2 no longer learns EIGRP routes from R1 for routes not connected to R1. d. R1 no longer replies to R2’s Query messages. e. R2 no longer sends Query messages to R1. 8. Router R1 lists four routes for subnet 10.1.1.0/24 in the output of the show ip eigrp topology all-links command. The variance 100 command is configured, but no other related commands are configured. Which of the following rules is true regarding R1’s decision of what routes to add to the IP routing table? Note that RD refers to reported distance and FD to feasible distance. a. Adds all routes for which the metric is <= 100 * the best metric among all routes b. Adds all routes because of the ridiculously high variance setting c. Adds all successor and feasible successor routes d. Adds all successor and feasible successor routes for which the metric is <= 100 * the best metric among all routes From the Library of Alexey Evseenko 158 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide 9. A network design shows that R1 has four possible paths from itself to the data center subnets. Which of the following commands is most likely to show you all the possible next-hop IP addresses for these four possible routes? a. show ip eigrp topology b. show ip eigrp topology all-links c. show ip route eigrp d. show ip route eigrp all-links e. show ip eigrp topology all-learned 10. Router R1 has been configured for EIGRP. The configuration also includes an ACL with one line—access-list 1 permit 10.10.32.0 0.0.15.255—and the EIGRP configuration includes the distribute-list 1 in command. Which of the following routes could not be displayed in the output of the show ip eigrp topology command as a result? (Choose two.) a. 10.10.32.0 /19 b. 10.10.44.0 /22 c. 10.10.40.96 /27 d. 10.10.48.0 /23 e. 10.10.60.0 /30 11. The command output that follows was gathered from Router R1. If correctly referenced by an EIGRP distribution list that filters outbound Updates, which of the following statements are true about the filtering of various prefixes by this prefix list? (Choose three.) R1# sh ip prefix-list ip prefix-list question: 3 entries seq 5 deny 10.1.2.0/24 ge 25 le 27 seq 15 deny 10.2.0.0/16 ge 30 le 30 seq 20 permit 0.0.0.0/0 a. Prefix 10.1.2.0/24 will be filtered because of clause 5. b. Prefix 10.1.2.224/26 will be filtered because of clause 5. c. Prefix 10.2.2.4/30 will be filtered because of clause 15. d. Prefix 10.0.0.0/8 will be permitted. e. Prefix 0.0.0.0/0 will be permitted. From the Library of Alexey Evseenko Chapter 5: Advanced EIGRP Concepts 159 12. R1 has correctly configured EIGRP to filter routes using a route map named question. The configuration that follows shows the entire route map and related configuration. Which of the following is true regarding the filtering action on prefix 10.10.10.0/24 in this case? route-map question deny 10 match ip address 1 route-map question permit 20 match ip address prefix-list fred ! access-list 1 deny 10.10.10.0 0.0.0.255 ip prefix-list fred permit 10.10.10.0/23 le 25 a. It will be filtered because of the deny action in route map clause 10. b. It will be allowed because of the double negative (two deny references) in clause 10. c. It will be permitted because of matching clause 20’s reference to prefix-list fred. d. It will be filtered because of matching the implied deny all route map clause at the end of the route map. 13. An engineer has typed four different single-line prefix lists in a word processor. The four answers show the four different single-line prefix lists. The engineer then does a copy/paste of the configuration into a router. Which of the lists could match a subnet whose prefix length is 27? (Choose two.) a. ip prefix-list fred permit 10.0.0.0/24 ge 16 le 28 b. ip prefix-list barney permit 10.0.0.0/24 le 28 c. ip prefix-list wilma permit 10.0.0.0/24 ge 25 d. ip prefix-list betty permit 10.0.0.0/24 ge 28 14. An engineer plans to configure summary routes with the ip summary-address eigrp asn prefix mask command. Which of the following, when added to such a command, would create a summary that includes all four of the following subnets: 10.1.100.0/25, 10.1.101.96/27, 10.1.101.224/28, and 10.1.100.128 /25? a. 10.1.0.0 255.255.192.0 b. 10.1.64.0 255.255.192.0 c. 10.1.100.0 255.255.255.0 d. 10.1.98.0 255.255.252.0 From the Library of Alexey Evseenko 160 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide 15. R1 has five working interfaces, with EIGRP neighbors existing off each interface. R1 has routes for subnets 10.1.1.0/24, 10.1.2.0/24, and 10.1.3.0/24, with EIGRP integer metrics of roughly 1 million, 2 million, and 3 million, respectively. An engineer then adds the ip summary-address eigrp 1 10.1.0.0 255.255.0.0 command to interface Fa0/0. Which of the following is true? a. R1 loses and then reestablishes neighborships with all neighbors. b. R1 no longer advertises 10.1.1.0/24 to neighbors connected to Fa0/0. c. R1 advertises a 10.1.0.0/16 route out Fa0/0, with metric of around 3 million (largest metric of component subnets). d. R1 advertises a 10.1.0.0/16 route out Fa0/0, with metric of around 2 million (median metric of component subnets). 16. In a lab, R1 connects to R2, which connects to R3. R1 and R2 each have several working interfaces, all assigned addresses in Class A network 10.0.0.0. Router R3 has some working interfaces in Class A network 10.0.0.0, and others in Class B network 172.16.0.0. The engineer experiments with the auto-summary command on R2 and R3, enabling and disabling the command in various combinations. Which of the following combinations will result in R1 seeing a route for 172.16.0.0 /16, instead of the individual subnets of Class B network 172.16.0.0? (Choose two.) a. auto-summary on R2 and no auto-summary on R3 b. auto-summary on R2 and auto-summary on R3 c. no auto-summary on R2 and no auto-summary on R3 d. no auto-summary on R2 and auto-summary on R3 17. Router R1 exists in an enterprise that uses EIGRP as its routing protocol. The show ip route command output on Router R1 lists the following phrase: “Gateway of last resort is 1.1.1.1 to network 2.0.0.0.” Which of the following is most likely to have caused this output to occur on R1? a. R1 has been configured with an ip default-network 2.0.0.0 command. b. R1 has been configured with an ip route 0.0.0.0 0.0.0.0 1.1.1.1 command. c. R1 has been configured with an ip route 2.0.0.0 255.0.0.0 1.1.1.1 command. d. Another router has been configured with an ip default-network 2.0.0.0 command. From the Library of Alexey Evseenko Chapter 5: Advanced EIGRP Concepts 161 18. Enterprise Router R1 connects an enterprise to the Internet. R1 needs to create and advertise a default route into the enterprise using EIGRP. The engineer creating the implementation plan has chosen to base this default route on the ip route command, rather than using ip default-network. Which of the following are not useful steps with this style of default route configuration? (Choose two.) a. Create the default route on R1 using the ip route 0.0.0.0 0.0.0.0 outgoing- interface command. b. Redistribute the statically configured default route. c. Disable auto-summary. d. Configure the network 0.0.0.0 command. e. Ensure that R1 has no manually configured summary routes using the ip summary-address eigrp command. From the Library of Alexey Evseenko 162 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Foundation Topics Building the EIGRP Topology Table The overall process of building the EIGRP topology table is relatively straightforward. EIGRP defines some basic topology information about each route for each unique prefix/ length (subnet). This basic information includes the prefix, prefix length, metric information, and a few other details. EIGRP neighbors exchange topology information, with each router storing the learned topology information in its respective EIGRP topology table. EIGRP on a given router can then analyze the topology table, or topology database, and choose the best route for each unique prefix/length. EIGRP uses much simpler topology data than does OSPF, which is a link-state protocol that must describe the entire topology of a portion of a network with its topology database. EIGRP, essentially an advanced distance vector protocol, does not need to define nearly as much topology data, nor do EIGRP routers need to run the complex Shortest Path First (SPF) algorithm. This first major section examines the EIGRP topology database, how routers create and flood topology data, and some specific issues related to WAN links. Seeding the EIGRP Topology Table Before a router can send EIGRP topology information to a neighbor, that router must have some topology data in its topology table. Routers can, of course, learn about subnets and the associated topology data from neighboring routers. However, to get the process started, each EIGRP router needs to add topology data for some prefixes so that it can then advertise these routes to its EIGRP neighbors. A router’s EIGRP process adds subnets to its local topology table, without learning the topology data from an EIGRP neighbor, from three sources: Key Topic ■ Prefixes of connected subnets for interfaces on which EIGRP has been enabled on that router using the network command ■ Prefixes of connected subnets for interfaces referenced in an EIGRP neighbor command ■ Prefixes learned by the redistribution of routes into EIGRP from other routing protocols or routing information sources After a router adds such prefixes to its local EIGRP topology database, that router can then advertise the prefix information, along with other topology information associated with each prefix, to each working EIGRP neighbor. Each router adds any learned prefix information to its topology table, and then that router advertises the new information to other neighbors. Eventually, all routers in the EIGRP domain learn about all prefixes unless some other feature, such as route summarization or route filtering, alters the flow of topology information. From the Library of Alexey Evseenko Chapter 5: Advanced EIGRP Concepts 163 The Content of EIGRP Update Message EIGRP uses five basic protocol messages to do its work: Key Topic ■ Hello ■ Update ■ Query ■ Reply ■ ACK (acknowledgment) EIGRP uses two messages as part of the topology data exchange process: Update and ACK. The Update message contains the topology information, whereas the ACK acknowledges receipt of the update packet. The EIGRP Update message contains the following information: ■ Prefix ■ Prefix length ■ Metric components: bandwidth, delay, reliability, and load ■ Nonmetric items: MTU and hop count Note Many courses and books over the years have stated that MTU is part of the EIGRP metric. In practice, the MTU has never been part of the metric calculation, although it is included in the topology data for each prefix. To examine this entire process in more detail, see Figure 5-1 and Figure 5-2. 10.11.1.1 Fa0/0 10.12.1.1 Fa0/0 1.2 S0/0/0.1 B1 2.2 S0/0/0.2 1.6 S0/0/0.1 B2 2.6 S0/0/0.2 1.1 S0/0/0.1 WAN1 1.5 S0/0/0.2 10.9.1.1/24 Fa0/0 2.1 S0/0/0.1 10.9.1.2/24 2.5 WAN2 Fa0/0 S0/0/0.2 Note: All WAN IP addresses begin with 10.1 Figure 5-1 Typical WAN Distribution and Branch Office Design From the Library of Alexey Evseenko 164 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Figure 5-1 shows a portion of an enterprise network that will be used in several examples in this chapter. Routers B1 and B2 represent typical branch office routers, each with two Frame Relay permanent virtual circuits (PVC) connected back to the main site. WAN1 and WAN2 are WAN distribution routers, each of which could have dozens or hundreds of PVCs. The routers in Figure 5-1 have been configured and work. For EIGRP, all routers have been configured with as many defaults as possible, with the only configuration related to EIGRP being the router eigrp 1 and network 10.0.0.0 commands on each router. Next, consider what Router B1 does for its connected route for subnet 10.11.1.0/24, which is located on B1’s LAN. B1 matches its Fa0/0 interface IP address (10.11.1.1) because of its network 10.0.0.0 configuration command. So, as mentioned earlier, B1 seeds its own topology table with an entry for this prefix. This topology table entry also lists the interface bandwidth of the associated interface and delay of the associated interface. Using default settings for Fast Ethernet interfaces, B1 uses a bandwidth of 100,000 kbps (the same as 100 Mbps) and a delay of 10, meaning 10 tens-of-microseconds. Router B1 also includes a default setting for the load (1) and reliability (255), even though the router, using the default K-value settings, will not use these values in its metric calculations. Finally, B1 adds to the topology database the MTU of the local interface and a hop count of 0 because the subnet is connected. Now that B1 has added some topology information to its EIGRP topology database, Figure 5-2 shows how B1 propagates the topology information to router WAN1 and beyond. Interface Settings: Delay 10 Bandwidth 100,000 1 B1 Update: Subnet 10.11.1.0/24 Delay 10 Bandwidth 100,000 (MTU, Load, Reliability, Hops) 2 Topology Table: Subnet 10.11.1.0/24 Delay = 10 + 2000 = 2010 Bandwidth = Min(100,000 or 1544) (MTU, Load, Reliability, Hops) Interface S0/0/0.1 WAN1 Delay 2000 Bandwidth 1544 3 Update: Subnet 10.11.1.0/24 Delay 2010 Bandwidth 1544 (MTU, Load, Reliability, Hops) Figure 5-2 Contents of EIGRP Update Messages The steps in Figure 5-2 can be explained as follows: Step 1. Step 2. B1 advertises the prefix (10.11.1.0/24) using an EIGRP Update message. The message includes the four metric components, plus MTU and hop count— essentially the information in B1’s EIGRP topology table entry for this prefix. WAN1 receives the Update message and adds the topology information for 10.11.1.0/24 to its own EIGRP topology table, with these changes: ■ WAN1 considers the interface on which it received the Update (S0/0/0.1) to be the outgoing interface of a potential route to reach 10.11.1.0/24. ■ WAN1 adds the delay of S0/0/0.1 (2000 tens-of-microseconds per Figure 5-2) to the delay listed in the Update message. From the Library of Alexey Evseenko Chapter 5: Advanced EIGRP Concepts 165 ■ WAN1 compares the bandwidth of S0/0/0.1 (1544 kbps per Figure 5-2) to the bandwidth listed in the Update message (100,000 kbps) and chooses the lower value (1544) as the bandwidth for this route. Step 3. ■ WAN1 also updates load (highest value), reliability (lowest value), and MTU (lowest value) based on similar comparisons, and adds 1 to the hop count. WAN1 then sends an Update to its neighbors, with the metric components listed in their own topology table. This example provides a good backdrop to understand how EIGRP uses cumulative delay and minimum bandwidth in its metric calculation. Note that at Step 2, Router WAN1 adds to the delay value but does not add the bandwidth. For bandwidth, WAN1 simply chooses the lowest bandwidth, comparing the bandwidth of its own interface (S0/0/0.1) with the bandwidth listed in the received EIGRP update. Next, consider this logic on other routers (not shown in the figure) as WAN1 floods this routing information throughout the enterprise. WAN1 then sends this topology information to another neighbor, and that router sends the topology data to another, and so on. If the bandwidth of those links were 1544 or higher, the bandwidth setting used by those routers would remain the same, because each router would see that the routing update’s bandwidth (1544 kbps) was lower than the link’s bandwidth. However, each router would add something to the delay. As a final confirmation of the contents of this Update process, Example 5-1 shows the details of the EIGRP topology database for prefix 10.11.1.0/24 on both B1 and WAN1. Example 5-1 Topology Database Contents for 10.11.1.0/24, on B1 and WAN1 ! On Router B1: !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! B1# show ip eigrp topology 10.11.1.0/24 IP-EIGRP (AS 1): Topology entry for 10.11.1.0/24 State is Passive, Query origin flag is 1, 1 Successor(s), FD is 28160 Routing Descriptor Blocks: 0.0.0.0 (FastEthernet0/0), from Connected, Send flag is 0x0 Composite metric is (28160/0), Route is Internal Vector metric: Minimum bandwidth is 100000 Kbit Total delay is 100 microseconds Reliability is 255/255 Load is 1/255 Minimum MTU is 1500 Hop count is 0 ! On Router WAN1: !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! WAN1# show ip eigrp topology 10.11.1.0/24 IP-EIGRP (AS 1): Topology entry for 10.11.1.0/24 State is Passive, Query origin flag is 1, 1 Successor(s), FD is 2172416 Routing Descriptor Blocks: From the Library of Alexey Evseenko 166 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide 10.1.1.2 (Serial0/0/0.1), from 10.1.1.2, Send flag is 0x0 Composite metric is (2172416/28160), Route is Internal Vector metric: Minimum bandwidth is 1544 Kbit Total delay is 20100 microseconds Reliability is 255/255 Load is 1/255 Minimum MTU is 1500 Hop count is 1 The highlighted portions of the output match the details shown in Figure 5-2, but with one twist relating to the units on the delay setting. The Cisco IOS delay command, which lets you set the delay, along with the data stored in the EIGRP topology database, uses a unit of tens-of-microseconds. However, the show interfaces and show ip eigrp topology commands list delay in a unit of microseconds. For example, WAN1’s listing of “20100 microseconds” matches the “2010 tens-of-microseconds” shown in Figure 5-2. The EIGRP Update Process So far, this chapter has focused on the detailed information that EIGRP exchanges with a neighbor about each prefix. This section takes a broader look at the process. When EIGRP neighbors first become neighbors, they begin exchanging topology information using Update messages using these rules: Key Topic ■ When a neighbor first comes up, the routers exchange full updates, meaning that the routers exchange all topology information. ■ After all prefixes have been exchanged with a neighbor, the updates cease with that neighbor if no changes occur in the network. There is no subsequent periodic reflooding of topology data. ■ If something changes—for example, one of the metric components changes, links fail, links recover, or new neighbors advertise additional topology information—the routers send partial updates about only the prefixes whose status or metric components have changed. ■ If neighbors fail and then recover, or new neighbor adjacencies are formed, full updates occur over these adjacencies. ■ EIGRP uses Split Horizon rules on most interfaces by default, which impacts exactly which topology data EIGRP sends during both full and partial updates. Split Horizon, the last item in the list, needs a little more explanation. Split Horizon limits the prefixes that EIGRP advertises out an interface. Specifically, if the currently best route for a prefix lists a particular outgoing interface, Split Horizon causes EIGRP to not include that prefix in the Update sent out that same interface. For example, router WAN1 uses S0/0/0.1 as its outgoing interface for subnet 10.11.1.0/24. So, WAN1 would not advertise prefix 10.11.1.0/24 in its Update messages sent out S0/0/0.1. From the Library of Alexey Evseenko Chapter 5: Advanced EIGRP Concepts 167 To send the Updates, EIGRP uses the Reliable Transport Protocol (RTP) to send the EIGRP Updates and confirm their receipt. On point-to-point topologies such as serial links, MPLS VPNs, and Frame Relay networks when using point-to-point subinterfaces, the EIGRP Update and ACK messages use a simple process of acknowledging each Update with an ACK. On multiaccess data links, EIGRP typically sends Update messages to multicast address 224.0.0.10 and expects a unicast EIGRP ACK message from each neighbor in reply. RTP manages that process, setting timers so that the sender of an Update waits a reasonable time, but not too long, before deciding whether all neighbors received the Update or whether one or more neighbors did not reply with an ACK. Interestingly, although EIGRP relies on the RTP process, network engineers cannot manipulate how this works. WAN Issues for EIGRP Topology Exchange With all default settings, after you enable EIGRP on all the interfaces in an internetwork, the topology exchange process typically does not pose any problems. However, a few scenarios exist, particularly on Frame Relay, which can cause problems. This section summarizes two issues and shows the solutions. Split Horizon Default on Frame Relay Multipoint Subinterfaces Cisco IOS support for Frame Relay allows the configuration of IP addresses on the physical serial interface, multipoint subinterfaces, or point-to-point subinterfaces. Additionally, IP packets can be forwarded over a PVC even when the routers on the opposite ends do not have to use the same interface or subinterface type. As a result, many small intricacies exist in the operation of IP and IP routing protocols over Frame Relay, particularly related to default settings on different interface types. Frame Relay supports several reasonable configuration options using different interfaces and subinterfaces, each meeting different design goals. For example, if a design includes a few centralized WAN distribution routers, with PVCs connecting each branch router to each distribution router, both distribution and branch routers might use point-to-point subinterfaces. Such a choice makes the Layer 3 topology simple, with all links acting like point-to-point links from a Layer 3 perspective. This choice also removes issues such as Split Horizon. In some cases, a design might include a small set of routers that have a full mesh of PVCs connecting each. In this case, multipoint subinterfaces might be used, consuming a single subnet and reducing the consumption of the IP address space. This choice also reduces the number of subinterfaces. Both options—using point-to-point subinterfaces or using multipoint subinterfaces— have legitimate reasons for being used. However, when using the multipoint subinterface option, a particular EIGRP issue can occur when the following are true: ■ Three or more routers, connected over a Frame Relay network, are configured as part of a single subnet. From the Library of Alexey Evseenko 168 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide ■ The routers use multipoint interfaces. ■ Either permanently or for a time, a full mesh of PVCs between the routers does not exist. For example, consider Router WAN1 shown earlier in Figure 5-1 and referenced again in Figure 5-3. In the earlier configurations, the WAN distribution routers and branch routers all used point-to-point subinterfaces and a single subnet per VC. To see the problem raised in this section, consider that same internetwork, but now the engineer has chosen to configure WAN1 to use a multipoint subinterface and a single subnet for WAN1, B1, and B2, as shown in Figure 5-3. 10.11.1.0/24 2 Update 10.11.1.0/24 . . . 10.1.1.2/29 B1 10.1.1.1/29 S0/0/0.9 WAN1 1 No PVC No Hellos No Neighbors 10.12.1.0/24 . . . But not here! (Split Horizon) 10.1.1.3/29 B2 Figure 5-3 Partial Mesh, Central Sites (WAN1) Uses Multipoint Subinterface The first issue to consider in this design is that B1 and B2 will not become EIGRP neighbors with each other, as noted with Step 1 in the figure. EIGRP routers must be reachable using Layer 2 frames before they can exchange EIGRP Hello messages and become EIGRP neighbors. In this case, there is no PVC between B1 and B2. B1 exchanges Hellos with WAN1, and they become neighbors, as will B2 with WAN1. However, routers do not forward received EIGRP Hellos, so WAN1 will not receive a Hello from B1 and forward it to B2 or vice versa. In short, although in the same subnet (10.1.1.0/29), B1 and B2 will not become EIGRP neighbors. The second problem occurs because of Split Horizon logic on Router WAN1, as noted with Step 2 in the figure. As shown with Step 2, B1 could advertise its routes to WAN1, and WAN1 could advertise those routes to B2—and vice versa. However, with default settings, WAN1 will not advertise those routes because of its default setting of Split Horizon (a default interface subcommand setting of ip split-horizon eigrp asn). As a result, WAN1 receives the Update from B1 on its S0/0/0.9 subinterface, but Split Horizon prevents WAN1 from advertising that topology data to B2 in Updates sent out interface S0/0/0.9, and vice versa. From the Library of Alexey Evseenko Chapter 5: Advanced EIGRP Concepts 169 The solution is somewhat simple—just configure the no ip split-horizon eigrp asn command on the multipoint subinterface on WAN1. The remote routers, B1 and B2 in this case, still do not become neighbors, but that does not cause a problem by itself. With Split Horizon disabled on WAN1, B1 and B2 learn routes to the other branch’s subnets. Example 5-2 lists the complete configuration and the command to disable Split Horizon. Also shown in Example 5-2 is the output of the show ip eigrp interfaces detail s0/0/0.9 command, which shows the operational state of Split Horizon on that subinterface. Note Frame Relay configuration is considered a prerequisite, because it is part of the CCNA exam and courses. Example 5-2 uses frame-relay interface-dlci commands and relies on Inverse ARP. However, if frame-relay map commands were used instead, disabling Inverse ARP, the EIGRP details discussed in this example would remain unchanged. Example 5-2 Frame Relay Multipoint Configuration on WAN1 ! On Router WAN1: !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! interface Serial0/0/0 no ip address encapsulation frame-relay interface Serial0/0/0.9 multipoint ip address 10.1.1.1 255.255.255.248 no ip split-horizon eigrp 1 frame-relay interface-dlci 103 frame-relay interface-dlci 104 ! router eigrp 1 network 10.0.0.0 ! Check Split Horizon State: !!!!!!!!!!!!!!!!!!!!!!!!!!!!!! WAN1# show ip eigrp interfaces detail s0/0/0.9 EIGRP-IPv4 Interfaces for AS(1) Xmit Queue PeerQ Mean Pacing Time Multicast Interface Peers Un/Reliable Un/Reliable SRTT Un/Reliable Flow Timer Se1/0 1 0/0 0/0 59 0/16 300 Hello-interval is 5, Hold-time is 15 Split-horizon is disabled Next xmit serial Packetized sent/expedited: 3/0 Hello's sent/expedited: 248/2 Un/reliable mcasts: 0/0 Un/reliable ucasts: 4/4 Mcast exceptions: 0 CR packets: 0 ACKs suppressed: 0 Pending Routes 0 From the Library of Alexey Evseenko 170 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Retransmissions sent: 0 Out-of-sequence rcvd: 0 Topology-ids on interface - 0 Authentication mode is not set Note The [no] ip split-horizon command controls Split Horizon behavior for RIP; the [no] ip split-horizon eigrp asn command controls Split Horizon behavior for EIGRP. EIGRP WAN Bandwidth Control In a multiaccess WAN, one physical link passes traffic for multiple data link layer destinations. For example, a WAN distribution router connected to many branches using Frame Relay might literally terminate hundreds, or even thousands, of Frame Relay PVCs. In a nonbroadcast multiaccess (NBMA) medium such as Frame Relay, when a router needs to send EIGRP updates, the Updates cannot be multicasted at Layer 2. So, the router must send a copy of the Update to each reachable neighbor. For a WAN distribution router with many Frame Relay PVCs, the sheer amount of traffic sent over the Frame Relay access link might overload the link. The EIGRP WAN bandwidth control allows the engineer to protect a multiaccess Frame Relay interface from being overrun with too much EIGRP message traffic. By default, a router sends EIGRP messages out an interface but only up to 50 percent of the bandwidth defined on the interface with the bandwidth command. The engineer can adjust this percentage using the ip bandwidth-percent eigrp asn percent interface/subinterface subcommand. Regardless of the percentage, Cisco IOS then limits the rate of sending the EIGRP messages so that the rate is not exceeded. To accomplish this, Cisco IOS queues the EIGRP messages in memory, delaying them briefly. The command to set the bandwidth percentage is simple, but there are a few caveats to keep in mind when trying to limit the bandwidth consumed by EIGRP: ■ The Cisco IOS default for bandwidth on serial interfaces and subinterfaces is 1544 (kbps). ■ EIGRP limits the consumed bandwidth based on the percentage of interface/subinterface bandwidth. ■ This feature keys on the bandwidth of the interface or subinterface through which the neighbor is reachable, so don’t set only the physical interface bandwidth and forget the subinterfaces. ■ Recommendation: Set the bandwidth of point-to-point links to the speed of the Committed Information Rate (CIR) of the single PVC on the subinterface. ■ General recommendation: Set the bandwidth of multipoint subinterfaces to around the total CIR for all VCs assigned to the subinterface. From the Library of Alexey Evseenko Chapter 5: Advanced EIGRP Concepts 171 ■ Note that for multipoint subinterfaces, Cisco IOS WAN bandwidth control first divides the subinterface bandwidth by the number of configured PVCs and then determines the EIGRP percentage based on that number. For example, consider Figure 5-4, which shows a router with one multipoint subinterface and one point-to-point subinterface. B1 B2 S0/0/0.20 Multipoint B3 WAN1 S0/0/0.21 Point-to-Point B4 Figure 5-4 WAN1, One Multipoint, One Point-to-Point With the configuration shown in Example 5-3, WAN1 uses the following bandwidth, at most, with each neighbor: ■ B1, B2, and B3: 20 kbps (20% of 300 kbps / 3 VCs) ■ B4: 30 kbps (30% of 100 kbps) Example 5-3 Configuration of WAN1, One Multipoint, One Point-to-Point ! On Router WAN1: !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! interface Serial0/0/0.20 multipoint ip address 172.16.1.1 255.255.255.240 frame-relay interface-dlci 201 frame-relay interface-dlci 202 frame-relay interface-dlci 203 bandwidth 300 ip bandwidth-percent eigrp 1 20 ! interface Serial0/0/0.21 point-to-point ip address 172.16.1.17 255.255.255.252 frame-relay interface-dlci 221 bandwidth 100 ip bandwidth-percent eigrp 1 30 From the Library of Alexey Evseenko 172 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Building the IP Routing Table An EIGRP router builds IP routing table entries by processing the data in the topology table. Unlike OSPF, which uses a computationally complex SPF process, EIGRP uses a computationally simple process to determine which, if any, routes to add to the IP routing table for each unique prefix/length. This part of the chapter examines how EIGRP chooses the best route for each prefix/length and then examines several optional tools that can influence the choice of routes to add to the IP routing table. Calculating the Metrics: Feasible Distance and Reported Distance The EIGRP topology table entry, for a single prefix/length, lists one or more possible routes. Each possible route lists the various component metric values—bandwidth, delay, and so on. Additionally, for connected subnets, the database entry lists an outgoing interface. For routes not connected to the local router, in addition to an outgoing interface, the database entry also lists the IP address of the EIGRP neighbor that advertised the route. EIGRP routers calculate an integer metric based on the metric components. Interestingly, an EIGRP router does this calculation both from its own perspective and from the perspective of the next-hop router of the route. The two calculated values are as follows: Key Topic ■ Feasible Distance (FD): Integer metric for the route, from the local router’s perspective, used by the local router to choose the best route for that prefix. ■ Reported Distance (RD): Integer metric for the route, from the neighboring router’s perspective (the neighbor that told the local router about the route). Used by the local router when converging to a new route. Note Some texts use the term Advertised Distance (AD) instead of Reported Distance (RD) as used in this book. Be ready for either term on the CCNP ROUTE exam. However, this book uses RD exclusively. Routers use the FD to determine the best route, based on the lowest metric, and use the RD when falling back to an alternative route when the best route fails (EIGRP’s use of the RD is explained in the upcoming section “Successor and Feasible Successor Concepts”). Focusing on the FD, when a router has calculated the integer FD for each possible route to reach a single prefix/length, that router can then consider adding the lowest-metric route to the IP routing table. As a reminder, the following formula shows how EIGRP calculates the metric, assuming default settings of the EIGRP metric weights (K-values). The metric calculation grows when the slowest bandwidth in the end-to-end route decreases (the slower the bandwidth, the worse the metric), and its metric grows (gets worse) when the cumulative delay grows. Also, note that the unit of measure for slowest-bandwidth is kbps, and the unit of measure for cumulative-delay is tens-of-microseconds. Metric = 256 * [(107 / slowest-bandwidth) + cumulative-delay] From the Library of Alexey Evseenko Chapter 5: Advanced EIGRP Concepts 173 An example certainly helps in this case. Figure 5-5 repeats some information about the topology exchange process between Routers B1 and WAN1 (refer to Figure 5-1), essentially showing the metric components as sent by B1 to WAN1 (Step 1) and the metric components from WAN1’s perspective (Step 2). Interface Settings: Delay 10 Bandwidth 100,000 1 B1 Update: Subnet 10.11.1.0/24 Delay 10 Bandwidth 100,000 (MTU, Load, Reliability, Hops) 2 Topology Table: Subnet 10.11.1.0/24 Delay = 10 + 2000 = 2010 Bandwidth = Min(100,000 or 1544) (MTU, Load, Reliability, Hops) Interface Settings: WAN1 Delay 2000 Bandwidth 1544 Metrics: 3 RD = 256 (10,000,000 / 100,000) + 256 (10) = 28,160 4 FD =256 (10,000,000 / 1,544) + 256 (2010) = 2,172,416 Figure 5-5 Example Calculation of RD and FD on Router WAN1 Steps 3 and 4 in Figure 5-5 show WAN1’s calculation of the RD and FD for 10.11.1.0/24, respectively. Router WAN1 takes the metric components as received from B1, and plugs them into the formula, to calculate the RD, which is the same integer metric that Router B1 would have calculated as its FD. Step 4 shows the same formula but with the metric components as listed at Step 2—after the adjustments made on WAN1. Step 4 shows WAN1’s FD calculation, which is much larger because of the much lower constraining bandwidth plus the much larger cumulative delay. WAN1 chooses its best route to reach 10.11.1.0/24 based on the lowest FD among all possible routes. Looking back to the much more detailed Figure 5-1, presumably a couple of other routes might have been possible, but WAN1 happens to choose the route shown in Figure 5-5 as its best route. As a result, WAN1’s show ip route command lists the FD calculated in Figure 5-5 as the metric for this route, as shown in Example 5-4. Example 5-4 Router WAN1’s EIGRP Topology and IP Route Information for 10.11.1.0/24 ! Below, note that WAN1's EIGRP topology table lists two possible next-hop ! routers: 10.1.1.2 (B1) and 10.9.1.2 (WAN2). The metric for each route, ! the first number in parentheses, shows that the lower metric route is the one ! through 10.1.1.2 as next-hop. Also note that the metric components ! match Figure 5-5. ! WAN1# show ip eigrp topo 10.11.1.0/24 IP-EIGRP (AS 1): Topology entry for 10.11.1.0/24 State is Passive, Query origin flag is 1, 1 Successor(s), FD is 2172416 Routing Descriptor Blocks: 10.1.1.2 (Serial0/0/0.1), from 10.1.1.2, Send flag is 0x0 Composite metric is (2172416/28160), Route is Internal From the Library of Alexey Evseenko 174 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Vector metric: Minimum bandwidth is 1544 Kbit Total delay is 20100 microseconds Reliability is 255/255 Load is 1/255 Minimum MTU is 1500 Hop count is 1 10.9.1.2 (FastEthernet0/0), from 10.9.1.2, Send flag is 0x0 Composite metric is (2174976/2172416), Route is Internal Vector metric: Minimum bandwidth is 1544 Kbit Total delay is 20200 microseconds Reliability is 255/255 Load is 1/255 Minimum MTU is 1500 Hop count is 2 ! ! The next command not only lists the IP routing table entry for 10.11.1.0/24, ! it also lists the metric (FD), and components of the metric. ! WAN1# show ip route 10.11.1.0 Routing entry for 10.11.1.0/24 Known via "eigrp 1", distance 90, metric 2172416, type internal Redistributing via eigrp 1 Last update from 10.1.1.2 on Serial0/0/0.1, 00:02:42 ago Routing Descriptor Blocks: * 10.1.1.2, from 10.1.1.2, 00:02:42 ago, via Serial0/0/0.1 Route metric is 2172416, traffic share count is 1 Total delay is 20100 microseconds, minimum bandwidth is 1544 Kbit Reliability 255/255, minimum MTU 1500 bytes Loading 1/255, Hops 1 ! ! Below, the route for 10.11.1.0/24 is again listed, with the metric (FD), and ! the same next-hop and outgoing interface information. ! WAN1# show ip route eigrp 10.0.0.0/8 is variably subnetted, 7 subnets, 2 masks D 10.11.1.0/24 [90/2172416] via 10.1.1.2, 00:10:40, Serial0/0/0.1 D 10.12.1.0/24 [90/2172416] via 10.1.1.6, 00:10:40, Serial0/0/0.2 D 10.1.2.0/30 [90/2172416] via 10.9.1.2, 00:10:40, FastEthernet0/0 D 10.1.2.4/30 [90/2172416] via 10.9.1.2, 00:10:40, FastEthernet0/0 EIGRP Metric Tuning EIGRP metrics can be changed using several methods: setting interface bandwidth, setting interface delay, changing the metric calculation formula by configuring K-values, and From the Library of Alexey Evseenko Chapter 5: Advanced EIGRP Concepts 175 even by adding to the calculated metric using offset lists. In practice, the most reasonable and commonly used methods are to set the interface delay and the interface bandwidth. This section examines all the methods, in part so that you will know which useful tools exist and in part to make you aware of some other design issues that then might impact the routes chosen by EIGRP. Configuring Bandwidth and Delay The bandwidth and delay interface subcommands set the bandwidth and delay associated with the interface. The commands themselves require little thought, other than keeping the units straight. The unit for the bandwidth command is kilobits/second, and the delay command uses a unit of tens-of-microseconds. If a design requires that you influence the choice of route by changing bandwidth or delay, setting the delay value is typically the better choice. Cisco IOS uses the bandwidth setting of an interface for many other reasons: calculating interface utilization, as the basis for several QoS parameters, and for Simple Network Management Protocol (SNMP) statistics reporting. However, the delay setting has little influence on other Cisco IOS features besides EIGRP, so the better choice when influencing EIGRP metrics is to tune the delay. Table 5-2 lists some of the common default values for both bandwidth and delay. As a reminder, show commands list the bandwidth in kbps, which matches the bandwidth command, but lists the delay in microseconds, which does not match the tens-ofmicroseconds unit of the delay command. Table 5-2 Common Defaults for Bandwidth and Delay Interface Type Serial GigE FastE Bandwidth (kbps) 1544 1,000,000 100,000 Ethernet 10,000 Delay (Microseconds) 20,000 10 100 1000 Note that on LAN interfaces that can run at different speeds, the bandwidth and delay settings default based on the current actual speed of the interface. Choosing Bandwidth Settings on WAN Subinterfaces Frame Relay and Metro Ethernet installations often use an access link with a particular physical sending rate (clock rate if you will) but with the contracted speed, over time, being more or less than the speed of the link. For example, with Frame Relay, the provider might supply a full T1 access link, so configuring bandwidth 1544 for such an interface is reasonable. However, the subinterfaces have one or more PVCs associated with them, and those PVCs each have Committed Information Rates (CIR) that are typically From the Library of Alexey Evseenko 176 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide less than the access link’s clock speed. However, the cumulative CIRs for all PVCs often exceed the clock rate of a physical interface. Conversely, MetroE designs use Ethernet access links of 10-Mbps, 100-Mbps, or 1-Gbps actual link speed, but often the business contract limits the amount of traffic to some number below that link speed. Choosing a useful interface bandwidth setting on the subinterfaces in a Frame Relay or MetroE design requires some thought, with most of the motivations for choosing one number or another being unrelated to EIGRP. For example, imagine the network shown in Figure 5-6. Router WAN1 has a single T1 (1.544-Mbps) access link. That interface has one multipoint subinterface, with three PVCs assigned to it. It also has nine other point-topoint subinterfaces, each with a single PVC assigned. B1 B2 S0/0/0.20 Multipoint B3 S0/0/0.21 S0/0/0.29 PPooiinntt--ttoo--PPooiinntt WAN1 B4 B12 Figure 5-6 One Multipoint and Nine Point-to-Point Subinterfaces For the sake of discussion, the design in Figure 5-6 oversubscribes the T1 access link off Router WAN1 by a 2:1 factor. Assume that all 12 PVCs have a CIR of 256 kbps, making the total bandwidth for the 12 PVCs roughly 3 Mbps. The design choice to oversubscribe the access link might be reasonable given the statistical chance of all sites sending at the same time. Now imagine that Router WAN1 has been configured with subinterfaces as shown in the figure: ■ S0/0/0.20: Multipoint, 3 PVCs ■ S0/0/0.21 through S0/0/0.29: Point-to-point, 1 PVC each Next, consider the options for setting the bandwidth command’s value on these ten subinterfaces. The point-to-point subinterfaces could be set to match the CIR of each PVC (256 kbps, in this example). You could choose to set the bandwidth based on the CIR of all combined PVCs on the multipoint subinterface—in this case, setting bandwidth 768 on multipoint subinterface s0/0/0.20. However, these bandwidths would total about From the Library of Alexey Evseenko Chapter 5: Advanced EIGRP Concepts 177 3 Mbps—twice the actual speed of WAN1’s access link. Alternatively, you could set the various bandwidths so that the total matches the 1.5 Mbps of the access link. Or you could split the difference, knowing that during times of low activity to most sites, that the sites with active traffic get more than their CIR’s worth of capacity anyway. As mentioned earlier, these bandwidth settings impact much more than EIGRP. The settings impact interface statistics, both in show commands and in SNMP reporting. They impact QoS features to some extent as well. Given that the better option for setting EIGRP metrics is to set the interface delay, EIGRP metric tuning might not be the driving force behind the decision as to what bandwidth values to use. However, some installations might change these values over time while trying to find the right compromise numbers for features other than EIGRP. So, you need to be aware that changing those values might result in different EIGRP metrics and impact the choices of best routes. Similar issues exist on the more modern Layer 2 WAN services like MetroE, particularly with the multipoint design of Virtual Private LAN Service (VPLS). Figure 5-7 shows a design that might exist after migrating the internetwork of Figure 5-6 to VPLS. Router WAN1 has been replaced by a Layer 3 switch, using a Gigabit interface to connect to the VPLS service. The remote sites might use the same routers as before, using a Fast Ethernet interface, and might be replaced with Layer 3 switch hardware as well. VPLS B1 Gig0/1 B2 802.1Q • Trunk WAN1 • • Shape 200M B12 Figure 5-7 VPLS Service—Issues in Choosing Bandwidth Concentrating on the mechanics of what happens at the central site, WAN1 might use 802.1Q trunking. With 12 remote sites, WAN1 configures 12 VLAN interfaces, one per VLAN, with a different subnet used for the connection to each remote branch. Such a design, from a Layer 3 perspective, looks like the age-old Frame Relay design with a point-to-point link from the main site to each remote branch. Additionally, the VPLS business contract might specify that WAN1 cannot send more than 200 Mbps of traffic into the VPLS cloud, with the excess being discarded by the VPLS service. To prevent unnecessary discards, the engineer likely configures a feature called shaping, which reduces the average rate of traffic leaving the Gi0/1 interface of WAN1 (regardless of VLAN). To meet the goal of 200 Mbps, WAN1 would send only part of the time—in this case averaging a sending rate of 1/5th of the time—so that the average rate is 1/5th of 1 Gbps, or 200 Mbps. From the Library of Alexey Evseenko 178 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Of note with the shaping function, the shaping feature typically limits the cumulative traffic on the interface, not per VLAN (branch). As a result, if the only traffic waiting to be sent by WAN1 happens to be destined for branch B1, WAN1 sends 200 Mbps of traffic to just branch B1. Pulling the discussion back around to EIGRP, as with Frame Relay, other design and implementation needs can drive the decision to set or change the bandwidth on the associated interfaces. In this case, Layer 3 switch WAN1 probably has 12 VLAN interfaces. Each VLAN interface can be set with a bandwidth that influences EIGRP route choices. Should this setting be 1/12th of 1 Gbps, what is the speed at which the bits are actually sent? Should the setting be 1/12th of 200 Mbps, what is the shaping rate? Or knowing that a site might get most or all of that 200 Mbps for some short period of time, should the bandwidth be set somewhere in between? As with Frame Relay, there is no set answer. For the sake of EIGRP, be aware that changes to the bandwidth settings impact the EIGRP metrics. Metric Weights (K-values) Engineers can change the EIGRP metric calculation by configuring the weightings (also called K-values) applied to the EIGRP metric calculation. To configure new values, use the metric weights tos k1 k2 k3 k4 k5 command in EIGRP configuration mode. To configure this command, configure any integer 0–255 inclusive for the five K-values. By default, K1 = K3 = 1, and the others default to 0. The tos parameter has only one valid value, 0, and can be otherwise ignored. The full EIGRP metric formula is as follows. Note that some items reduce to 0 if the corresponding K-values are also set to 0. Metric = K1 * BWmin + K2 * 256 BWmin - load + K3 * delay K5 * K4 + reliability * 256 BWmin = 107 least-bandwidth With default K-values, the EIGRP metric calculation can be simplified to the following formula: 107 Metric = least-bandwidth + cumulative-delay * 256 EIGRP requires that two routers’ K-values match before those routers can become neighbors. Also note that Cisco recommends against using K-values K2, K4, and K5, because a nonzero value for these parameters causes the metric calculation to include interface load and reliability. The load and reliability change over time, which causes EIGRP to reflood topology data, and might cause routers to repeatedly choose different routes (route flapping). Offset Lists EIGRP offset lists, the final tool for manipulating the EIGRP metrics listed in this chapter, allow an engineer to simply add a value—an offset, if you will—to the calculated integer metric for a given prefix. To do so, an engineer can create and enable an EIGRP offset list that defines the value to add to the metric, plus some rules regarding which routes should be matched and therefore have the value added to their computed FD. From the Library of Alexey Evseenko Chapter 5: Advanced EIGRP Concepts 179 An offset list can perform the following functions: ■ Match prefixes/prefix lengths using an IP ACL, so that the offset is applied only to routes matched by the ACL with a permit clause. ■ Match the direction of the Update message, either sent (out) or received (in). ■ Match the interface on which the Update is sent or received. ■ Set the integer metric added to the calculation for both the FD and RD calculations for the route. The configuration itself uses the following command in EIGRP configuration mode, in addition to any referenced IP ACLs: offset-list {access-list-number | access-list-name} {in | out} offset [interfacetype interface-number] For example, consider again branch office Router B1 in Figure 5-1, with its connection to both WAN1 and WAN2 over a Frame Relay network. Formerly, WAN1 calculated a metric of 2,172,416 for its route, through B1, to subnet 10.11.1.0/24. (Refer to Figure 5-5 for the math behind WAN1’s calculation of its route to 10.11.1.0/24.) Router B1 also calculated a value of 28,160 for the RD of that same direct route. Example 5-5 shows the addition of an offset on WAN1, for received updates from Router B1. Example 5-5 Inbound Offset of 3 on WAN1, for Updates Received on S0/0/0.1 WAN1(config)# access-list 11 permit 10.11.1.0 WAN1(config)# router eigrp 1 WAN1(config-router)# offset-list 11 in 3 Serial0/0/0.1 WAN1(config-router)# end Mar 2 11:34:36.667: %DUAL-5-NBRCHANGE: IP-EIGRP(0) 1: Neighbor 10.1.1.2 (Serial0/0/0.1) is resync: peer graceful-restart WAN1# show ip eigrp topo 10.11.1.0/24 IP-EIGRP (AS 1): Topology entry for 10.11.1.0/24 State is Passive, Query origin flag is 1, 1 Successor(s), FD is 2172416 Routing Descriptor Blocks: 10.1.1.2 (Serial0/0/0.1), from 10.1.1.2, Send flag is 0x0 Composite metric is (2172419/28163), Route is Internal Vector metric: Minimum bandwidth is 1544 Kbit Total delay is 20100 microseconds Reliability is 255/255 Load is 1/255 Minimum MTU is 1500 Hop count is 1 ! output omitted for brevity From the Library of Alexey Evseenko 180 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide The configuration has two key elements: ACL 11 and the offset-list command. ACL 11 matches prefix 10.11.1.0, and that prefix only, with a permit clause. The offset-list 11 in 3 s0/0/0.1 command tells Router WAN1 to examine all EIGRP Updates received on S0/0/0.1, and if prefix 10.11.1.0 is found, add 3 to the computed FD and RD for that prefix. The show ip eigrp topology 10.11.1.0/24 command in Example 5-5 shows that the FD and RD, highlighted in parentheses, are now each three larger as compared with the earlier metrics. Next, continuing this same example, Router B1 has now been configured to add an offset (4) in its sent updates to all routers, but for prefix 10.11.1.0/24 only, as demonstrated in Example 5-6. Example 5-6 Outbound Offset of 4 on B1, for Updates Sent to All Neighbors, 10.11.1.0/24 B1(config)# access-list 12 permit 10.11.1.0 B1(config)# router eigrp 1 B1(config-router)# offset-list 12 out 4 B1(config-router)# end B1# ! Back to router WAN1 WAN1# show ip eigrp topology IP-EIGRP Topology Table for AS(1)/ID(10.9.1.1) Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply, r - reply Status, s - sia Status P 10.11.1.0/24, 1 successors, FD is 2172419 via 10.1.1.2 (2172423/28167), Serial0/0/0.1 ! lines omitted for brevity Note that the metrics, both FD and RD, are now four larger than in Example 5-5. Unequal Metric Route Load Sharing Convergence to a feasible successor route should happen within a second after a router realizes the successor route has failed. Even in large well-designed networks, particularly with features like stub routers and route summarization in use, convergence can still happen in a reasonable amount of time even when going active. The next feature, load sharing, takes convergence to another level, giving instantaneous convergence, while reaching other goals as well. Cisco IOS allows routing protocols to place multiple routes into the routing table for an individual prefix/length. Cisco IOS then balances traffic across those routes, by default balancing traffic on a per-destination IP address basis. From the Library of Alexey Evseenko Chapter 5: Advanced EIGRP Concepts 181 Load balancing, sometimes called load sharing, provides a primary benefit of making use of the available bandwidth, rather than using some links as simply backup links. For example, with the two-PVC design shown previously in Figure 5-1, without load sharing, a branch router would send traffic over one PVC, but not both. With load sharing, some traffic would flow over each PVC. A useful secondary benefit—faster convergence—occurs when using load balancing. By placing multiple routes into the routing table for a single prefix, convergence happens essentially instantly. For example, if a branch router has two routes for each data center subnet—one using each PVC that connects the branch to the core—and one of the routes fails, the other route is already in the routing table. In this case, the router does not need to look for FS routes nor go active on the route. The router uses the usual EIGRP convergence tools only when all such routes are removed from the routing table. The load-balancing configuration requires two commands, one of which already defaults to a reasonable setting. First, you need to define the number of allowed routes for each prefix/prefix length using the maximum-paths number EIGRP subcommand. The default setting of 4 is often high enough, because most internetworks do not have enough redundancy to have more than four possible routes. Note The maximum number of paths varies based on Cisco IOS version and router platform. However, for the much older Cisco IOS versions, the maximum was 6 routes, with later versions typically supporting 16 or more. The second part of the load-balancing configuration overcomes a challenge introduced by EIGRP’s metric calculation. The EIGRP integer metric calculation often results in 8- to 10-digit integer metrics, so the metrics of competing routes are seldom the exact same value. Calculating the exact same metric for different routes for the same prefix is statistically unlikely. Cisco IOS includes the concept of EIGRP variance to overcome this problem. Variance lets you tell Cisco IOS that the EIGRP metrics can be close in value and still be considered worthy of being added to the routing table—and you can define how close. The variance multiplier EIGRP router subcommand defines an integer in the range of 1 through 128. The router then multiplies the variance by the successor route’s FD—the metric of the best route to reach that subnet. Any FS routes whose metric is less than or equal to the product of the variance by the FD are considered to be equal routes and can be placed into the routing table, up to and including the number of routes defined by the maximum-paths command. For example, consider the example as shown in Figure 5-8 and Table 5-3. In this example, to keep the focus on the concepts, the metrics are small easy-to-compare numbers, rather than the usual large EIGRP metrics. The example focuses on R4’s three possible routes to reach Subnet 1. The figure shows the RD of each route next to Routers R1, R2, and R3, respectively. From the Library of Alexey Evseenko 182 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Metric 50 Metric 30 R1 Metric 90 Metric 40 R4 R2 Subnet 1 Metric 120 Metric 60 R3 Figure 5-8 Example of the Use of Variance Table 5-3 Example of Routes Chosen as Equal Because of Variance Next-hop Metric RD Added to Routing Added to Routing Added to Routing Table at Variance 1? Table at Variance 2? Table at Variance 3? R1 50 30 Yes Yes Yes R2 90 40 No Yes Yes R3 120 60 No No No Before considering the variance, note that in this case the route through R1 is the successor route, because it has the lowest metric. This also means that the FD is 50. The route through R2 is an FS route, because its RD of 40 is less than the FD of 50. The route through R3 is not an FS route, because R3’s RD of 60 is more than the FD of 50. At a default variance setting of 1, the metrics must be exactly equal to be considered equal, so only the successor route is added to the routing table (the route through R1). With variance 2, the FD (50) is multiplied by the variance (2) for a product of 100. The route through R2, with FD 90, is less than 100, so R4 will add the route through R2 to the routing table as well. The router can then load-balance traffic across these two routes. In the third case, with variance 3, the product of the FD (50) times 3 equals 150. All three routes’ calculated metrics (their FD values) are less than 150. However, the route through R3 is not an FS route, so it cannot be added to the routing table for fear of causing a routing loop. So, R4 adds only the routes through R1 and R2 to its IP routing table. (Note that the variance and maximum-paths settings can be verified by using the show ip protocols command.) From the Library of Alexey Evseenko Key Topic Chapter 5: Advanced EIGRP Concepts 183 The following list summarizes the key points to know about variance: ■ The variance is multiplied by the current FD (the metric of the best route to reach a subnet). ■ Any FS routes whose calculated metric is less than or equal to the product of variance and FD are added to the IP routing table, assuming that the maximum-paths setting allows more routes. ■ Routes that are neither successor nor feasible successor routes can never be added to the IP routing table, regardless of the variance setting. When the routes have been added to the routing table, the router supports a couple of methods for how to load-balance traffic across the routes. The router can load-balance the traffic proportionally with the metrics, meaning that lower metric routes send more packets. Alternately, the router can send all traffic over the lowest-metric route, with the other routes just being in the routing table for faster convergence in case the best route fails. Optimizing EIGRP Convergence The previous major section of this chapter focused on how EIGRP calculates metrics and how to change that metric calculation. However, that section discussed only one motivation for changing the metric: to make a router pick one route instead of another. This section, which focuses on optimizing the EIGRP convergence process, discusses another reason for choosing to manipulate the EIGRP metric calculations: faster convergence. EIGRP converges very quickly, but EIGRP does not achieve the most optimal fast convergence times in all conditions. One design goal might be to tune EIGRP configuration settings so that EIGRP uses faster convergence methods for as many routes as possible, and when not possible, that EIGRP converge as quickly as it can without introducing routing loops. As a result, routers might converge in some cases in a second instead of tens of seconds (from the point of a router realizing that a route has failed). For those of you who have not thought about EIGRP convergence before now, you must first get a comfortable understanding of the concept of EIGRP feasible successors—the first topic in this section. Following that, the text examines the EIGRP query process and route summarization. This section ends with EIGRP load balancing, which allows both spreading the load across multiple routes in addition to improving EIGRP convergence. Fast Convergence to Feasible Successors Earlier in this chapter, in the section “Calculating the Metrics: Feasible Distance and Reported Distance,” the text explains how a router, for each possible route, calculates two metric values. One value is the feasible distance (FD), which is the metric from that router’s perspective. The other metric is the reported distance (RD), which is the integer metric from the perspective of a next-hop router. From the Library of Alexey Evseenko 184 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide EIGRP routers use the RD value when determining whether a possible route can be considered to be a loop-free backup route called a feasible successor. This section explains the concepts and shows how to confirm the existence or nonexistence of such routes. Successor and Feasible Successor Concepts For each prefix/prefix length, when multiple possible routes exist, the router chooses the route with the smallest integer metric (smallest FD). EIGRP defines each such route as the successor route for that prefix, and EIGRP defines the next-hop router in such a route as the successor. EIGRP then creates an IP route for this prefix, with the successor as the next-hop router, and places that route into the IP routing table. If more than one possible route exists for a given prefix/prefix length, the router examines these other (nonsuccessor) routes and asks this question: Can any of these routes be used immediately if the currently best route fails, without causing a routing loop? EIGRP runs a simple algorithm to identify which routes could be used without causing a routing loop, and EIGRP keeps these loop-free backup routes in its topology table. Then, if the successor route (the best route) fails, EIGRP immediately uses the best of these alternate loop-free routes for that prefix. EIGRP calls these alternative, immediately usable, loop-free routes feasible successor routes, because they can feasibly be used as a new successor route when the current successor route fails. The next-hop router of such a route is called the feasible successor. Note In general conversation, the term successor might refer to the route or specifically to the next-hop router. Likewise, the term feasible successor might refer to the route, or the next-hop router, of an alternative route. Key Topic A router determines whether a route is a feasible successor based on the feasibility condition, defined as follows: If a nonsuccessor route’s RD is less than the FD, the route is a feasible successor route. Although technically correct, the preceding definition is much more understandable with an example as shown in Figure 5-9. The figure illustrates how EIGRP figures out which routes are feasible successors for Subnet 1. In Figure 5-9, Router E learns three routes to Subnet 1, from Routers B, C, and D. After calculating each route’s metric, Router E finds that the route through Router D has the lowest metric. Router E adds this successor route for Subnet 1 to its routing table, as shown. The FD in this case for this successor route is 14,000. EIGRP decides whether a route can be a feasible successor by determining whether the reported distance for that route (the metric as calculated on that neighbor) is less than its own best computed metric (the FD). If that neighbor has a lower metric for its route to the subnet in question, that route is said to have met the feasibility condition. From the Library of Alexey Evseenko Key Topic Router E Calculates FD for Each Route: Route Through Router B — 19,000 Route Through Router C — 17,500 Route Through Router D — 14,000 Chapter 5: Advanced EIGRP Concepts 185 Subnet 1 Metric 15,000 B Subnet 1 Metric 13,000 E Router E Routing Table Subnet 1 Metric 14,000, Through Router D Router E Topology Table for Subnet 1 Route Through Router D — Successor Route Through Router C — Feasible Successor (C’s RD is 13,000, which Is Less than E’s Metric) Subnet 1 C A Subnet 1 Metric 10,000 D Figure 5-9 Successors and Feasible Successors with EIGRP For example, Router E computes a metric (FD) of 14,000 on its successor route (through Router D). Router C’s computed metric—E’s RD for this alternate router through Router C—is 13,000, which is lower than E’s FD (14,000). As a result, E knows that C’s best route for this subnet could not possibly point toward Router E, so Router E believes that its route, to Subnet 1 through Router C, would not cause a loop. As a result, Router E marks its topology table entry for the route through Router C as a feasible successor route. Conversely, E’s RD for the route through Router B to Subnet 1 is 15,000, which is larger than Router E’s FD of 14,000. So, this alternative route does not meet the feasibility condition, so Router E does not consider the route through Router B a feasible successor route. If the route to Subnet 1 through Router D fails, Router E can immediately put the route through Router C into the routing table without fear of creating a loop. Convergence occurs almost instantly in this case. However, if both C and D fail, E would not have a feasible successor route, and would have to do additional work, as described later in the section “Converging by Going Active,” before using the route through Router B. By tuning EIGRP metrics, an engineer can create feasible successor routes in cases where none existed, improving convergence. Verification of Feasible Successors Determining which prefixes have both successor and feasible successor routes is somewhat simple if you keep the following in mind: Key Topic ■ The show ip eigrp topology command does not list all known EIGRP routes, but instead lists only successor and feasible successor routes. ■ The show ip eigrp topology all-links command lists all possible routes, including those that are neither successor nor feasible successor routes. From the Library of Alexey Evseenko 186 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide For example, consider Figure 5-10, which again focuses on Router WAN1’s route to Router B1’s LAN subnet, 10.11.1.0/24. The configuration on all routers has reverted back to defaults for all settings that impact the metric: default bandwidth and delay, no offset lists, and all interfaces are up. 1 2 10.11.1.1 10.1.1.2 Fa0/0 B1 10.1.1.6 3 B2 1.1 S0/0/0.1 WAN1 1.5 S0/0/0.2 10.9.1.1/24 Fa0/0 WAN2 10.9.1.2 Note: All WAN IP addresses begin with 10.1 Figure 5-10 Three Possible Routes from WAN1 to 10.11.1.0/24 Figure 5-10 shows the three topologically possible routes to reach 10.11.1.0/24, labeled 1, 2, and 3. Route 1, direct to Router B1, is the current successor. Route 3, which goes to another branch router, back to the main site, and then to Router B1, is probably a route you would not want to use anyway. However, route 2, through WAN2, would be a reasonable backup route. If the PVC between WAN1 and B1 failed, WAN1 would converge to route 2 from the figure. However, with all default settings, route 2 is not an FS route, as demonstrated in Example 5-7. Example 5-7 Only a Successor Route on WAN1 for 10.11.1.0/24 WAN1# show ip eigrp topology IP-EIGRP Topology Table for AS(1)/ID(10.9.1.1) Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply, r - reply Status, s - sia Status P 10.11.1.0/24, 1 successors, FD is 2172416 via 10.1.1.2 (2172416/28160), Serial0/0/0.1 ! lines omitted for brevity; no other lines of output pertain to 10.11.1.0/24. WAN1# show ip eigrp topology all-links From the Library of Alexey Evseenko IP-EIGRP Topology Table for AS(1)/ID(10.9.1.1) Chapter 5: Advanced EIGRP Concepts 187 Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply, r - reply Status, s - sia Status P 10.11.1.0/24, 1 successors, FD is 2172416, serno 45 via 10.1.1.2 (2172416/28160), Serial0/0/0.1 via 10.9.1.2 (2174976/2172416), FastEthernet0/0 ! lines omitted for brevity; no other lines of output pertain to 10.11.1.0/24. A quick comparison of the two commands shows that the show ip eigrp topology command shows only one next-hop address (10.1.1.2), whereas the show ip eigrp topology all-links command shows two (10.1.1.2 and 10.9.1.2). The first command lists only successor and feasible successor routes. So in this case, only one such route for 10.11.1.0/24 exists—the successor route, direct to B1 (10.1.1.2). The output of the show ip eigrp topology all-links command is particularly interesting in this case. It lists two possible next-hop routers: 10.1.1.2 (B1) and 10.9.1.2 (WAN2). It does not list the route through Router B2 (10.1.1.6), because B2’s current successor route for 10.11.1.0/24 is through WAN1. EIGRP’s Split Horizon rules tell B2 to not advertise 10.11.1.0/24 to WAN1. Next, focus on the route labeled as option 2 in Figure 5-9, the route from WAN1, to WAN2, then to B1. Per the show ip eigrp topology all-links command, this route has an RD of 2,172,416—the second number in parentheses as highlighted toward the end of Example 5-7. WAN1’s successor route has an FD of that exact same value. So, this one possible alternate route for 10.11.1.0/24, through WAN2, does not meet the feasibility condition—but just barely. To be an FS route, a route’s RD must be less than the FD, and in this example, the two are equal. To meet the design requirement for quickest convergence, you could use any method to manipulate the metrics such that either WAN2’s metric for 10.11.1.0 is lower or WAN1’s metric for its successor route is higher. Example 5-8 shows the results of simply adding back the offset list on WAN1, as seen in Example 5-5, which increases WAN1’s metric by 3. Example 5-8 Increasing WAN1’s Metric for 10.11.1.0/24, Creating an FS Route WAN1# configure terminal Enter configuration commands, one per line. End with CNTL/Z. WAN1(config)# access-list 11 permit 10.11.1.0 WAN1(config)# router eigrp 1 WAN1(config-router)# offset-list 11 in 3 s0/0/0.1 WAN1(config-router)# ^Z WAN1# show ip eigrp topology IP-EIGRP Topology Table for AS(1)/ID(10.9.1.1) Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply, r - reply Status, s - sia Status From the Library of Alexey Evseenko 188 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide P 10.11.1.0/24, 1 successors, FD is 2172419 via 10.1.1.2 (2172419/28163), Serial0/0/0.1 via 10.9.1.2 (2174976/2172416), FastEthernet0/0 ! lines omitted for brevity; no other lines of output pertain to 10.11.1.0/24. Note that now WAN1’s successor route FD is 2,172,419, which is higher than WAN2’s (10.9.1.2’s) RD of 2,172,416. As a result, WAN1’s route through WAN2 (10.9.1.2) now meets the feasibility condition. Also, the show ip eigrp topology command, which lists only successor and feasible successor routes, now lists this new feasible successor route. Also note that the output still states “1 successor.” So, this counter only counts successor routes and does not include FS routes. When EIGRP on a router notices that a successor route has been lost, if a feasible successor exists in the EIGRP topology database, EIGRP places that feasible successor route into the routing table. The elapsed time from noticing that the route failed, until the route is replaced, is typically less than 1 second. (A Cisco Live conference presentation asserts that this convergence approaches 200 milliseconds.) With well-tuned EIGRP Hold Timers and with feasible successor routes, convergence time can be held low. Converging by Going Active When EIGRP removes a successor route and no FS route exists, the router begins a process by which the router discovers whether any loop-free alternative routes exist to reach that prefix. This process is called going active on a route. Routes for which the router has a successor route, and no failure has yet occurred, remain in a passive state. Routes for which the successor route fails, and no feasible successor routes exist, move to an active state, as follows: Key Topic ■ Change the state, as listed in the show ip eigrp topology command, from passive (p) to active (a). ■ Send EIGRP Query messages to every neighbor except the neighbor in the failed route. The Query asks a neighbor whether that neighbor has a loop-free route for the listed prefix/length. ■ The neighbor considers itself to have a loop-free route if that neighbor is passive for that prefix/length. If so, the neighbor 1) sends an EIGRP Reply message, telling the original router that it does indeed have a loop-free route and 2) does not forward the Query. ■ If the neighbor itself is active on this route, that neighbor 1) floods EIGRP Query messages to its neighbors and 2) does not immediately send an EIGRP Reply back to the original router—instead waiting on replies to its own set of Query messages. ■ When a router has received Reply messages from all neighbors to which it sent any Query messages, that router can then send a Reply message to any of its neighbors as necessary. ■ When a router has received a Reply for all its Query messages, that router can safely use the best of the routes confirmed to be loop-free. From the Library of Alexey Evseenko Chapter 5: Advanced EIGRP Concepts 189 Note The EIGRP convergence process when going active on a route is sometimes also referenced by the name of the underlying algorithm, named Diffusing Update Algorithm (DUAL). The process can and does work well in many cases, often converging to a new route in less than 10 seconds. However, in internetworks with many remote sites, with much redundancy, and with a large number of routers in a single end-to-end route, convergence when going active can be inefficient. For example, consider the internetwork in Figure 5-11. The figure shows five branch routers as an example, but the internetwork has 300 branch routers, each with a PVC connected to two WAN routers, WAN1 and WAN2. When Router WAN1 loses its route for the LAN subnet at branch B1, without an FS route, the Query process can get out of hand. B1 B2 Core1 WAN1 B3 WAN2 Core2 B4 B5 Figure 5-11 Issues with Query Scope The arrowed lines show WAN1’s Query messages and the reaction by several other routers to forward the Query messages. Although only five branch routers are shown, WAN1 would forward Query messages to 299 branch routers. WAN2 would do the same, assuming that its route to B1’s LAN also failed. These branch routers would then send Query messages back to the WAN routers. The network would converge, but more slowly than if an FS route existed. From the Library of Alexey Evseenko 190 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Note EIGRP sends every Query and Reply message using RTP, so every message is acknowledged using an EIGRP ACK message. By configuring EIGRP so that a router has FS routes for most routes, the entire Query process can be avoided. However, in some cases, creating FS routes for all routes on all routers is impossible. So, engineers should take action to limit the scope of queries. The next two sections discuss two tools—stub routers and route summarization—that help reduce the work performed by the DUAL and the scope of Query messages. The Impact of Stub Routers on Query Scope Some routers, by design, should not be responsible for forwarding traffic between different sites. For example, consider the familiar internetwork shown throughout this chapter, most recently in Figure 5-11, and focus on the branch routers. If WAN2’s LAN interface failed, and WAN1’s PVC to B1 failed, a route still exists from the core to branch B1’s 10.11.1.0/24 subnet: WAN1–B2–WAN2–B1. (This is the same long route shown as route 3 in Figure 5-10.) However, this long route consumes the link bandwidth between the core and branch B2, and the traffic to/from B1 will be slower. Users at both branches will suffer, and these conditions might well be worse than just not using this long route. Route filtering could be used to prevent WAN1 from learning such a route. However, using route filtering would require a lot of configuration on all the branch routers, with specifics for the subnets—and it would have to change over time. A better solution exists, which is to make the branch routers stub routers. EIGRP defines stub routers as follows: Key Topic A stub router is a router that should not forward traffic between two remote EIGRPlearned subnets. To accomplish this goal, the engineer configures the stub routers using the eigrp stub command. Stub routers do not advertise EIGRP-learned routes from one neighbor to other EIGRP neighbors. Additionally, and possibly more significantly, nonstub routers note which EIGRP neighbors are stub routers, and the nonstub routers do not send Query messages to the stub routers. This action greatly reduces the scope of Query messages when a route goes active, in addition to preventing the long, circuitous, and possibly harmful route. The eigrp stub command has several options. When issued simply as eigrp stub, the router uses default parameters, which are the connected and summary options. (Note that Cisco IOS adds these two parameters onto the command as added to the running config.) Table 5-4 lists the eigrp stub command options and explains some of the logic behind using them. From the Library of Alexey Evseenko Chapter 5: Advanced EIGRP Concepts 191 Table 5-4 Parameters on the eigrp stub Command Key Topic Option This Router Is Allowed to... connected Advertise connected routes but only for interfaces matched with a network command. summary Advertise auto-summarized or statically configured summary routes. static Advertise static routes, assuming that the redistribute static command is configured. leak-map name Advertise routes (that would otherwise be part of a summary route) specified by a leak map. redistributed Advertise redistributed routes, assuming that redistribution is configured. receive-only Does not advertise any routes. This option cannot be used with any other option. Note that stub routers still form neighborships, even in receive-only mode. The stub router simply performs less work and reduces the Query scope because neighbors will not send these routers any Query messages. For example, Example 5-9 shows the eigrp stub connected command on Router B2, with the results being noticeable on WAN1 (show ip eigrp neighbors detail). Example 5-9 Evidence of Router B2 as an EIGRP Stub Router B2# configure terminal B2(config)# router eigrp 1 B2(config-router)# eigrp stub connected B2(config-router)# Mar 2 21:21:52.361: %DUAL-5-NBRCHANGE: IP-EIGRP(0) 1: Neighbor 10.9.1.14 (FastEthernet0/0.12) is down: peer info changed ! A message like the above occurs for each neighbor. ! Moving to router WAN1 next WAN1# show ip eigrp neighbors detail IP-EIGRP neighbors for process 1 H Address Interface Hold Uptime SRTT RTO Q Seq (sec) (ms) Cnt Num 1 10.9.1.2 Fa0/0 11 00:00:04 7 200 0 588 Version 12.4/1.2, Retrans: 0, Retries: 0, Prefixes: 8 2 10.1.1.6 Se0/0/0.2 13 00:21:23 1 200 0 408 Version 12.4/1.2, Retrans: 2, Retries: 0, Prefixes: 2 Stub Peer Advertising ( CONNECTED ) Routes Suppressing queries 0 10.9.1.6 Fa0/0.4 12 00:21:28 1 200 0 175 Version 12.2/1.2, Retrans: 3, Retries: 0, Prefixes: 6 From the Library of Alexey Evseenko 192 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide The Impact of Summary Routes on Query Scope In addition to EIGRP stub routers, route summarization also limits EIGRP Query scope and therefore improves convergence time. The reduction in Query scope occurs because of the following rule: Key Topic If a router receives an EIGRP Query for a prefix/prefix length, does not have an exactly matching (both prefix and prefix length) route, but does have a summary route that includes the prefix/prefix length, that router immediately sends an EIGRP Reply and does not flood the Query to its own neighbors. For example, consider Figure 5-12. 300 Branches All LAN subnets in ranges 10.11.0.0/16 10.12.0.0/16 1 Update: 10.11.0.1/16 10.12.0.0/16 WAN1 2 Query: 10.11.1.0/24? C1 3 Reply: Nope! Other Core Routers WAN2 C2 1 Update: 10.11.0.1/16 10.12.0.0/16 Figure 5-12 Route Summaries Limiting Query Scope Multilayer switches C1 and C2 sit in the core of the network shown in various other figures in this chapter, and both C1 and C2 run EIGRP. The IP subnetting design assigns all branch office LAN subnets from the range 10.11.0.0/16 and 10.12.0.0/16. As such, Routers WAN1 and WAN2 advertise summary routes for these ranges, rather than for individual subnets. So, under normal operation, ignoring the entire Query scope issue, C1 and C2 would never have routes for individual branch subnets like 10.11.1.0/24 but would have routes for 10.11.0.0/16 and 10.12.0.0/16. The figure highlights three steps: Step 1. WAN1 and WAN2 advertise summary routes, so that C1, C2, and all other routers in the core have a route for 10.11.0.0/16 but not a route for 10.11.1.0/24. Step 2. Some time in the future, WAN1 loses its route for 10.11.1.0/24, so WAN1 sends a Query for 10.11.1.0/24 to C1 and C2. Step 3. C1 and C2 send an EIGRP Reply immediately afterward, because both do not have a route for that specific prefix/length (10.11.1.0/24), but both do have a summary route (10.11.0.0/16) that includes that range of addresses. From the Library of Alexey Evseenko Chapter 5: Advanced EIGRP Concepts 193 Stuck in Active When a router notices a route failure and moves a route from the passive to active state, that router sends Query messages to its neighbors. With a sufficiently large network, particularly when routers exist several router hops away, the number of Queries might not only be large, but there also might be a string of routers that all must wait on multiple Reply messages before they can, in turn, issue a Reply. For example, in Figure 5-13, Router R1 must wait on Routers R11, R12, and R13 to send a Reply. R11 must wait on Routers R21, R22, and R23. R21 must wait on three other routers, and so on—meaning that R1 might have to wait quite a while before getting a response. 21 11 22 23 24 1 12 25 26 27 13 28 29 Figure 5-13 Network Design That Causes Unreasonably Long Convergence Although the design shown in Figure 5-13 is admittedly contrived, the point is that a router might wait a while before getting a Reply message in response to each Query message for an active route. A router cannot use any alternative paths for that route until all such Reply messages have been received. To deal with this potentially long time, Cisco IOS first sets a limit on how long it should take to receive all such replies. That timer, called the active timer, is set to 3 minutes From the Library of Alexey Evseenko 194 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide by default. (The timer can be configured for an entire EIGRP process using the timers active-time time EIGRP subcommand, where time is represented in minutes.) Routes for which a router does not receive a Reply within the active timer are considered to be Stuck-in-Active (SIA) routes. Cisco IOS has two major branches of logic when reacting to SIA routes. Earlier versions of Cisco IOS took a rather drastic action, bringing down the uncooperative neighbors that had yet to send back an EIGRP Reply for that route. For example, in Figure 5-12, if R1 received Reply messages from R11 and R12, but not R13, and the active timer expired, R1 would bring down the neighborship with R13. The active route would be considered to have failed, and all routes known through the failed neighbor would also be considered to have failed—possibly generating more Query messages for other routes. Later Cisco IOS versions (beginning in the 12.2 mainline) make an attempt to avoid failing the neighborship. At the halfway point through the Active timer—a seemingly long 90 seconds by default—a router sends an SIA-Query (Stuck-in-Active Query) EIGRP message to each neighbor that has yet to send back a Reply. The purpose of the message is to either get an SIA-Reply back, meaning that the neighbor really is still waiting for replies to its own queries, or to get nothing in reply. In the first case, because the neighbor is alive and still working, there is no need to kill the neighborship. In the second case, the neighbor was not able to reply, so the action of failing the neighborship is reasonable. Route Filtering Does a router in a branch office need to be able to forward packets to hosts in another branch office? Does a router in the sales division need to be able to forward packets to hosts in the manufacturing division? These questions are just a sampling of design questions for which route filtering can be part of the solution. Route filtering allows the engineer to filter which routes are advertised in an EIGRP update. If routers in a branch do not need to learn routes about subnets in other branches, routers can filter that routing information. This filtering reduces the size of routing tables, saving memory, possibly improving routing performance, and making the internetwork more secure by limiting the flow of packets. EIGRP enables route filtering using the distribute-list router subcommand. The concept is relatively straightforward: The distribute list refers to an access control list (ACL), prefix list, or route map. These three tools classify whether a route should be permitted to be sent/received in an EIGRP Update or be denied (filtered). The distribute-list command also specifies the direction—outbound updates or inbound updates—and optionally, the specific interface on which to filter updates. For example, Figure 5-14 shows an expanded version of an internetwork used previously. The figure adds several links between the WAN routers and some core Layer 3 switches. It also notes the address ranges for all data centers (10.16.0.0/16) and the range of addresses used for subnets in the manufacturing division (10.17.32.0/19). From the Library of Alexey Evseenko Sales Branch Offices Fa0/0 10.11.1.1 S0/0/0.1 1.2 B1 2.2S0/0/0.2 Fa0/0 10.12.1.1 B2 S0/0/0.2 2.6 Chapter 5: Advanced EIGRP Concepts 195 Manufacturing: 10.17.32.0 - 10.17.63.255 S0/0/0.1 1.1 .5 WAN1 S0/0/0.21.5 .1 .9 S0/20./10.1 S0/0/0.2 2.5 .2 .13 .17 WAN2 .6 Core1 .14 .21 Data Center: 10.16.0.0/16 .22 .10 .18 Core2 Note: All WAN IP addresses begin with 10.1. All LAN Core IP addresses begin with 10.9.1. Figure 5-14 Expanded Design with a Range of Addresses in Manufacturing The design engineer could make many choices about what routes to filter, for example ■ Filter routes to WAN subnets so that the core and manufacturing do not learn those routes, because these subnets should not be the destination of any user traffic. ■ Filter manufacturing routes from being advertised to the branches, because the branches are in the sales division. ■ Filter routes for the subnets sitting between the Layer 3 switches in the core, preventing them from being advertised to either manufacturing or the sales branches, because no users in these divisions should be sending packets to these subnets. The examples in this section focus on the second of these design options. Filtering the subnets that exist between Layer 3 devices, as is suggested in the second and third items in the list, have both pros and cons. For example, the first design goal filters the WAN subnets, because no end users need to be able to send packets to those subnets. This meets the goal of having smaller routing tables. However, operations personnel might have a larger challenge when monitoring and troubleshooting, because when a ping or traceroute fails, they also need to figure out whether the command failed by design because of the purposefully filtered routes or whether a problem has occurred. This section next examines how to filter EIGRP routes using ACLs, prefix lists, and then route maps. All three of these tools will be used throughout this book, so this chapter lays the foundation for understanding these tools, in addition to showing how to use these tools when filtering EIGRP routes. From the Library of Alexey Evseenko 196 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Filtering by Referencing ACLs To filter EIGRP routes by matching them using ACLs, the ACL must match a route with a permit clause to then allow the route to be advertised, and match the route with a deny clause to filter the route. Before getting into how an ACL matches a route, first it is important to review what can be examined based on the configuration of an IP ACL. EIGRP distribute lists support the use of standard IP ACLs. The syntax of both numbered and named standard ACLs allows a configuration of one dotted-decimal number and its corresponding wildcard (WC) mask. When used for packet filtering, this number is compared to the source IP address of the packet. When referenced by the distribute-list command for the purpose of EIGRP route filtering, EIGRP compares the standard ACL source address field to the subnet number (prefix) of each EIGRP route. The best way to learn the specifics is to consider several examples. Figure 5-15 shows the specific size subnets being advertised from the manufacturing division into the core. The design calls for the WAN routers to filter these routes from being advertised toward the Sales division’s branch offices. router eigrp 1 distribute-list 2 out s0/0/0.1 WAN1 To Branches WAN2 Routes from Manufacturing: 10.17.32.0/23 10.17.34.0/24 10.17.35.0/25 10.17.35.128/25 10.17.36.0/26 10.17.36.64/26 Figure 5-15 Specific Manufacturing Routes to Be Filtered Figure 5-15 shows the distribute-list 2 out s0/0/0.1 command on Router WAN1 as one sample of the syntax. A command like this would need to be included in WAN1’s configuration for each interface connected to a branch. ACL number 2 would then be configured to match the manufacturing routes with a deny clause, and all other routes with a permit clause, filtering the routes. If WAN1 has hundreds of serial subinterfaces for its WAN connections, following the sample in the previous paragraph, WAN1 would have hundreds of distribute-list 2 out serial number commands, one per WAN interface/subinterface. Alternatively, the engineer could configure a single distribute-list 2 out command on Router WAN1, not specifying an interface. In this case, Router WAN1 would not advertise these routes to any neighbors, greatly reducing WAN1’s configuration. Consider the following access-list commands. Imagine that each command in this list is the first of two commands in a single access list. The second and only other command is From the Library of Alexey Evseenko Chapter 5: Advanced EIGRP Concepts 197 a command that permits all other routes—for example, access-list 2 permit any. Then, ask yourself: If used by a distribute list on WAN1 to filter the manufacturing routes (as seen in Figure 15-15), and you want that ACL to filter only manufacturing routes, which of these two-line ACLs meet the requirements? access-list 3 deny 10.17.32.0 access-list 4 deny 10.17.32.0 0.0.0.255 access-list 5 deny 10.17.32.0 0.0.3.255 access-list 6 deny 10.16.0.0 0.1.255.255 Table 5-5 supplies the answers and explanation. Table 5-5 Analysis of the Sample ACLs Used with the distribute-list Command ACL Routes Filtered 3 10.17.32.0 /23 4 10.17.32.0 /23 5 10.17.32.0 /23 10.17.34.0 /24 Explanation The ACL matches exactly prefix 10.17.32.0, so it matches a single manufacturing route. The ACL matches all prefixes that begin with 10.17.32 because of the WC mask, again matching a single route. The ACL matches all prefixes in the range 10.17.32.0– 10.17.35.255, which includes four manufacturing routes. 10.17.35.0 /25 10.17.35.128 /25 6 All manufacturing and The ACL matches all prefixes in the range 10.16.0.0– data center routes 10.17.255.255, which includes the data center routes. Note To find the range of numbers matched by an ACL’s address and wildcard mask values, use the address field as the low end of the range and simply add the address and wildcard mask to find the high end of the range. Example 5-10 shows the configuration on Router WAN1 to filter the manufacturing routes, with distribute lists enabled on its two WAN subinterfaces. The ACL matches (with a deny action) all manufacturing routes and matches all other routes with a permit clause. Example 5-10 WAN1’s distribute-list to Filter Manufacturing Routes ! On Router B1, before the filtering is applied: B1# show ip route | include 10.17 D 10.17.35.0/25 [90/2300416] via 10.1.1.1, 00:00:18, Serial0/0/0.1 D 10.17.34.0/24 [90/2300416] via 10.1.1.1, 00:00:18, Serial0/0/0.1 D 10.17.32.0/23 [90/2300416] via 10.1.1.1, 00:00:18, Serial0/0/0.1 D 10.17.36.0/26 [90/2300416] via 10.1.1.1, 00:00:18, Serial0/0/0.1 From the Library of Alexey Evseenko 198 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide D 10.17.36.64/26 [90/2300416] via 10.1.1.1, 00:00:18, Serial0/0/0.1 D 10.17.35.128/25 [90/2300416] via 10.1.1.1, 00:00:18, Serial0/0/0.1 ! On Router WAN1: WAN1# configure terminal Enter configuration commands, one per line. End with CNTL/Z. WAN1(config)# access-list 2 deny 10.17.32.0 0.0.31.255 WAN1(config)# access-list 2 permit any WAN1(config)# router eigrp 1 WAN1(config-router)# distribute-list 2 out WAN1(config-router)# ^Z WAN1# ! On Router B1, after the filtering is applied B1# show ip route | include 10.17 B1# Note The same configuration added to Router WAN1 was also added to Router WAN2; however, the commands were not repeated in Example 5-10. The ACL in this case, ACL 2, matches all subnets with a value between 10.17.32.0 and 10.17.63.255 inclusive, based on the IP address value of 10.17.32.0 and WC mask of 0.0.31.255. By matching these routes with a deny clause, the ACL, used as a distribute list, filters the routes. The access-list 2 permit any command matches all other routes, allowing them to be advertised. Filtering by Referencing IP Prefix Lists The Cisco IOS IP prefix-list feature gives the network engineer another tool for matching routes when performing route filtering. IP prefix lists can examine both the prefix and the prefix length, and a range of prefixes or a range of prefix lengths. The command then sets either a deny or permit action for each matched prefix/length. To use the prefix list, the configuration simply refers to the prefix-list with the same distribute-list command seen earlier. Using IP prefix lists for route filtering has several advantages. First, IP prefix lists allow matching of the prefix length, whereas the ACLs used by the EIGRP distribute-list command cannot. (Some other route filtering configurations can match both the prefix and prefix length using extended ACLs.) Many people find IP prefix lists more intuitive for configuring route filtering. Finally, the internal processing of the IP prefix lists uses an internal tree structure that results in faster matching of routes as compared with ACLs. This section begins by examining IP prefix lists as an end to itself, followed by an example of filtering EIGRP routes using a prefix list. From the Library of Alexey Evseenko Chapter 5: Advanced EIGRP Concepts 199 IP Prefix List Concepts IP prefix lists provide mechanisms to match two components of an IP route: ■ The route prefix (the subnet number) ■ The prefix length (the subnet mask) Each single IP prefix list has similar characteristics to a single ACL, with subtle similarities to both numbered and named ACLs. The IP prefix list consists of one or more global configuration commands (like numbered ACLs), with commands using the same name being in the same list (like named ACLs). As with named ACLs, each ip prefix-list command has a sequence number to allow later deletion of individual commands and insertion of commands into a particular sequence position. Each command has a permit or deny action, but because it is used only for matching routes, and not for packet filtering, the permit or deny keyword just implies whether a route is matched (permit) or not (deny). The generic command syntax is as follows: ip prefix-list list-name [seq seq-value] {deny | permit prefix/prefix-length} [ge ge-value] [le le-value] Key Topic The following steps summarize the logic: Step 1. The route’s prefix must be within the range of addresses implied by the prefix-list command’s prefix/prefix-length parameters. Step 2. The route’s prefix length must match the range of prefixes implied by the prefix-list command’s prefix-length, ge, and le parameters. The matching of the prefix works much like the ACL matching logic. The configured prefix/prefix length implies a range of IP addresses. For example, an ip prefix-list barney deny 10.0.0.0/8... implies any number whose first 8 bits (per the /8) match 10.0.0.0—in other words, all IPv4 addresses that begin with 10. Any route whose prefix is in this range—for example, 10.0.0.0, 10.1.1.0, and 10.5.255.128—would be considered to match this part of the logic. However, IP prefix lists always examine the prefix length as well. To perform the logic of matching a route’s prefix length, Cisco IOS considers the following parts of the ip prefixlist command: ■ The required prefix-length parameter ■ The optional ge-value, which stand for greater-than-or-equal-to ■ The optional le-value, which stand for less-than-or-equal-to For a given ip prefix-list command, one of four configuration combinations affect the logic of matching prefix lengths, as listed in Table 5-6. The text following the table provides a more detailed explanation as compared with the summarized information in the table. From the Library of Alexey Evseenko 200 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Table 5-6 LE and GE Parameters on IP Prefix List, and the Implied Range of Prefix Key Lengths Topic Prefix List Parameter Range of Prefix Length Neither conf length must = route Both ge and le ge-value <= route-length <= le-value Only le conf length <= route Only ge ge-value <= route-length <= 32 The first case in the table occurs when neither ge nor le is configured. In that case, an exact match of prefix length must occur between the configured prefix length and a route’s prefix length. For example, the ip prefix-list fred deny 10.0.0.0/8 command matches route 10.0.0.0/8, but not 10.0.0.0/20. The second case in the table occurs when both ge and le are configured. In that case, the route’s prefix length must be between the configured ge and le values, inclusive. For example, ip prefix-list fred deny 10.0.0.0/8 ge 20 le 22 matches route 10.0.0.0/20, but not 10.0.0.0/8, because the prefix length must either be 20, 21, or 22. The cases in which either ge or le is configured, but not both, require a little more thought. A visual representation can help, as shown in Figure 5-16. ip prefix-list prefix / prefix-length ge ge-value le le-value 0 32 neither ge nor le configured (exact) Both ge and le Configured Only ge Configured Only le Configured Figure 5-16 Representation of Prefix Length Ranges for ip prefix-list Command In short, with only ge configured, the command matches prefix length ranges from the ge-value up to 32 (the longest IPv4 prefix length), inclusive. With only le configured, the command matches prefix length ranges between the prefix-length parameter and the le-value, inclusive. From the Library of Alexey Evseenko Chapter 5: Advanced EIGRP Concepts 201 Note Cisco IOS requires that the configured prefix-length, ge-value, and le-value meet the following requirement: prefix-length <= ge-value <= le-value. Otherwise, Cisco IOS rejects the ip prefix-list command. Samples of Prefix List Matching Several examples can really help nail down prefix list logic. The following routes will be examined by a variety of prefix lists, with the routes numbered for easier reference: 1. 10.0.0.0/8 2. 10.128.0.0/9 3. 10.1.1.0/24 4. 10.1.2.0/24 5. 10.128.10.4/30 6. 10.128.10.8/30 Next, Table 5-7 shows the results of seven different one-line prefix lists applied to these six example routes. The table lists the matching parameters in the prefix-list commands, omitting the first part of the commands. The table explains which of the six routes would match the listed prefix list, and why. Table 5-7 Example Prefix Lists Applied to the List of Routes prefix-list Command Routes Matched from Result Parameter Previous List of Prefixes 10.0.0.0/8 1 Without ge or le configured, both the prefix (10.0.0.0) and length (8) must be an exact match. 10.128.0.0/9 2 Without ge or le configured, the prefix (10.128.0.0) and length (9) must be an exact match. 10.0.0.0/8 ge 9 2–6 10.0.0.0/8 ge 24 le 24 3, 4 The 10.0.0.0/8 means “all routes whose first octet is 10.” The prefix length must be between 9 and 32, inclusive. The 10.0.0.0/8 means “all routes whose first octet is 10,” and the prefix range is 24 to 24—meaning only routes with prefix length 24. 10.0.0.0/8 le 28 1–4 The prefix length needs to be between 8 and 28, inclusive. From the Library of Alexey Evseenko 202 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide prefix-list Command Routes Matched from Result Parameter Previous List of Prefixes 0.0.0.0/0 None 0.0.0.0/0 means “match all prefixes.” However, because no le nor ge parameter is configured, the /0 also means that the prefix length must be 0. So, it would match all routes’ prefixes but none of their prefix lengths. Only a default route would match this prefix list. 0.0.0.0/0 le 32 All The range implied by 0.0.0.0/0 is all IPv4 addresses. The le 32 combined with prefix length 0 implies any prefix length between 0 and 32, inclusive. This is the syntax for “match all” prefix list logic. Note Pay particular attention to the match all logic of the final entry in the table. Using IP Prefix Lists to Filter EIGRP Routes After you master the logic behind IP prefix lists, using them with the distribute-list command requires minimal extra effort. For example, to refer to a prefix list name Fred, you could configure the distribute-list prefix Fred... command, instead of distribute-list 2... to refer to ACL 2. (Note that the prefix list names are case sensitive.) For example, using the internetwork of Figure 5-14 and Figure 5-15 again, consider the following revised design requirements for route filtering: ■ Of the routes from manufacturing, filter only those routes that begin with 10.17.35 and 10.17.36. ■ Of the routes for subnets on the WAN links, filter routes to prevent the core routers and branch routers from learning routes whose prefix length is /30. Although the first of the preceding two requirements mainly exists to demonstrate the ip prefix-list command, the second goal might be more useful for real networks. Often, routes with a /30 prefix length are routes used between two routers, either on WAN links or over LANs between Layer 3–enabled devices. Users should not need to send packets to addresses in these subnets. So, the only need to have routes to these subnets is for network management (ping tests, for example). Example 5-11 shows the configuration on WAN1; the equivalent configuration has been added on WAN2 as well. From the Library of Alexey Evseenko Chapter 5: Advanced EIGRP Concepts 203 Example 5-11 Filtering All Routes with a /30 Prefix Length ! On Router WAN1: !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! WAN1# show running-config ! lines omitted for brevity router eigrp 1 network 10.0.0.0 distribute-list prefix fred out auto-summary ! ip prefix-list fred seq 5 deny 10.17.35.0/24 ge 25 le 25 ip prefix-list fred seq 10 deny 10.17.36.0/24 ge 26 le 26 ip prefix-list fred seq 15 deny 0.0.0.0/0 ge 30 le 30 ip prefix-list fred seq 20 permit 0.0.0.0/0 le 32 ! On Router B1: B1# show ip route Codes: C - connected, S - static, R - RIP, M - mobile, B - BGP D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2 E1 - OSPF external type 1, E2 - OSPF external type 2 i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2 ia - IS-IS inter area, * - candidate default, U - per-user static route o - ODR, P - periodic downloaded static route Gateway of last resort is not set 10.0.0.0/8 is variably subnetted, 7 subnets, 3 masks C 10.11.1.0/24 is directly connected, FastEthernet0/0 D 10.12.1.0/24 [90/2684416] via 10.1.2.1, 00:06:15, Serial0/0/0.2 [90/2684416] via 10.1.1.1, 00:06:15, Serial0/0/0.1 C 10.1.2.0/30 is directly connected, Serial0/0/0.2 C 10.1.1.0/30 is directly connected, Serial0/0/0.1 D 10.16.1.0/24 [90/2172672] via 10.1.2.1, 00:00:32, Serial0/0/0.2 [90/2172672] via 10.1.1.1, 00:00:32, Serial0/0/0.1 D 10.17.34.0/24 [90/2300416] via 10.1.2.1, 00:06:15, Serial0/0/0.2 [90/2300416] via 10.1.1.1, 00:06:15, Serial0/0/0.1 D 10.17.32.0/23 [90/2300416] via 10.1.2.1, 00:06:15, Serial0/0/0.2 [90/2300416] via 10.1.1.1, 00:06:15, Serial0/0/0.1 B1# show ip route 10.17.32.0 255.255.248.0 longer-prefixes ! The legend is normally displayed; omitted here for brevity 10.0.0.0/8 is variably subnetted, 7 subnets, 3 masks D 10.17.34.0/24 [90/2300416] via 10.1.2.1, 00:04:12, Serial0/0/0.2 [90/2300416] via 10.1.1.1, 00:04:12, Serial0/0/0.1 D 10.17.32.0/23 [90/2300416] via 10.1.2.1, 00:04:12, Serial0/0/0.2 [90/2300416] via 10.1.1.1, 00:04:12, Serial0/0/0.1 From the Library of Alexey Evseenko 204 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide The configuration on WAN1 includes a four-line prefix list. The first line (sequence number 5) matches 10.17.35.0 /25 and 10.17.35.128 /25, in part because it asks for a range of prefix lengths from 25 to 25—meaning an exact length of 25. Similarly, the second statement (sequence number 10) matches routes 10.17.36.0 /26 and 10.17.36.64 /26. The third statement (sequence number 15) uses wildcard logic (0.0.0.0/0) to match all prefixes, but only those with prefix length 30 (ge 30 le 30). The last command matches all prefixes, with prefix lengths from 0 to 32 (all prefix lengths). The resulting IP routing table on branch Router B1 shows only a small number of routes. B1 has a route to the other example branch’s subnet (10.12.1.0) and another in the range of addresses for the data centers (10.16.1.0 /24). It has the two routes leaked from manufacturing. Note that the only two /30 routes known on B1 are two connected routes, so the distribute list is filtering all the /30 routes. Filtering by Using Route Maps Route maps, the third EIGRP route-filtering tool that can be referenced with the distribute-list command, provide programming logic similar to the If/Then/Else logic seen in programming languages. A single route map has one or more route-map commands in it, and routers process route-map commands in sequential order based on sequence numbers. Each route-map command has underlying matching parameters, configured with the aptly named match command. (To match all packets, the route-map clause simply omits the match command.) Route maps can be used for many functions besides being used to filter routes for a single routing protocol like EIGRP. Route maps can be used to filter routes during the route redistribution process, and to set Border Gateway Protocol (BGP) Path Attributes (PA) for the purpose of influencing the choice of the best routes in an internetwork. When used for filtering EIGRP routes, route maps do provide a few additional features beyond what can be configured using ACLs and prefix lists. However, route maps can be tricky to understand and sometimes counterintuitive. This subsection begins with an examination of the concepts behind Cisco IOS route maps, followed by some examples of their use for filtering EIGRP routes. Route Map Concepts Route maps have many similarities when compared to ACLs and prefix lists. A single route map has several route-map commands, with the commands in the same route map all having the same text name. When referenced by the distribute-list command, Cisco IOS processes the commands in the route map sequentially, based on the sequence numbers in the commands. Like ACLs and prefix lists, Cisco IOS adds the sequence numbers automatically if omitted when configuring the route-map commands. And after a particular route has been matched and determined to be either filtered (deny) or allowed to pass (permit), even if more route-map commands exist later in the list, Cisco IOS stops processing the route map for that route. Each route-map command includes the name of the route map, an action (permit or deny), and possibly a sequence number (optional). After typing this command, the CLI From the Library of Alexey Evseenko Chapter 5: Advanced EIGRP Concepts 205 user is in route-map configuration mode for that route-map clause. Any match commands configured in that mode apply to that single route-map command. For example, Example 5-12 shows the configuration of a sample route map on Router WAN1. Example 5-12 Pseudocode for Route Map Used as EIGRP Route Filter route-map sample-rm deny 8 match (1st set of criteria) route-map sample-rm permit 17 match (2nd set of criteria) route-map sample-rm deny 30 match (3rd set of criteria) route-map sample-rm permit 35 ! router eigrp 1 distribute-list route-map sample-rm out Key Topic Example 5-12 shows pseudocode, ignoring the specifics of what is matched with the match commands. Focus on the actions in the route-map command (permit or deny) and the overall logic, as listed here: ■ Seq #8: The action is deny, so discard or filter all routes matched by the match command (first set of criteria). ■ Seq #17: The action is permit, so allow through all routes matched by the match command (second set of criteria). ■ Seq #30: The action is deny, so discard or filter all routes matched by the match command (third set of criteria). ■ Seq #35: The action is permit. The absence of a match command means “match all,” so allow through all remaining routes. The match command can reference an ACL or prefix list, but doing so does introduce the possibility of confusion. The confusing part is that the decision to filter a route or allow the route through is based on the deny or permit in the route-map command, and not the deny or permit in the ACL or prefix list. When referencing an ACL or prefix list from a route map, the ACL or prefix list simply matches all routes permitted by the ACL or prefix list. Routes that are denied by the ACL or prefix list simply do not match that match command’s logic, making Cisco IOS then consider the next route-map command. The following list summarizes the key points about route map logic when used for redistribution: ■ route-map commands with the permit option either cause a route to be allowed through (if matched by the match command) or remain in the list of routes to be examined by the next route-map clause. ■ route-map commands with the deny option either filter the route (if matched by the match command) or leave the route in the list of routes to be examined by the next route-map clause. From the Library of Alexey Evseenko 206 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide ■ If a clause’s match commands refer to an ACL or prefix list, and the ACL or prefix list matches a route with the deny action, the route is not necessarily filtered. Instead, it just means that route does not match that particular match command and can then be considered by the next route-map clause. ■ The route-map command includes an implied deny all clause at the end; to configure a permit all, use the route-map command, with a permit action but without a match command. Route maps have several more options on the match command as compared to what can be examined by ACLs and IP prefix lists. However, for the purposes of EIGRP route filtering, the items that might be matched do not provide significant help in filtering routes. However, when redistributing routes from other routing protocols, as is covered in Chapter 10, “Route Redistribution,” some of the match command’s other options can be very helpful. Using Route Maps to Filter EIGRP Routes The mechanics of the configuration work much like the other two filtering features. The distribute-list command refers to the feature that matches the packets, in this case a route-map command option. The distribute-list command again lists a direction (in or out) and optionally an interface. Example 5-13 shows the configuration results in an excerpt from the show runningconfig command, along with the output of the show route-map command. The configuration implements the same logic as used in Example 5-11 earlier in this chapter, in the section “Using IP Prefix Lists to Filter EIGRP Routes.” The design criteria are the same as with that earlier example: ■ Of the routes from manufacturing, filter only those routes that begin with 10.17.35 and 10.17.36. ■ Filter WAN routers from advertising any /30 routes in the Layer 3 core. Example 5-13 Filtering All Routes with a /30 Prefix Length, Plus Some Routes from Manufacturing ! On Router WAN2: !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! WAN2# show running-config ! lines omitted for brevity router eigrp 1 network 10.0.0.0 distribute-list route-map filter-man-slash30 out auto-summary ! ip prefix-list manufacturing seq 5 permit 10.17.35.0/24 ge 25 le 25 ip prefix-list manufacturing seq 10 permit 10.17.36.0/24 ge 26 le 26 ! ip prefix-list slash30 seq 5 permit 0.0.0.0/0 ge 30 le 30 From the Library of Alexey Evseenko ! route-map filter-man-slash30 deny 8 match ip address prefix-list manufacturing ! route-map filter-man-slash30 deny 15 match ip address prefix-list slash30 ! route-map filter-man-slash30 permit 23 Chapter 5: Advanced EIGRP Concepts 207 ! Notice – no match commands, so the above clause matches all remaining routes ! ! lines omitted for brevity WAN2# show route-map route-map filter-man-slash30, deny, sequence 8 Match clauses: ip address prefix-lists: manufacturing Set clauses: Policy routing matches: 0 packets, 0 bytes route-map filter-man-slash30, deny, sequence 15 Match clauses: ip address prefix-lists: slash30 Set clauses: Policy routing matches: 0 packets, 0 bytes route-map filter-man-slash30, permit, sequence 23 Match clauses: Set clauses: Policy routing matches: 0 packets, 0 bytes In particular, note that the first two route-map commands list a deny action, meaning that all routes matched in these two clauses will be filtered. The IP prefix lists referenced in the match commands, called manufacturing and slash30, respectively, each match (permit) the routes listed in one of the two design goals. Note that the logic of both prefix lists could have easily been configured into a single prefix list, reducing the length of the route-map command as well. Finally, note that the last route-map command has a permit action, with no match command, meaning that the default action is to allow the route to be advertised. Also, it can be useful to take a moment and review Example 5-11 as a point of comparison for the use of the IP prefix lists in each case. In the route map of Example 5-13, the prefix list needs to match the routes with a permit clause so that the route-map deny action causes the routes to be filtered. Earlier, Example 5-11 shows the same basic logic in the prefix list, but with an action of deny. The reasoning is that when the distributelist prefix-list... command refers directly to an IP prefix list, Cisco IOS then filters routes denied by the prefix list. From the Library of Alexey Evseenko 208 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Route Summarization Keeping routing tables small helps conserve memory and can improve the time required by a router to forward packets. Route summarization allows an engineer to keep the routing tables more manageable, without limiting reachability. Instead of advertising routes for every subnet, a router advertises a single route that encompasses multiple subnets. Each router can forward packets to the same set of destinations, but the routing table is smaller. For example, instead of advertising routes 10.11.0.0/24, 10.11.1.0/24, 10.11.2.0/24, and so on—all subnets up through 10.11.255.0/24—a router could advertise a single route for 10.11.0.0/16, which includes the exact same range of addresses. Route summarization works best when the subnet planning process considers route summarization. To accommodate summarization, the engineer assigning subnets can assign larger address blocks to one part of the topology. The engineers working with that part of the internetwork can break the address blocks into individual subnets as needed. At the edge of that part of the network, the engineers can configure route summaries to be advertised to the other parts of the internetwork. In short, when possible, plan the route summaries before deploying the new parts of an internetwork, and then assign addresses to different parts of the internetwork within their assigned address blocks. For example, consider Figure 5-17, which shows a variation on the same internetwork shown earlier in this chapter, with the address blocks planned before deployment. B1 10.11.0.0/16 (Best Route Through WAN1) B2 10.12.0.0/16 (Best Route Through WAN2) Bx 10.1.0.0/16 WAN Links WAN1 10.9.1.0/24 Core Links 10.17.32.0/19 Manufacturing Core1 10.16.0.0/16 Data Center WAN2 Core2 Figure 5-17 Address Blocks Planned for Example Enterprise Internetwork Figure 5-17 shows the address blocks planned for various parts of the internetwork, as follows: ■ Assign branch subnets from two consecutive ranges—10.11.0.0/16 and 10.12.0.0/16. ■ Assign WAN router-to-router subnets from the range 10.1.0.0/16. ■ Assign core LAN router-to-router subnets from the range 10.9.1.0/24. ■ Assign data center subnets from the range 10.16.0.0/16. From the Library of Alexey Evseenko Chapter 5: Advanced EIGRP Concepts 209 ■ Give the manufacturing division, which has a separate IT staff, address block 10.17.32.0/19. Inside each of the circles in Figure 5-17, the engineering staff can assign subnets as the need arises. As long as addresses are not taken from one range and used in another part of the internetwork, the routers at the boundary between the regions (circles) in Figure 5-17 can configure EIGRP route summarization to both create one large summary route and prevent the advertisement of the smaller individual routes. Calculating Summary Routes The math to analyze a subnet/mask pair, or prefix/length pair, is identical to the math included as part of the CCNA certification. As such, this book does not attempt to explain those same concepts, other than this brief review of one useful shortcut when working with potential summary routes. If you can trust that the subnet/mask or prefix/length is a valid subnet or summary, the following method can tell you the range of numbers represented. For example, consider 10.11.0.0/16. Written in subnet/mask form, it is 10.11.0.0/255.255.0.0. Then, invert the mask by subtracting the mask from 255.255.255.255, yielding 0.0.255.255 in this case. Add this inverted mask to the subnet number (10.11.0.0 in this case), and you have the high end of the range (10.11.255.255). So, summary 10.11.0.0/16 represents all numbers from 10.11.0.0 to 10.11.255.255. When using less obvious masks, the process works the same. For example, consider 10.10.16.0/20. Converting to mask format, you have 10.10.16.0/255.255.240.0. Inverting the mask gives you 0.0.15.255. Adding the inverted mask to the subnet number gives you 10.10.31.255 and a range of 10.10.16.0–10.10.31.255. Note that the process of adding the inverted subnet mask assumes that the prefix/length or subnet/mask is a valid subnet number or valid summary route. If it is not, you can still do the math, but neither the low end nor high end of the range is valid. For example, 10.10.16.0/19, similar to the previous example, is not actually a subnet number. 10.10.16.0 would be an IP address in subnet 10.10.0.0/19, with range of addresses 10.10.0.0– 10.10.31.255. Choosing Where to Summarize Routes EIGRP supports route summarization at any router, unlike OSPF, which requires that summarization be performed only at area border routers (ABR) or autonomous system border routers (ASBR). EIGRP’s flexibility helps when designing the internetwork, but it also poses some questions as to where to summarize EIGRP routes. In some cases, the options are relatively obvious. For example, consider the 10.17.32.0/19 address block in manufacturing in Figure 5-17. The manufacturing division’s router could summarize all its routes as a single 10.17.32.0/19 route when advertising to Core1. Alternately, Core1 could summarize all those same routes, advertising a summary for 10.17.32.0/19. In either case, packets from the rest of the internetwork will flow toward Core1 and then to the Manufacturing division. From the Library of Alexey Evseenko 210 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Next, consider the 10.16.0.0/16 address block in the data center. Because all these subnets reside to the right of Layer 3 switches Core1 and Core2, these two devices could summarize 10.16.0.0/16. However, these routes could also be summarized on WAN1/WAN2 for advertisement to the branches on the left. Summarizing on Core1/Core2 helps reduce the size of the routing tables on WAN1 and WAN2. However, the sheer number of subnets in a data center is typically small compared to the number of small remote sites, so the savings of routing table space might be small. One advantage of summarizing 10.16.0.0/16 on WAN1/WAN2 instead of Core1/Core2 in this case is to avoid routing inefficiencies in the core of the internetwork. Influencing the Choice of Best Route for Summary Routes Often, engineers plan route summarization for the same address block on multiple routers. Such a design takes advantage of redundancy and can be used to perform basic load balancing of traffic across the various paths through the internetwork. Figure 5-18 shows one such example, with Routers WAN1 and WAN2 summarizing routes for the two address blocks located on the branch office LANs: 10.11.0.0/16 and 10.12.0.0/16. 10.11.1.0/24 B1 10.12.1.0/24 B2 Summaries: 10.11.0.0/16 3,000,000 10.12.0.0/16 10,000,000 1 Core1 BW 768 EIGRP WAN1 BW 256 Routing Table 2 Destination Next hop 10.11.0.0/16 WAN1 10.12.0.0/16 WAN2 BW 256 Core2 BW 768 WAN2 EIGRP 1 2 Summaries: 10.11.0.0/16 10,000,000 10.12.0.0/16 3,000,000 Routing Table Destination 10.11.0.0/16 10.12.0.0/16 Next hop WAN1 WAN2 Figure 5-18 Choosing Locations for Route Summarization The figure shows the advertisements of the summary routes. WAN1 and WAN2 both advertise the same summaries: 10.11.0.0/16 for some branches and 10.12.0.0/16 for the others. Note that by advertising the WAN routes, instead of filtering, the operations staff might have an easier time monitoring and troubleshooting the internetwork, while still meeting the design goal of reducing the size of the routing table. (Also, note that Router WAN1 summarizes Manufacturing’s routes of 10.17.32.0/19.) In some cases, the network designer has no preference for which of the two or more routers should be used to reach hosts within the summary route range. For example, for most data center designs, as shown earlier in Figure 5-13, the routes from the left of the figure toward the data center, through Core1 and Core2, would typically be considered equal. From the Library of Alexey Evseenko Chapter 5: Advanced EIGRP Concepts 211 However, in some cases, as in the design shown in Figure 5-18, the network designer wants to improve the metric of one of the summary routes for a single address block to make that route the preferred route. Using 10.11.0.0/16 as an example, consider this more detailed description of the design: ■ Use two PVCs to each branch—one faster PVC with 768-kbps CIR and one slower PVC (either 128-kbps or 256-kbps CIR). ■ Roughly half the branches should have a faster PVC connecting to Router WAN1, and the other half of the branches should have a faster PVC connecting to Router WAN2. ■ Assign user subnets from the range 10.11.0.0/16 for branches that use WAN1 as the primary WAN access point, and from 10.12.0.0/16 for the branches that use WAN2 as primary. ■ Routing should be influenced such that packets flow in both directions over the faster WAN link, assuming that link is working. This design requires that both directions of packets flow over the faster PVC to each branch. Focusing on the outbound (core-toward-branch) direction for now, by following the design and setting the interface bandwidth settings to match the PVC speeds, the outbound routes will send packets over the faster PVCs. The main reason for the route choices is the following fact about summary routes with Cisco IOS: Set the summary route’s metric components based on the lowest metric route upon which the summary route is based. By setting the interface bandwidth settings to match the design, the two WAN routers should summarize and advertise routes for 10.11.0.0/16 and 10.12.0.0/16, advertising these routes toward the core—but with different metrics. WAN1 advertises its 10.11.0.0/16 route with a lower metric than WAN2’s summary for 10.11.0.0/16, because all of WAN1’s routes for subnets that begin with 10.11 are reachable over links set to use 768 kbps of bandwidth. All WAN1’s links to branches whose subnets begin with 10.12 are reachable over links of speed 128 kbps or 256 kbps, so WAN1’s metric is higher than WAN2’s metric for the 10.12.0.0/16 summary. WAN2 follows the same logic but with the lower metric route for 10.12.0.0/16. As a result of the advertisements on WAN1 and WAN2, the core routers both have routing table entries that drive traffic meant for the faster-through-WAN1 branches to WAN1, and traffic for the faster-through-WAN2 branches to WAN2. Suboptimal Forwarding with Summarization An important concept to consider when summarizing routes is that the packets might take a longer path than if summarization is not used. The idea works a little like this story. Say that you were traveling to Europe from the United States. You knew nothing of European geography, other than that you wanted to go to Paris. So, you look around and find hundreds of flights to Europe and just pick the cheapest one. When you get to From the Library of Alexey Evseenko 212 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Europe, you worry about how to get the rest of the way to Paris—be it a taxi ride from the Paris airport or whether it takes a day of train travel. Although you do eventually get to Paris, if you had chosen to know more about European geography before you left, you could have saved yourself some travel time in Europe. Similarly, routers that learn a summary route do not know about the details of the subnets inside the summary. Instead, like the person who just picked the cheapest flight to Europe, the routers pick the lowest metric summary route for a prefix. That router forwards packets based on the summary route. Later, when these packets arrive at routers that do know all the subnets inside the summary, those routers can then use the best route—be it a short route or long route. For example, Figure 5-19 shows the less efficient routing of packets to host 10.11.1.1, a host off Router B1, assuming that the route summarization shown in Figure 5-14 still exists. When WAN1’s 768-kbps CIR PVC to Router B1 fails, WAN1 does not change its route advertisement for its 10.11.0.0/16 summary route. When EIGRP advertises a summary route, the advertising router considers the summary route to be up and working unless all subordinate routes fail. Unless all of WAN1’s specific routes in the 10.11.0.0/16 range failed, R1 would not notify routers on the right about any problem. So, when the example shown in Figure 5-19 begins, the 10.11.0.0/16 summary advertised by WAN1, as seen earlier in Figure 5-18, is still working, and both Core1 and Core2 use WAN1 as their next-hop router for their routes to 10.11.0.0/16. 10.11.1.0/24 10.11.1.0/24 - WAN2 10.11.0.0/16 - WAN1 Core1 1 B1 4 WAN1 3 2 WAN2 10.11.1.0/24 - B1 Core2 Figure 5-19 Suboptimal Forwarding Path When Primary PVC Fails Following the steps in the figure: Step 1. Core 1 sends a packet to 10.11.1.1, using its route for 10.16.0.0/16, to WAN1. Step 2. WAN1, which has routes for all the subnets that begin with 10.11, has a route for 10.11.1.0/24 with WAN2 as the next hop (because WAN1’s link to B1 has failed). From the Library of Alexey Evseenko Chapter 5: Advanced EIGRP Concepts 213 Step 3. Step 4. WAN2 has a route for 10.11.1.0/24, with B1 as the next hop, so WAN2 forwards the packet. B1 forwards the packet to host 10.11.1.1. Route Summarization Benefits and Trade-offs The previous section showed details of a classic trade-off with route summarization: the benefits of the summary route versus the possibility of inefficient routing. For easier study, the benefits and trade-offs for route summarization are listed here: Benefits: Key Topic ■ Smaller routing tables, while all destinations are still reachable. ■ Reduces Query scope: EIGRP Query stops at a router that has a summary route that includes the subnet listed in the Query but not the specific route listed in the Query. ■ EIGRP supports summarization at any location in the internetwork. ■ The summary has the metric of the best of the subnets being summarized. Trade-offs: ■ Can cause suboptimal routing. ■ Packets destined for inaccessible destinations will flow to the summarizing router before being discarded. Configuring EIGRP Route Summarization The more difficult part of EIGRP route summarization relates to the planning, design, and analysis of trade-offs, as covered in the preceding section. After you have made those design choices, configuring route summarization requires the addition of a few instances of the following interface subcommand: ip summary-address eigrp asn prefix subnet-mask Key Topic When configured on an interface, the router changes its logic for the EIGRP Update messages sent out the interface, as follows: ■ The router brings down, and then back up, all EIGRP neighbors reachable on that interface, effectively causing neighbors to forget previous topology information and to listen to new information (when the neighborships recover). ■ When the neighborships recover, the router advertises the summary route, per the ip summary-address command, assuming that the router has at least one route whose address range is inside the range of the summary route. ■ The router does not advertise the subordinate routes. (The term subordinate route refers to the routes whose address ranges are inside the range of addresses defined by the summary route.) From the Library of Alexey Evseenko 214 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide ■ The router adds a route to its own routing table, for the summary prefix/prefix length, with an outgoing interface of null0. In Figure 5-20, WAN1 and WAN2 summarize the routes for the data center in the range 10.16.0.0/16, instead of sending individual routes for this range to the branch offices. Example 5-14 shows the results of summarization on both routers. Fa0/0 10.11.1.1 S0/0/0.1 B1 S0/0/0.2 Fa0/0 10.12.1.1 S0/0/0.1 B2 S0/0/0.2 Example Branch Faster to WAN2 EIGRP Update: 10.16.0.0/16 Core1 768 Kbps .5 WAN1 128 Kbps .1 .9 .6 .14 .21 256 Kbps .2 .13 768 Kbps .17 WAN2 .22 .10 .18 Core2 EIGRP Update: 10.16.0.0/16 Data Center: 10.16.1.0/24 10.16.2.0/24 10.16.3.0/24 10.16.4.0/24 Figure 5-20 Summary for 10.16.0.0/16 on WAN1, WAN2 Example 5-14 Summarizing Routes for Data Center (10.16.0.0/16) on WAN1/WAN2 ! On Router WAN2: !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! WAN2# show running-config ! lines omitted for brevity ! interface Serial0/0/0.1 point-to-point bandwidth 256 ip address 10.1.2.1 255.255.255.252 ip summary-address eigrp 1 10.16.0.0 255.255.0.0 5 frame-relay interface-dlci 103 ! interface Serial0/0/0.2 point-to-point bandwidth 768 ip address 10.1.2.5 255.255.255.252 ip summary-address eigrp 1 10.16.0.0 255.255.0.0 5 frame-relay interface-dlci 104 ! WAN2# show ip eigrp topology 10.16.0.0/16 IP-EIGRP (AS 1): Topology entry for 10.16.0.0/16 State is Passive, Query origin flag is 1, 1 Successor(s), FD is 28416 Routing Descriptor Blocks: From the Library of Alexey Evseenko Chapter 5: Advanced EIGRP Concepts 215 0.0.0.0 (Null0), from 0.0.0.0, Send flag is 0x0 Composite metric is (28416/0), Route is Internal Vector metric: Minimum bandwidth is 100000 Kbit Total delay is 110 microseconds Reliability is 255/255 Load is 1/255 Minimum MTU is 1500 Hop count is 1 10.1.2.2 (Serial0/0/0.1), from 10.1.2.2, Send flag is 0x0 Composite metric is (11026688/3847936), Route is Internal Vector metric: Minimum bandwidth is 256 Kbit Total delay is 40110 microseconds Reliability is 255/255 Load is 1/255 Minimum MTU is 1500 Hop count is 3 ! Note that the following command lists only routes in the range ! of the summary – 10.16.0.0 – 10.16.255.255. WAN2# show ip route 10.16.0.0 255.255.0.0 longer-prefixes Codes: C - connected, S - static, R - RIP, M - mobile, B - BGP D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2 E1 - OSPF external type 1, E2 - OSPF external type 2 i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2 ia - IS-IS inter area, * - candidate default, U - per-user static route o - ODR, P - periodic downloaded static route Gateway of last resort is not set 10.0.0.0/8 is variably subnetted, 23 subnets, 6 masks D 10.16.2.0/24 [90/156160] via 10.9.1.14, 00:19:06, FastEthernet0/0.12 D 10.16.3.0/24 [90/156160] via 10.9.1.14, 00:19:06, FastEthernet0/0.12 D 10.16.0.0/16 is a summary, 00:14:07, Null0 D 10.16.1.0/24 [90/28416] via 10.9.1.18, 00:19:06, FastEthernet0/1.16 [90/28416] via 10.9.1.14, 00:19:06, FastEthernet0/0.12 D 10.16.4.0/24 [90/156160] via 10.9.1.14, 00:19:06, FastEthernet0/0.12 WAN2# show ip route 10.16.0.0 255.255.0.0 Routing entry for 10.16.0.0/16 Known via "eigrp 1", distance 5, metric 28416, type internal Redistributing via eigrp 1 Routing Descriptor Blocks: * directly connected, via Null0 Route metric is 28416, traffic share count is 1 From the Library of Alexey Evseenko 216 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Total delay is 110 microseconds, minimum bandwidth is 100000 Kbit Reliability 255/255, minimum MTU 1500 bytes Loading 1/255, Hops 0 Example 5-14 shows the results only on Router WAN2, but WAN1 will be identically configured with the ip summary-address command. With only two branch office routers actually implemented in my lab, WAN2 needs only two ip summary-address commands: one for the subinterface connected to Router B1 and another for the subinterface connected to B2. With a full implementation, this same command would be needed on each subinterface connected to a branch router. The example also shows how a router like WAN2 uses a summary route to null0. This route—10.16.0.0/16 with an outgoing interface of null0—causes the router (WAN2) to discard packets matched by this route. However, as you can see from the end of Example 5-14, WAN2 also has routes for all the known specific subnets. Pulling all these thoughts together, when the summarizing router receives a packet within the summary route’s range: ■ If the packet matches a more specific route than the summary route, the packet is forwarded based on that route. ■ When the packet does not match a more specific route, it matches the summary route and is discarded. To ensure that the router adds this local summary route, the router uses the administrative distance (AD) setting of 5. The user might have typed the ip summary-address eigrp 1 10.16.0.0 255.255.0.0 command, without the 5 at the end. Even so, Cisco IOS will add this default AD value as seen in Example 5-10. With an AD of 5, WAN2 will ignore any EIGRP-advertised summary routes for 10.16.0.0/16—for example, the summary created by neighbor WAN1—because EIGRP’s default AD for internal routes is 90. In fact, the output of WAN2’s show ip eigrp topology 10.16.0.0/16 command lists two known routes for 10.16.0.0/16: one to null0 and the other to branch Router WAN1 (outgoing interface S0/0/0.1). WAN2 uses the lower-AD route to null0, which prevents a routing loop. (Note that this summary route with outgoing interface null0 is often called a discard route.) Next, consider the results on the branch routers. The following might be reasonable design requirements that should be verified on the branch routers: ■ Each branch router’s route for 10.16.0.0/16 should use the primary (faster) PVC (see Figure 5-20). ■ Each branch router should be able to converge quickly to the other 10.16.0.0/16 summary route without using EIGRP Queries (in other words, there should be an FS route). Example 5-15 confirms that both requirements are met. From the Library of Alexey Evseenko Chapter 5: Advanced EIGRP Concepts 217 Example 5-15 Results of the 10.16.0.0/16 Summary on Routers B1, B2 ! Router B1 first !!!!!!!!!!!!!!!!!!!! B1# show ip route 10.16.0.0 255.255.0.0 longer-prefixes ! lines omitted for brevity 10.0.0.0/8 is variably subnetted, 5 subnets, 3 masks D 10.16.0.0/16 [90/3847936] via 10.1.1.1, 00:16:53, Serial0/0/0.1 B1# show ip eigrp topology ! lines omitted for brevity P 10.16.0.0/16, 1 successors, FD is 3847936 via 10.1.1.1 (3847936/28416), Serial0/0/0.1 via 10.1.2.1 (10514688/28416), Serial0/0/0.2 ! Router B2 Next !!!!!!!!!!!!!!!!!!!! B2# show ip route 10.16.0.0 255.255.0.0 longer-prefixes ! lines omitted for brevity 10.0.0.0/8 is variably subnetted, 5 subnets, 3 masks D 10.16.0.0/16 [90/3847936] via 10.1.2.5, 00:16:44, Serial0/0/0.2 First, on Router B1, the router has an IP route for 10.16.0.0/16, with outgoing interface S0/0/0.1. Per Figure 5-20, this subinterface indeed connects to the primary PVC. Per the show ip eigrp topology command, two possible routes for 10.16.0.0/16 are listed; this command only lists successor and feasible successor routes. Also, note that the FS route’s RD (28,416) is less than the successor route’s FD (3,847,936), which means that the secondary route indeed meets the feasibility condition. The reverse is true on Router B2. B2’s best route for 10.16.0.0/16 uses its S0/0/0.2, which connects to B2’s primary (faster) PVC through WAN2. Although not shown, it also lists its backup route over the slower PVC as a feasible successor. The route summarization feature discussed in this section is sometimes referred to as manual route summarization to contrast it with the term auto-summarization. EIGRP auto-summarization is explained next. Auto-summary Automatic summarization, also called auto-summary, causes a router to automatically advertise a summary route under certain conditions, without the use of the ip summaryaddress command. When using auto-summary, if a router has interfaces in more than one Class A, B, or C network, that router will advertise a single summary route for an entire Class A, B, or C network into the other classful network, rather than advertise routes for the individual subnets. The following is a more formal definition: Key Topic When a router has multiple working interfaces, and those interfaces use IP addresses in different classful networks, the router advertises a summary route for each classful network on interfaces attached to a different classful network. From the Library of Alexey Evseenko 218 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide The auto-summary feature first existed as a required feature of classful routing protocols. By definition, classful routing protocols (RIPv1 and IGRP) do not advertise subnet mask information. The omission of the subnet mask in routing updates causes several design problems—in particular, these protocols cannot support variable-length subnet masks (VLSM), route summarization, or discontiguous network designs. The newer IGPs (for example, EIGRP, OSPF, and RIPv2) are classless routing protocols, because they advertise the subnet mask and support VLSM. However, with auto-summary enabled, EIGRP acts like classful routing protocols in one specific way: They do not support discontiguous networks. To support discontiguous networks with EIGRP, simply disable auto-summary. To better understand discontiguous networks, consider this analogy. U.S. residents can appreciate the concept of a discontiguous network based on the common term contiguous 48, referring to the 48 U.S. states other than Alaska and Hawaii. To drive to Alaska from the contiguous 48 U.S. states, for example, you must drive through another country (Canada), so Alaska is not contiguous with the 48 states. In other words, it is discontiguous. More formally: ■ Contiguous network: A single classful network in which packets sent between every pair of subnets will pass only through subnets of that same classful network, without having to pass through subnets of any other classful network. ■ Discontiguous network: A single classful network in which packets sent between at least one pair of subnets must pass through subnets of a different classful network. Figure 5-21 shows a classic example of a discontiguous network 10.0.0.0. Subnets of Class A network 10.0.0.0 exist on the left and the right, with subnets of Class B network 172.16.0.0 in the middle of the internetwork. Following the figure, the problem created by the auto-summary feature is described. Which Route to Network 10.0.0.0 Do I Believe? 10.2.1.0 10.2.2.0 10.2.3.0 10.2.4.0 Yosemite Albuquerque 172.16.2.0 172.16.3.0 S0/0 S0/1 Seville 172.16.1.0 Mask: 255.255.255.0 Figure 5-21 Discontiguous Network 10.0.0.0 10.3.4.0 10.3.5.0 10.3.6.0 10.3.7.0 From the Library of Alexey Evseenko Chapter 5: Advanced EIGRP Concepts 219 The problem is that when EIGRP auto-summarizes routes at the boundary between classful networks, routers in other classful networks cannot route packets to all the destinations. For example, because both Yosemite and Seville use auto-summary, they both advertise a route for 10.0.0.0/8 to Albuquerque. Albuquerque might choose one of the two as the better route—for example, it might choose the route to the left, through Yosemite. However, in that case, Albuquerque cannot forward packets to the network 10.0.0.0 hosts on the right. Even if Albuquerque decided to add both routes to its routing table, the load sharing typically occurs per destination IP address, not per subnet. So, some packets might be delivered to the correct host and others not. For EIGRP, two solutions exist. First, you could design the network to not use a discontiguous network. Alternatively, you can just disable auto-summary using the no autosummary subcommand inside EIGRP configuration mode. This command affects the behavior of the router on which it is configured only and tells that router to not advertise a summary route for the entire classful network. Instead, that router advertises all the subnets, as if the auto-summary feature did not exist. Note The auto-summary and no auto-summary commands have no effect on routers that connect to a single classful network. Default Routes A router’s default route matches the destination of all packets that are not matched by any other route in the IP routing table. In fact, a default route can be thought of as the ultimate summary route—a route for the prefix that includes all IPv4 addresses, as represented by prefix/length 0.0.0.0/0. This section first examines the most common use of default routes inside an enterprise: to draw Internet traffic toward the Internet-connected routers without having to put routes for all Internet destinations into the enterprise routers’ routing tables. Following that, this section examines two methods for EIGRP to advertise the default route. Default Routing to the Internet Router Consider an enterprise network and its connection to the Internet, as shown in Figure 5-22. For now, the design shows a single Internet-facing router (I1). As is often the case, the entire enterprise in this figure uses private IP addresses. In this case, all enterprise subnets are part of private Class A network 10.0.0.0. From the Library of Alexey Evseenko 220 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide default B1 default WAN1 Core1 default B2 default default default WAN2 default Core2 default B3 default Internet I1 S0/0/0 Figure 5-22 Pulling Packets to the Internet Router (I1) From a design perspective, the entire enterprise can use a default route to forward packets to the Internet. To accomplish this design, the Internet-facing router advertises a default route. All routers flood this default prefix throughout the EIGRP domain, building their own default routes. When converged, all routers have a default route, plus the usual enterprise routes. Packets destined for addresses inside the enterprise use the same old routes, ignoring the default route. Packets destined outside the enterprise use each router’s respective default route because no other routes match the destination. Eventually, these packets arrive at Router I1. When I1 receives these packets, it can forward toward the Internet, either based on a default route or on routes learned using BGP. Figure 5-22 shows a case with just one Internet-facing router, but with multiple routers, the same concepts can be used. The multiple Internet-facing routers can each advertise a default route, and each enterprise router will think that one of the available defaults is best—causing the packets to arrive at the nearest Internet access point. Default Routing Configuration with EIGRP This section examines the two main options for EIGRP to advertise default routes: to define a static default route and advertise it with EIGRP and to flag an existing route to be used also as a default route. Advertising Static Default Routes with EIGRP To cause the advertisement of the default routes shown in Figure 5-22, Router I1 can follow these steps: Key Topic Step 1. Create a static route default route using the ip route 0.0.0.0 0.0.0.0 S0/0/0 command. From the Library of Alexey Evseenko Chapter 5: Advanced EIGRP Concepts 221 Step 2. Inject this route into the EIGRP topology database, either using the network 0.0.0.0 command or by redistributing the static route. First, examine the command listed for Step 1: ip route 0.0.0.0 0.0.0.0 S0/0/0. The prefix and mask together represent all IPv4 addresses. The reasoning is that if a mask of 255.255.0.0 means “the last two octets can be any value,” and 255.0.0.0 means “the last three octets can be any value,” a subnet mask of 0.0.0.0 means that all four octets can be any value. The outgoing interface, S0/0/0 in this case, tells I1 to send packets for otherwise unknown destinations over the link to the Internet, as intended. After Step 1, Router I1 has a route in its routing table, but EIGRP does not yet advertise the route. I1 could be configured to perform route redistribution for this static route. (Refer to Chapter 10 for more information on route redistribution.) The other option is to use the network 0.0.0.0 EIGRP subcommand. Oddly enough, this is a special case in which Cisco IOS thinks “if my routing table has a default route in it, put a default route (0.0.0.0/0) into the EIGRP table.” (If the route leaves the routing table, the router will notify neighbors that the route has failed.) Configuring a Default Network The second option for creating a default route is to flag a route for a classful network— for a prefix that will be advertised into the EIGRP domain—as a route that can be used as a default route. Then each router can use the forwarding details in that route—the outgoing interface and next-hop router—as its default route. Configuring this feature requires a couple of steps. The concepts require the most thought, with the configuration commands that follow being relatively simple: Key Topic Step 1. On the router to which all traffic should be directed, identify a classful network that can be advertised into the EIGRP domain, and ensure that network is being advertised into EIGRP (typically using the EIGRP network command). Step 2. Configure that network as a default network using the global command ip default-network network-number. Step 1 requires a Class A, B, or C network, known in the routing table of the router that will generate the default route (Router I1 in Figure 5-23). Most often, that route is either created off a loopback interface for the purpose of making this process work, or an existing route on the Internet side of the router is used. Figure 5-23 shows two examples. First, Class C network 198.133.219.0/24 exists off I1’s S0/0/0 interface, so I1 has a connected route for this Class C network in its routing table. Alternatively, the engineer could configure a loopback interface, such as loopback 8, so that I1 would have a connected route for 192.31.7.0/24. In both cases, the routes would need to be advertised into EIGRP, by matching the address using the network command. If the configuration stopped at Step 1, the enterprise routers simply know yet another route. By adding the ip default-network command to refer to one of these networks, EIGRP then flags this route as a candidate default route. As a result, each EIGRP router treats its route for this particular network also as if it were a default route. From the Library of Alexey Evseenko 222 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Core1 B1 WAN1 Core2 B2 WAN2 EIGRP Update 198.133.219.0/24 192.31.7.0/24 I1 S0/0/0 ISP1 198.133.219.1 198.133.219.2 Loopback 8 192.31.7.1/24 Figure 5-23 Example Default Networks Example 5-16 shows an example of the configuration on Router I1, along with some of the show commands on Router I1. Example 5-16 Configuring a Default Network on Router I1 I1# configure terminal Enter configuration commands, one per line. End with CNTL/Z. I1(config)# interface loopback 8 I1(config-if)# ip address 192.31.7.1 255.255.255.0 I1(config-if)# router eigrp 1 I1(config-router)# network 192.31.7.0 I1(config-router)# exit I1(config)# ip default-network 192.31.7.0 I1(config-router)# ^Z I1# show ip route Codes: C - connected, S - static, R - RIP, M - mobile, B - BGP D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2 E1 - OSPF external type 1, E2 - OSPF external type 2 i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2 ia - IS-IS inter area, * - candidate default, U - per-user static route o - ODR, P - periodic downloaded static route Gateway of last resort is not set 10.0.0.0/8 is variably subnetted, 15 subnets, 3 masks ! lines omitted for brevity From the Library of Alexey Evseenko Chapter 5: Advanced EIGRP Concepts 223 C* 192.31.7.0/24 is directly connected, Loopback8 I1# show ip eigrp topology 192.31.7.0/24 IP-EIGRP (AS 1): Topology entry for 192.31.7.0/24 State is Passive, Query origin flag is 1, 1 Successor(s), FD is 128256 Routing Descriptor Blocks: 0.0.0.0 (Loopback8), from Connected, Send flag is 0x0 Composite metric is (128256/0), Route is Internal Vector metric: Minimum bandwidth is 10000000 Kbit Total delay is 5000 microseconds Reliability is 255/255 Load is 1/255 Minimum MTU is 1514 Hop count is 0 Exterior flag is set The configuration has several results, as seen in the example: ■ A connected route for 192.31.7.0/24, a Class C network ■ The advertisement of that network into EIGRP because of the network 192.31.7.0 command ■ The setting of the exterior flag on the route Because of the ip default-network 192.31.7.0 command, the routing table lists the route as a candidate default route, as denoted by an asterisk. Interestingly, the router with the ip default-network command configured (I1 in this case) does not use that route as a default route, as indicated by the highlighted phrase “Gateway of last resort is not set.” (Gateway of last resort refers to the next-hop router of a router’s current default route.) Although I1 flags the route as a candidate default route, I1 itself does not use that route as its default, because I1 is actually the original advertiser of the default. Moving on to another enterprise router, in this case B1, you can see in Example 5-17 that not only does the remote router learn the candidate default route, but that B1 also uses this same information as B1’s default route. Example 5-17 Gateway of Last Resort on Router B1 B1# show ip route Codes: C - connected, S - static, R - RIP, M - mobile, B - BGP D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2 E1 - OSPF external type 1, E2 - OSPF external type 2 i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2 ia - IS-IS inter area, * - candidate default, U - per-user static route From the Library of Alexey Evseenko 224 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide o - ODR, P - periodic downloaded static route Gateway of last resort is 10.1.1.1 to network 192.31.7.0 10.0.0.0/8 is variably subnetted, 15 subnets, 3 masks Lines omitted for brevity D* 192.31.7.0/24 [90/2297856] via 10.1.1.1, 00:05:10, Serial0/0/0.1 In this case, B1 has indeed learned an EIGRP route for 192.31.7.0/24, a route flagged as exterior. Because this happens to be the only candidate default route learned by B1 at this point, it is the best default route. So, B1 sets its gateway of last resort to 10.1.1.1— the next-hop IP address of B1’s route to 192.31.7.0/24. If B1 knew of multiple candidate default routes, it would have chosen the best route based on administrative distance and then metric, and used that route as the basis for the gateway of last resort. From the Library of Alexey Evseenko Exam Preparation Tasks Chapter 5: Advanced EIGRP Concepts 225 Planning Practice The CCNP ROUTE exam expects test takers to review design documents, create implementation plans, and create verification plans. This section provides exercises that can help you to take a step back from the minute details of the topics in this chapter so that you can think about the same technical topics from the planning perspective. For each planning practice table, simply complete the table. Note that any numbers in parentheses represent the number of options listed for each item in the solutions in Appendix F, “Completed Planning Practice Tables.” Design Review Table Table 5-8 lists several design goals related to this chapter. If these design goals were listed in a design document, and you had to take that document and develop an implementation plan, what implementation options come to mind? For any configuration items, a general description can be used, without concern about the specific parameters. Table 5-8 Design Review Design Goal Limit consumption of IP subnets in Frame Relay WAN design. In a relatively slow Frame Relay WAN, protect against consuming too much bandwidth with overhead EIGRP traffic. Plan to change bandwidth from 1X CIR to 2X CIR on all Frame Relay subinterfaces. Plan to set bandwidth to values other than actual interface speeds to manipulate EIGRP metrics. A goal of ensuring all remote routers’ secondary EIGRP routes do not require Queries for convergence. What tools can we use to meet the design goal of fast convergence? (four items) R1 and R2 will advertise the same summary route; ensure that R1 is the preferred EIGRP path for that summary. Possible Implementation Choices Covered in This Chapter From the Library of Alexey Evseenko 226 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Design Goal Prevent the edge routers in sites for one division of the company from knowing routes for subnets in another division. Always ensure that the shortest path is taken with each route. Possible Implementation Choices Covered in This Chapter Implementation Plan Peer Review Table Table 5-9 shows a list of questions that others might ask, or that you might think about, during a peer review of another network engineer’s implementation plan. Complete the table by answering the questions. Table 5-9 Notable Questions from This Chapter to Consider During an Implementation Plan Peer Review Question A Frame Relay multipoint interface, with 20 PVCs attached, has a configuration for 10 percent of the bandwidth to be used for EIGRP. How much is allocated per PVC? A configuration lists the no ip split-horizon command. When would that matter? Answer The plan calls for setting all EIGRP K-values to 1. What negative effect could this have on routes in the IP routing table? The configuration uses offset lists. Will that impact the calculation of FD and/or RD? The plan lists a sample configuration migrating an interface from delay 20 to delay 200. How much will the metric go up? The plan shows extensive use of Class C private networks inside a large enterprise. What effect might EIGRP auto-summary have? The plan shows a sample configuration of the ip summary-address eigrp 1 10.10.0.0 255.255.252.0 command on Router R1. What routes should I see on R1? What will their administrative distance be? From the Library of Alexey Evseenko Chapter 5: Advanced EIGRP Concepts 227 Question The plan shows the use of the variance 4 command. What must be configured to add other routes to a routing table? (two items) The plan calls for filtering 10.10.10.0/26 and 10.10.12.0/26, but not 10.10.11.0/24. What tools can be used? Answer Create an Implementation Plan Table To practice skills useful when creating your own EIGRP implementation plan, list in Table 5-10 configuration commands related to the configuration of the following features. You might want to record your answers outside the book and set a goal to complete this table (and others like it) from memory during your final reviews before taking the exam. Table 5-10 Implementation Plan Configuration Memory Drill Feature Enabling EIGRP on interfaces Configuration Commands/Notes Enabling or disabling Split Horizon for EIGRP Setting the bandwidth consumed by EIGRP on an interface Setting an interface’s logical bandwidth Setting an interface’s logical delay K-values Configuring an EIGRP offset list that matches a prefix Configuring an EIGRP offset list that matches a prefix and prefix length Configuring a summary route Enabling or disabling auto-summary Configuring unequal-cost load balancing Configuring an EIGRP stub router Filtering EIGRP routes using numbered ACLs Filtering EIGRP routes using prefix lists From the Library of Alexey Evseenko 228 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Feature Enabling filtering EIGRP routes using route maps Configure a default route using ip defaultnetwork Configure a default route using static routes Configuration Commands/Notes Choose Commands for a Verification Plan Table To practice skills useful when creating your own EIGRP verification plan, list in Table 511 all commands that supply the requested information. You might want to record your answers outside the book, and set a goal to complete this table (and others like it) from memory during your final reviews before taking the exam. Table 5-11 Verification Plan Memory Drill Key Topic Information Needed Command The composite metric values for all EIGRP prefixes. Display EIGRP Split Horizon settings. Calculate the maximum bandwidth EIGRP will consume on a physical or point-to-point subinterface. Calculate the maximum bandwidth EIGRP will consume per PVC on a multipoint Frame Relay subinterface. Display the increase in RD after implementing an EIGRP offset list. Display interface bandwidth and delay settings. List EIGRP K-values. Find the number of successor and feasible successor routes. Find all routes, including nonsuccessors. Determine whether the local router is a stub router. Determine whether a neighboring router is a stub router. Display a summary IP route. From the Library of Alexey Evseenko Chapter 5: Advanced EIGRP Concepts 229 Information Needed Command On summarizing router, display EIGRP topology info on a summary route. On summarizing router, display IP routes for a summary route and its subordinate routes. On summarizing router, display the administrative distance of the null route. Display the current auto-summary setting. Find the current settings of variance and maximum-paths. Display messages each time EIGRP suppresses a prefix advertisement because of Split Horizon. Display prefix lists. Display route maps. Determine whether a prefix in the EIGRP topology table has been flagged as a candidate default route. Determine whether an IP route has been flagged as a candidate default route. Display a router’s preferred default route. Review All the Key Topics Review the most important topics from the chapter, noted with the Key Topic icon in the outer margin of the page. Table 5-12 lists a reference of these key topics and the page numbers on which each is found. Table 5-12 Key Topics for Chapter 5 Key Topic Key Topic Element Description List Three sources for seeding a local router’s EIGRP topology table List EIGRP message types (5) List Rules for EIGRP topology exchange Definitions Feasible Distance, Reported Distance List Key points about variance Page Number 162 163 166 172 183 From the Library of Alexey Evseenko 230 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Key Topic Element Description Definition Feasibility condition Figure 5-9 Successors and Feasible Successors with EIGRP List Two commands to find all EIGRP routes versus all successor/feasible successor routes List EIGRP process of finding routes when going active Definition EIGRP stub router Table 5-4 Parameters on the eigrp stub Command Definition Rule by which summary routes reduce Query scope List Prefix list logic Table 5-6 LE and GE Parameters on IP Prefix List, and the Implied Range of Prefix Lengths List Key points of route map logic List Benefits and trade-offs regarding the use of route summarization List A summary of what occurs when configuring an EIGRP summary route Definition Auto-summary List Steps to advertise static routes with EIGRP List Steps to configure a default network Page Number 184 185 185 188 190 191 192 199 200 205 213 213 217 220 221 Complete the Tables and Lists from Memory Print a copy of Appendix D, “Memory Tables,” (found on the CD) or at least the section for this chapter, and complete the tables and lists from memory. Appendix E, “Memory Tables Answer Key,” also on the CD, includes completed tables and lists to check your work. Define Key Terms Define the following key terms from this chapter, and check your answers in the glossary. feasibility condition, feasible distance, feasible successor, full update, partial update, reported distance, advertised distance, successor, Split Horizon, bandwidth, delay, K-value, offset list, going active, DUAL, Query scope, EIGRP stub router, variance, prefix list, route map, distribute list, address block, subordinate route, auto-summary, default network, static default route, gateway of last resort From the Library of Alexey Evseenko This page intentionally left blank From the Library of Alexey Evseenko This chapter covers the following subjects: ■ EIGRP for IPv6: This section compares and con- trasts EIGRP for IPv4 and for IPv6, and shows how to configure EIGRP for IPv6. Verification commands are also covered in this section. ■ Named EIGRP: This section examines an alternate approach to configuring EIGRP. While traditional EIGRP configuration necessitates that some commands be entered under interface configuration mode and other commands be entered under router configuration mode, Named EIGRP allows those commands to be entered collectively, under a single EIGRP virtual instance. From the Library of Alexey Evseenko CHAPTER 6 EIGRP for IPv6 and Named EIGRP EIGRP’s original architecture allowed it to support the routing of multiple protocols, including IPv4, IPX, and AppleTalk. As a result, it was not difficult for Cisco to allow IPv6 support with Enhanced Interior Gateway Routing Protocol (EIGRP). One of the primary configuration differences between EIGRP for IPv4 and EIGRP for IPv6 is how an interface is told to participate in an EIGRP autonomous system (AS). As you’ll see in this chapter, you enter interface configuration mode and directly tell the interface to route IPv6 traffic as part of a specific EIGRP AS, as opposed to using a network command in router configuration mode for EIGRP. Another fairly recent enhancement to EIGRP is a new hierarchical approach to configuration, specifically Named EIGRP configuration. While the configuration of Named EIGRP might seem more complex at first, it allows you to enter all your EIGRP configuration commands under a single configuration section, rather than going back and forth between interface configuration mode and router configuration mode, which introduces the possibility of mistyping the EIGRP AS every time you go back into router configuration mode. Also, for many complex EIGRP configurations, a Named EIGRP configuration requires fewer commands than classic EIGRP configuration. “Do I Know This Already?” Quiz The “Do I Know This Already?” quiz allows you to assess whether you should read the entire chapter. If you miss no more than one of these six self-assessment questions, you might want to move ahead to the “Exam Preparation Tasks” section. Table 6-1 lists the major headings in this chapter and the “Do I Know This Already?” quiz questions covering the material in those headings, so that you can assess your knowledge of these specific areas. The answers to the “Do I Know This Already?” quiz appear in Appendix A. Table 6-1 “Do I Know This Already?” Foundation Topics Section-to-Question Mapping Foundation Topics Section EIGRP for IPv6 Named EIGRP Questions 1, 2 3–6 From the Library of Alexey Evseenko 234 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide 1. You are attempting to configure EIGRP for IPv6 on a router. However, Cisco IOS presents you with a message indicating that routing is not enabled for IPv6. What command would you issue to enable IPv6 routing? a. Router(config)# ipv6 unicast-routing b. Router(config-rtr)# ipv6 unicast-routing c. Router(config-rtr)# ipv6 cef d. Router(config)# ipv6 eigrp 2. Router R1 connects to Router R2 over an Ethernet LAN with both routers using their Fa0/0 interfaces. R1 learns a route from R2 using EIGRP for IPv6. That route lists Fa0/0 as the outgoing interface with R2 as the next hop. The configuration excerpt shows all relevant configuration on R2’s Fa0/0 interface. Which of the following is true about R1’s route? interface f0/0 mac-address 1111.1111.1111 ipv6 address 2000::/64 eui-64 ipv6 address 2001::1/64 a. The next hop is 2000::1311:11FF:FE11:1111 b. The next hop is FE80::1311:11FF:FE11:1111 c. The next hop is FE80::5111:11FF:FE11:1111 d. The next hop is 2001::1 3. Under what configuration mode for Named EIGRP would you configure a passive interface? a. Address-Family configuration mode b. Address-Family-Interface configuration mode c. Address-Family-Global configuration mode d. Address-Family-Topology configuration mode 4. Under what configuration mode for Named EIGRP would you configure variance? a. Address-Family configuration mode b. Address-Family-interface configuration mode c. Address-Family-Global configuration mode d. Address-Family-Topology configuration mode From the Library of Alexey Evseenko Chapter 6: EIGRP for IPv6 and Named EIGRP 235 5. When configuring Named EIGRP, you want to specify the Hello interval for all interfaces. You could go into address-family-interface configuration mode for each interface and enter the hello-interval command. However, what command could you give from address-family configuration mode to go into a configuration mode that allowed you to configure the Hello Interval for all interfaces with a single hellointerval command? a. address-family global b. af-interface default c. af-interface-all d. address-family * 6. You configured a router with a Named EIGRP configuration. What command would you use to view the EIGRP for IPv4 topology table? a. show address-family ipv4 topology b. show ip eigrp topology c. show address-family-topology d. show ip address-family From the Library of Alexey Evseenko 236 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Foundation Topics IPv6 is no longer a curiosity that we know we will need to migrate to someday. IPv6 is happening all around us right now. So, we have to be able to support it on our networks. What IGP routing protocol options do we have for IPv6? Well, the common ones we might think of are RIP next generation (RIPng), EIGRP, and Open Shortest Path First version 3 (OSPFv3). The choice of which routing protocol to use will probably be based on what we are currently using to route IPv4 traffic. However, if you are currently running EIGRP for your IPv4 networks, you might want to stay with EIGRP as your interior gateway protocol (IGP) of choice to support IPv6 traffic. That is the focus of the first section in this chapter. The second major section of this chapter introduces you to a new paradigm for EIGRP configuration, called named mode configuration, which we will also refer to as Named EIGRP. This hierarchical approach to configuration can help reduce configuration errors, while being more efficient for complex EIGRP configurations. EIGRP for IPv6 Cisco originally created EIGRP to advertise routes for IPv4, IPX, and AppleTalk. This original EIGRP architecture easily allowed for yet another Layer 3 protocol, IPv6, to be added. As a result, Cisco did not have to change EIGRP significantly to support IPv6, so many similarities exist between the IPv4 and IPv6 versions of EIGRP. Note Many documents, including this chapter, refer to the IPv6 version of EIGRP as EIGRP for IPv6. However, some documents at www.cisco.com also refer to this protocol as EIGRPv6, not because it is the sixth version of the protocol, but because it implies a relationship with IPv6. This section begins with a discussion of the similarities and differences between the IPv4 and IPv6 versions of EIGRP. The remaining coverage of EIGRP in this section focuses on the changes to EIGRP configuration and verification in support of IPv6. EIGRP for IPv4 and IPv6: Theory and Comparisons For the most part, EIGRP for IPv4 and for IPv6 have many similarities. The following list outlines some of the key differences: ■ EIGRP for IPv6 advertises IPv6 prefixes/lengths, rather than IPv4 subnet/mask information. ■ EIGRP for IPv6 uses the neighbor’s link-local address as the next-hop IP address; EIGRP for IPv4 has no equivalent concept. From the Library of Alexey Evseenko Chapter 6: EIGRP for IPv6 and Named EIGRP 237 ■ EIGRP for IPv6 encapsulates its messages in IPv6 packets, rather than IPv4 packets. ■ EIGRP for IPv4 defaults to use automatic route summarization at the boundaries of classful IPv4 networks. IPv6 has no concept of classful networks, so EIGRP for IPv6 cannot perform any automatic summarization. ■ EIGRP for IPv6 does not require neighbors to be in the same IPv6 subnet as a requirement to become neighbors. Other than these differences, most of the details of EIGRP for IPv6 work like EIGRP for IPv4. For reference, Table 6-2 compares the features of each. Table 6-2 Comparing EIGRP for IPv4 and IPv6 Key Topic Feature Advertises routes for... Layer 3 protocol for EIGRP messages Layer 3 header protocol type UDP port Uses Successor, Feasible Successor logic Uses DUAL Supports VLSM Can perform automatic summarization Uses triggered updates Uses composite metric, default using bandwidth and delay Metric meaning infinity Supports route tags Multicast Update destination EIGRP for IPv4 EIGRP for IPv6 IPv4 IPv6 IPv4 IPv6 88 88 — — Yes Yes Yes Yes Yes Yes Yes — Yes Yes Yes Yes 232 – 1 Yes 224.0.0.10 232 – 1 Yes FF02::A Configuring EIGRP for IPv6 EIGRP for IPv6 follows the same basic configuration style as for RIPng. The specific EIGRP for IPv6 configuration steps are as follows: Key Topic Step 1. Step 2. Enable IPv6 routing with the ipv6 unicast-routing global command. Enable EIGRP using the ipv6 router eigrp {1 – 65535} global configuration command. From the Library of Alexey Evseenko 238 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Step 3. Enable IPv6 on the interface, typically with one of these two methods: ■ Configure an IPv6 unicast address on each interface, using the ipv6 address address/prefix-length [eui-64] interface command. Step 4. ■ Configure the ipv6 enable command, which enables IPv6 and causes the router to derive its link-local address. Enable EIGRP on the interface with the ipv6 eigrp asn interface subcommand (where the asn matches the ipv6 router eigrp asn global configuration command). Step 5. Enable EIGRP for IPv6 with a no shutdown command while in EIGRP configuration mode, if EIGRP is currently disabled. Step 6. If no EIGRP router ID has been automatically chosen, because of not having at least one working interface with an IPv4 address, configure an EIGRP router ID with the router-id rid command in EIGRP configuration mode. The first four steps essentially mirror the four steps in the RIPng configuration process discussed in Chapter 3, “IPv6 Review and RIPng.” The same interdependencies exist for EIGRP for IPv6 as well. Specifically, the command at Step 2 works only if Step 1’s command has been configured, and the command at Step 4 fails if the command at Step 3 has not yet been completed. EIGRP for IPv6 might also require Steps 5 and 6, whereas RIPng does not need equivalent steps. First, at Step 5, Cisco IOS supports the ability to stop and start the EIGRP process with the shutdown and no shutdown router mode subcommands. Step 6 shows the other difference as compared to RIPng configuration, but this step might or might not be needed. The EIGRP for IPv6 process must have a router ID (RID) before the process works. EIGRP for IPv6 uses the same process as EIGRP for IPv4 for choosing the RID. The EIGRP for IPv6 RID is indeed a 32-bit number. The following list defines how EIGRP for IPv6 picks its RID, listed in the order of preference: Step 1. Use the configured value (using the router-id a.b.c.d EIGRP subcommand under the ipv6 router eigrp configuration mode). Step 2. Use the highest IPv4 address on an up/up loopback interface. Step 3. Use the highest IPv4 address on an up/up nonloopback interface. Note that although most installations already have IPv4 addresses configured, it is possible that the EIGRP for IPv6 process cannot derive an RID value. If the router has no working interfaces that have IPv4 addresses, and the EIGRP for IPv6 RID is not explicitly configured, the EIGRP for IPv6 process simply does not work. So, the six-step configuration process includes a mention of the EIGRP RID. More generally, it might be prudent to configure an RID explicitly as a matter of habit. After being enabled on an interface, EIGRP for IPv6 performs the same two basic tasks as it does with EIGRP for IPv4: It discovers neighbors and advertises connected subnets. EIGRP for IPv6 uses the same set of neighbor checks as do routers using EIGRP for IPv4, except that EIGRP for IPv6 does not require that neighboring IPv6 routers have IPv6 From the Library of Alexey Evseenko Chapter 6: EIGRP for IPv6 and Named EIGRP 239 addresses in the same subnet. Also, as with EIGRP for IPv4, EIGRP for IPv6 advertises any and all connected subnets on an interface, with the exception of the linklocal addresses and the local routes (the host routes for a router’s own interface IPv6 addresses). Example 6-1 shows a sample configuration on Router R1 from Figure 6-1. All neighboring routers must use the same ASN; ASN 9 will be used in this case. Subnet 2034::/64 Fa0/0 S0/0/0.1 R3 S0/0/0.2 Fa0/0 S0/0/0.1 R4 S0/0/0.2 Fa0/0 S0/0.1 R5 S0/0.2 Subnet 2005::/64 Subnet 2013::/64 Subnet 2014::/64 R1 Fa0/0.1 Fa0/0 Fa0/1 SW1 Fa0/1 Fa0/2 Gi0/1 Subnet 2015::/64 Subnet 2023::/64 Subnet 2024::/64 Subnet 2025::/64 Fa0/0.1 Fa0/0 R2 Fa0/1 Fa0/1 Gi0/1 Fa0/2 SW2 Data SW3 Center Subnet 2099::/64 Figure 6-1 Sample Internetwork for IPv6 Routing Protocol Configuration Key Topic Example 6-1 Configuring EIGRP for IPv6 Routing on R1 R1# show running-config ! output is edited to remove lines not pertinent to this example ! Configuration step 1: enabling IPv6 routing ipv6 unicast-routing ! Next, configuration steps 3 and 4, on 5 different interfaces interface FastEthernet0/0.1 ipv6 address 2012::1/64 ipv6 eigrp 9 ! interface FastEthernet0/0.2 ipv6 address 2017::1/64 ipv6 eigrp 9 ! interface FastEthernet0/1.18 ipv6 address 2018::1/64 ipv6 eigrp 9 ! interface Serial0/0/0.3 ipv6 address 2013::1/64 From the Library of Alexey Evseenko 240 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide ipv6 eigrp 9 ! interface Serial0/0/0.4 ipv6 address 2014::1/64 ipv6 eigrp 9 ! interface Serial0/0/0.5 ipv6 address 2015::1/64 ipv6 eigrp 9 ! ! Configuration steps 2, 5, and 6 ipv6 router eigrp 9 no shutdown router-id 10.10.34.3 Verifying EIGRP for IPv6 The EIGRP for IPv6 show commands generally list the same kinds of information as the equivalent commands for EIGRP for IPv4, even more so than RIPng. In most cases, simply use the same show ip... commands applicable with IPv4 and EIGRP, and substitute ipv6 for ip. Table 6-3 lists a cross-reference comparing popular EIGRP-related commands for both versions. Note that the table assumes that the commands begin with either show ip or show ipv6 in all but the last row of the table. Table 6-3 Comparing EIGRP Verification Commands: show ip… and show ipv6... Key Topic Function show ip... show ipv6... All routes ... route ... route All EIGRP-learned routes ... route eigrp ... route eigrp Details on the routes for a specific prefix ... route subnet mask ... route prefix/length Interfaces on which EIGRP is enabled, plus metric weights, variance, redistribution, maxpaths, admin distance ... protocols ... protocols List of routing information sources ... protocols ... eigrp neighbors ... eigrp neighbors Hello interval ... eigrp interfaces detail ... eigrp interfaces detail EIGRP database ... eigrp topology [all-links] ... eigrp topology [all-links] Debug that displays sent and received Updates debug ip eigrp notifications debug ipv6 eigrp notifications From the Library of Alexey Evseenko Chapter 6: EIGRP for IPv6 and Named EIGRP 241 Example 6-2 shows a few sample show commands taken from Router R3 in the internetwork shown in Figure 6-1. The explanatory comments are listed within the example. Example 6-2 IPv6 EIGRP show Commands ! On R3, as when using RIPng, the next-hop address is the ! link-local address of the next router. R3# show ipv6 route 2099::/64 Routing entry for 2099::/64 Known via "eigrp 9", distance 90, metric 2174976, type internal Route count is 2/2, share count 0 Routing paths: FE80::22FF:FE22:2222, Serial0/0/0.2 Last updated 00:24:32 ago FE80::11FF:FE11:1111, Serial0/0/0.1 Last updated 00:07:51 ago ! Note that the next command lists only EIGRP-learned routes. It lists ! two next-hops for 2099::64. Note the next-hop information lists ! link-local addresses. R3# show ipv6 route eigrp IPv6 Routing Table - Default - 19 entries Codes: C - Connected, L - Local, S - Static, U - Per-user Static route B - BGP, M - MIPv6, R - RIP, I1 - ISIS L1 I2 - ISIS L2, IA - ISIS interarea, IS - ISIS summary, D - EIGRP EX - EIGRP external O - OSPF Intra, OI - OSPF Inter, OE1 - OSPF ext 1, OE2 - OSPF ext 2 ON1 - OSPF NSSA ext 1, ON2 - OSPF NSSA ext 2 D 2005::/64 [90/2684416] via FE80::11FF:FE11:1111, Serial0/0/0.1 via FE80::22FF:FE22:2222, Serial0/0/0.2 D 2012::/64 [90/2172416] via FE80::22FF:FE22:2222, Serial0/0/0.2 via FE80::11FF:FE11:1111, Serial0/0/0.1 D 2014::/64 [90/2681856] via FE80::11FF:FE11:1111, Serial0/0/0.1 D 2015::/64 [90/2681856] via FE80::11FF:FE11:1111, Serial0/0/0.1 ! lines omitted for brevity... D 2099::/64 [90/2174976] via FE80::22FF:FE22:2222, Serial0/0/0.2 via FE80::11FF:FE11:1111, Serial0/0/0.1 ! show ipv6 protocols displays less info than its IPv4 cousin. R3# show ipv6 protocols IPv6 Routing Protocol is "eigrp 9" From the Library of Alexey Evseenko 242 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide EIGRP metric weight K1=1, K2=0, K3=1, K4=0, K5=0 EIGRP maximum hopcount 100 EIGRP maximum metric variance 1 Interfaces: FastEthernet0/0 Serial0/0/0.1 Serial0/0/0.2 Redistribution: None Maximum path: 16 Distance: internal 90 external 170 ! This command lists the equivalent of the information in the ! show ip protocols commands' "Routing Information Sources" heading. ! Note the link-local addresses are listed. R3# show ipv6 eigrp neighbors IPv6-EIGRP neighbors for process 9 H Address Interface Hold Uptime SRTT RTO Q Seq (sec) (ms) Cnt Num 1 Link-local address: Se0/0/0.2 14 01:50:51 3 200 0 82 FE80::22FF:FE22:2222 0 Link-local address: Se0/0/0.1 13 01:50:52 14 200 0 90 FE80::11FF:FE11:1111 ! The next command lists the EIGRP topology database, including ! feasible distance calculations, reported distance, and listing ! all successor and feasible successor routes. R3# show ipv6 eigrp topology IPv6-EIGRP Topology Table for AS(9)/ID(10.10.34.3) Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply, r - reply Status, s - sia Status P 2005::/64, 2 successors, FD is 2684416 via FE80::11FF:FE11:1111 (2684416/2172416), Serial0/0/0.1 via FE80::22FF:FE22:2222 (2684416/2172416), Serial0/0/0.2 P 2012::/64, 2 successors, FD is 2172416 via FE80::11FF:FE11:1111 (2172416/28160), Serial0/0/0.1 via FE80::22FF:FE22:2222 (2172416/28160), Serial0/0/0.2 P 2013::/64, 1 successors, FD is 2169856 via Connected, Serial0/0/0.1 From the Library of Alexey Evseenko Chapter 6: EIGRP for IPv6 and Named EIGRP 243 ! lines omitted for brevity P 2099::/64, 2 successors, FD is 2174976 via FE80::11FF:FE11:1111 (2174976/30720), Serial0/0/0.1 via FE80::22FF:FE22:2222 (2174976/30720), Serial0/0/0.2 ! Finally, the link-local address of neighbor R1 is identified. R3# show cdp entry R1 ————————————Device ID: R1 Entry address(es): IP address: 10.10.13.1 IPv6 address: 2013::1 (global unicast) IPv6 address: FE80::11FF:FE11:1111 (link-local) Platform: Cisco 1841, Capabilities: Router Switch IGMP Interface: Serial0/0/0.1, Port ID (outgoing port): Serial0/0/0.3 ! lines omitted for brevity The most notable fact listed in the example is that the output confirms that little difference exists with the show commands for EIGRP for IPv4 versus IPv6. The main differences relate to the show ip protocols/show ipv6 protocols commands and that EIGRP for IPv6 uses a link-local IP address for the next hop of each route. Named EIGRP Configuring EIGRP for a simple topology that needs few if any parameters changed from their default settings is a fairly simple task. However, consider a router that needs one EIGRP instance to support IPv4 networks and another EIGRP instance to support IPv6 networks. Also, imagine that you want to adjust the default timers, configure the variance option, summarize addresses, and specify a router ID. Suddenly, EIGRP configuration becomes much more challenging, and you are required to jump back and forth between different configuration modes (that is, interface configuration mode, EIGRP for IPv4 configuration mode, and EIGRP for IPv6 configuration mode). Fortunately, Named EIGRP consolidates all of these disparate commands under a single hierarchical structure, as depicted in Figure 6-2. By having all EIGRP-related commands in one place, not only is configuration simplified, but troubleshooting is also more efficient. This section describes Named EIGRP’s hierarchical structure. Also, to illustrate the difference in the traditional and Named EIGRP configuration approaches, an example of each approach is provided, both of which accomplish the same objectives. From the Library of Alexey Evseenko 244 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide EIGCRonPfigfourrIaPtivo6n RMooudteer ConfiguInratetirofancMeode EIGCRoPnffiogruIrPavti4onRMouotdeer EIGRP Virtual Instance Figure 6-2 Conceptual View of Named EIGRP The Named EIGRP Hierarchical Structure Although Named EIGRP is configured very differently from traditional EIGRP, the configurations are compatible, meaning that an EIGRP-speaking router configured with the traditional approach can form a neighborship with an EIGRP-speaking router configured with the Named approach. Named EIGRP’s hierarchical structure consists of three primary configuration modes. Table 6-4 identifies and describes these modes. Table 6-4 Configuration Modes of Named EIGRP Key Topic Configuration Mode Description Address-Family General EIGRP configuration commands are issued under this configuration mode. For example, router ID, network, and EIGRP stub router configurations are performed here. Multiple address families (for example, IPv4 and IPv6) can be configured under the same EIGRP virtual instance. Address-FamilyInterface Commands entered under interface configuration mode with a traditional EIGRP configuration are entered here for Named EIGRP configuration. For example, timer and passive interface configurations are performed here. Address-FamilyTopology Commands that have a direct impact on a router’s EIGRP topology table are given in this configuration mode. For example, variance and redistribution are configured in this mode. From the Library of Alexey Evseenko Chapter 6: EIGRP for IPv6 and Named EIGRP 245 Note Named EIGRP also has Service-Family and Service-Family-Interface configuration modes, similar to the Address-Family and Address-Family-Interface configuration modes. The service family modes are used when EIGRP is advertising a service, using the Service Advertisement Framework (SAF) feature. For example, the Call Control Discovery (CCD) service uses SAF to advertise dial plan information (as opposed to IP route information) for unified communications networks. However, the ROUTE course only focuses on address families. Key Topic The following steps can be used to configure Named EIGRP: Step 1. Configure a Named EIGRP virtual instance using the router eigrp virtualinstance-name command in global configuration mode. It is under this single virtual instance that all address families are configured. Step 2. Specify an address family along with an autonomous system number using the address-family {ipv4 | ipv6} autonomous-system asn command. Step 3. Configure general EIGRP settings under Address-Family configuration mode. Examples of commands issued in this configuration mode include metric, network, eigrp stub, and eigrp router-id. Step 4. (Optional) Enter Address-Family-Interface configuration mode, with the command af-interface {default | interface-id}. If you specify the default option, commands entered in this configuration mode apply to all interfaces (unless overridden by a command applied to a specific interface). Examples of commands issued in this configuration mode include authentication, bandwidthpercent, hello-interval, hold-time, passive-interface, and split-horizon. Step 5. (Optional) Exit Address-Family-Interface configuration mode (if currently in that mode) with the exit command, and enter Address-Family-Topology configuration mode with the topology base command. Examples of commands issued in the Address-Family-Topology configuration mode include autosummary, maximum-paths, redistribute, and variance. To better understand the structure of a Named EIGRP configuration, the next part of this section contrasts a couple of traditional EIGRP configurations with Named EIGRP configurations. Traditional EIGRP and Named EIGRP Configurations Compared If a network does not have any special EIGRP requirements (for example, load balancing or summarization), many network administrators configure EIGRP by simply starting an EIGRP routing process and instructing all interfaces to participate in EIGRP. For example, using the topology seen in Figure 6-3, Example 6-3 shows a basic EIGRP for IPv4 configuration using the traditional configuration approach. From the Library of Alexey Evseenko 246 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide SW1 Fa0/0 172.16.1.1/24 EIGRP for IPv4 AS 1 S1/0 10.1.1.1/30 R1 S1/0 R2 10.1.1.2/30 Fa0/0 SW2 192.168.1.1/24 Figure 6-3 EIGRP for IPv4 Sample Topology Example 6-3 Basic EIGRP Configuration Using the Traditional Configuration Approach !Router R1 Configuration R1# conf term R1(config)# router eigrp 1 R1(config-router)# network 0.0.0.0 !Router R2 Configuration R2# conf term R2(config)# router eigrp 1 R2(config-router)# network 0.0.0.0 The configuration in Example 6-3 is very straightforward. It enters router configuration mode with the router eigrp asn command and instructs all router interfaces to participate in that EIGRP autonomous system with the command network 0.0.0.0. Example 6-4, still using the topology in Figure 6-3, accomplishes the same result using the Named EIGRP configuration approach. Example 6-4 Basic EIGRP Configuration Using the Named Configuration Approach !R1 Router Configuration R1# conf term R1(config)# router eigrp R1DEMO R1(config-router)# address-family ipv4 autonomous-system 1 R1(config-router-af)# network 0.0.0.0 !R2 Router Configuration R2# conf term R2(config)# router eigrp R2DEMO R2(config-router)# address-family ipv4 autonomous-system 1 R2(config-router-af)# network 0.0.0.0 Although still very straightforward, the configuration seen in Example 6-4 is just a bit longer than the configuration seen in Example 6-3. However, the benefit of the Named EIGRP configuration approach becomes more evident when EIGRP has more complex requirements. From the Library of Alexey Evseenko Chapter 6: EIGRP for IPv6 and Named EIGRP 247 For example, consider Example 6-5. It uses the traditional EIGRP configuration approach to meet the following requirements for both Routers R1 and R2 in Figure 6-4: ■ All interfaces should participate in EIGRP for IPv4 AS 1. ■ All interfaces should participate in EIGRP for IPv6 AS 2. ■ The variance option should be set to 2 for both autonomous systems. ■ The Hello Interval should be set to 2 seconds for EIGRP for IPv4 AS1. ■ The Hold Time should be set to 10 seconds for EIGRP for IPv4 AS1. SW1 Fa0/0 172.16.1.1/24 2001::1/64 EIGRP for IPv4 AS 1 S1/0 10.1.1.1/30 2002::1/64 R1 S1/0 R2 10.1.1.2/30 2002::2/64 EIGRP for IPv6 AS 2 Fa0/0 SW2 192.168.1.1/24 2003::1/64 Figure 6-4 EIGRP for IPv4 and EIGRP for IPv6 Sample Topology Example 6-5 Advanced EIGRP Configuration Using the Traditional Configuration Approach !Router R1 Configuration interface FastEthernet0/0 ip address 172.16.1.1 255.255.255.0 ipv6 address 2001::1/64 ipv6 eigrp 2 ! interface Serial1/0 ip address 10.1.1.1 255.255.255.252 ip hello-interval eigrp 1 2 ip hold-time eigrp 1 10 ipv6 address 2002::1/64 ipv6 eigrp 2 ! router eigrp 1 variance 2 network 0.0.0.0 passive-interface default no passive-interface Serial1/0 ! ipv6 router eigrp 2 variance 2 From the Library of Alexey Evseenko 248 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide !Router R2 Configuration interface FastEthernet0/0 ip address 192.168.1.1 255.255.255.0 ipv6 address 2003::1/64 ipv6 eigrp 2 ! interface Serial1/0 ip address 10.1.1.2 255.255.255.252 ip hello-interval eigrp 1 2 ip hold-time eigrp 1 10 ipv6 address 2002::2/64 ipv6 eigrp 2 ! router eigrp 1 variance 2 network 0.0.0.0 passive-interface default no passive-interface Serial1/0 ! ipv6 router eigrp 2 variance 2 Using the same topology, Example 6-6 meets the previously stated goals; however, Example 6-6 uses the Named EIGRP configuration approach. Example 6-6 Advanced EIGRP Configuration Using the Named Configuration Key Topic Approach !Router R1 Configuration router eigrp R1DEMO ! address-family ipv4 unicast autonomous-system 1 ! af-interface default hello-interval 2 hold-time 10 passive-interface exit-af-interface ! af-interface Serial1/0 no passive-interface exit-af-interface ! topology base variance 2 exit-af-topology From the Library of Alexey Evseenko Chapter 6: EIGRP for IPv6 and Named EIGRP 249 network 0.0.0.0 exit-address-family ! address-family ipv6 unicast autonomous-system 2 ! topology base variance 2 exit-af-topology exit-address-family !Router R2 Configuration interface FastEthernet0/0 ip address 192.168.1.1 255.255.255.0 ipv6 address 2003::1/64 ! interface Serial1/0 ip address 10.1.1.2 255.255.255.252 ipv6 address 2002::2/64 ! router eigrp R2DEMO ! address-family ipv4 unicast autonomous-system 1 ! af-interface default hello-interval 2 hold-time 10 passive-interface exit-af-interface ! af-interface Serial1/0 no passive-interface exit-af-interface ! topology base variance 2 exit-af-topology network 0.0.0.0 exit-address-family ! address-family ipv6 unicast autonomous-system 2 ! topology base variance 2 exit-af-topology exit-address-family From the Library of Alexey Evseenko 250 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide In the Named EIGRP configuration, notice that each router has a single EIGRP virtual instance, and the EIGRP virtual instance on each router includes two address families, one for IPv4 and one for IPv6. Also notice that each of the configuration commands required to meet the objectives is logically organized under an appropriate configuration mode of the Named EIGRP hierarchy. Verifying Named EIGRP Even though Named EIGRP is configured differently than traditional EIGRP, the verification commands remain the same. To illustrate, consider Example 6-7, which shows the output (on Router R1) from a collection of common EIGRP troubleshooting commands. Example 6-7 Verifying a Named EIGRP Configuration R1# show ip protocols *** IP Routing is NSF aware *** Routing Protocol is "eigrp 1" Outgoing update filter list for all interfaces is not set Incoming update filter list for all interfaces is not set Default networks flagged in outgoing updates Default networks accepted from incoming updates EIGRP-IPv4 VR(R1DEMO) Address-Family Protocol for AS(1) Metric weight K1=1, K2=0, K3=1, K4=0, K5=0 K6=0 Metric rib-scale 128 Metric version 64bit NSF-aware route hold timer is 240 Router-ID: 172.16.1.1 Topology : 0 (base) Active Timer: 3 min Distance: internal 90 external 170 Maximum path: 4 Maximum hopcount 100 Maximum metric variance 2 Total Prefix Count: 3 Total Redist Count: 0 Automatic Summarization: disabled Maximum path: 4 Routing for Networks: 0.0.0.0 Passive Interface(s): FastEthernet0/0 Routing Information Sources: Gateway Distance Last Update 10.1.1.2 90 01:18:03 From the Library of Alexey Evseenko Distance: internal 90 external 170 Chapter 6: EIGRP for IPv6 and Named EIGRP 251 R1# show ip eigrp interfaces EIGRP-IPv4 VR(R1DEMO) Address-Family Interfaces for AS(1) Xmit Queue PeerQ Mean Pacing Time Interface Peers Un/Reliable Un/Reliable SRTT Un/Reliable Se1/0 1 0/0 0/0 81 0/16 Multicast Flow Timer 352 Pending Routes 0 R1# show ip eigrp interfaces detail s1/0 EIGRP-IPv4 VR(R1DEMO) Address-Family Interfaces for AS(1) Xmit Queue PeerQ Mean Pacing Time Interface Peers Un/Reliable Un/Reliable SRTT Un/Reliable Se1/0 1 0/0 0/0 81 0/16 Hello-interval is 2, Hold-time is 10 Split-horizon is enabled Next xmit serial Packetized sent/expedited: 2/0 Hello's sent/expedited: 2980/2 Un/reliable mcasts: 0/0 Un/reliable ucasts: 3/3 Mcast exceptions: 0 CR packets: 0 ACKs suppressed: 0 Retransmissions sent: 0 Out-of-sequence rcvd: 0 Topology-ids on interface - 0 Authentication mode is not set Multicast Flow Timer 352 Pending Routes 0 R1# show ipv6 protocols IPv6 Routing Protocol is "connected" IPv6 Routing Protocol is "ND" IPv6 Routing Protocol is "eigrp 2" EIGRP-IPv6 VR(R1DEMO) Address-Family Protocol for AS(2) Metric weight K1=1, K2=0, K3=1, K4=0, K5=0 K6=0 Metric rib-scale 128 Metric version 64bit NSF-aware route hold timer is 240 Router-ID: 172.16.1.1 Topology : 0 (base) Active Timer: 3 min Distance: internal 90 external 170 Maximum path: 16 Maximum hopcount 100 Maximum metric variance 2 Total Prefix Count: 3 Total Redist Count: 0 From the Library of Alexey Evseenko 252 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Interfaces: FastEthernet0/0 Serial1/0 Redistribution: None The verification commands demonstrated in Example 6-7 confirm that the previously stated design goals have all been satisfied by the Named EIGRP configuration presented in Example 6-6. From the Library of Alexey Evseenko Exam Preparation Tasks Chapter 6: EIGRP for IPv6 and Named EIGRP 253 Planning Practice The CCNP ROUTE exam expects test takers to review design documents, create implementation plans, and create verification plans. This section provides some exercises that can help you to take a step back from the minute details of the topics in this chapter so that you can think about the same technical topics from the planning perspective. For each planning practice table, simply complete the table. Note that any numbers in parentheses represent the number of options listed for each item in the solutions in Appendix F, “Completed Planning Practice Tables.” Design Review Table Table 6-5 lists several design goals related to this chapter. If these design goals were listed in a design document, and you had to take that document and develop an implementation plan, what implementation options come to mind? For any configuration items, a general description can be used, without concern about the specific parameters. Table 6-5 Design Review Design Goal Possible Implementation Choices Covered in This Chapter Support the routing of IPv6 routes on a network currently using EIGRP for IPv4. A router currently has a complex EIGRP configuration, with multiple EIGRP-related commands under various interfaces, in addition to multiple EIGRP commands under router configuration mode. This configuration needs to be simplified so that it becomes easier to understand and troubleshoot. Implementation Plan Peer Review Table Table 6-6 shows a list of questions that others might ask, or that you might think about, during a peer review of another network engineer’s implementation plan. Complete the table by answering the questions. From the Library of Alexey Evseenko 254 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Table 6-6 Notable Questions from This Chapter to Consider During an Implementation Plan Peer Review Question Some documentation refers to EIGRP for IPv4 as EIGRPv4 and to EIGRP for IPv6 as EIGRPv6. Does this mean there is a “version 5” of EIGRP? If the EIGRP configuration on corporate routers is migrated from a traditional EIGRP configuration to a Named EIGRP configuration, will network technicians and help desk staff need to learn a new set of verification and troubleshooting commands? Answer Create an Implementation Plan Table To practice skills useful when creating your own OSPF implementation plan, list in Table 6-7 configuration commands related to the configuration of the following features. You might want to record your answers outside the book, and set a goal to complete this table (and others like it) from memory during your final reviews before taking the exam. Table 6-7 Implementation Plan Configuration Memory Drill Feature Enable IPv6 routing. Configuration Commands/Notes Enable EIGRP for IPv6. Enable IPv6 on an interface, causing a router to derive a link-local address for the interface. Configure an IPv6 address on an interface. Enable EIGRP for IPv6 on an interface. Configure a router ID for EIGRP for IPv6. Create a Named EIGRP virtual instance. Specify an address family along with an autonomous system number. Enter Address-Family-Interface configuration mode. Enter Address-Family-Topology configuration mode for the base topology. From the Library of Alexey Evseenko Chapter 6: EIGRP for IPv6 and Named EIGRP 255 Choose Commands for a Verification Plan Table To practice skills useful when creating your own OSPF verification plan, list in Table 6-8 all commands that supply the requested information. You might want to record your answers outside the book, and set a goal to complete this table (and others like it) from memory during your final reviews before taking the exam. Table 6-8 Verification Plan Memory Drill Information Needed Show all EIGRP-learned IPv4 routes. Show all EIGRP-learned IPv6 routes. Command(s) Show the variance configured for an EIGRP for IPv4 autonomous system. Show the variance configured for an EIGRP for IPv6 autonomous system. Show the Hello Interval for an EIGRP for IPv4 autonomous system. Show the Hello Interval for an EIGRP for IPv6 autonomous system. Display the EIGRP topology table for an EIGRP for IPv4 autonomous system. Display the EIGRP topology table for an EIGRP for IPv6 autonomous system. Display sent and received updates for an EIGRP for IPv4 autonomous system. Display sent and received updates for an EIGRP for IPv6 autonomous system. Note Some of the entries in this table may not have been specifically mentioned in this chapter but are listed in this table for review and reference. Review All the Key Topics Review the most important topics from inside the chapter, noted with the Key Topic icon in the outer margin of the page. Table 6-9 lists a reference of these key topics and the page numbers on which each is found. From the Library of Alexey Evseenko 256 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Table 6-9 Key Topics for Chapter 6 Key Topic Key Topic Element Description Table 6-2 Comparing EIGRP for IPv4 and IPv6 List EIGRP for IPv6 configuration steps Example 6-1 Configuring EIGRP for IPv6 Routing on R1 Table 6-3 Comparing EIGRP Verification Commands: show ip… and show ipv6... Table 6-4 Configuration Modes of Named EIGRP List Named EIGRP configuration steps Example 6-6 Advanced EIGRP Configuration Using the Named Configuration Approach Page Number 237 237 239 240 244 245 248 Complete the Tables and Lists from Memory Print a copy of Appendix D, “Memory Tables,” (found on the CD) or at least the section for this chapter, and complete the tables and lists from memory. Appendix E, “Memory Tables Answer Key,” also on the CD, includes completed tables and lists to check your work. Define Key Terms Define the following key terms from this chapter, and check your answers in the glossary. EIGRP for IPv6, Named EIGRP From the Library of Alexey Evseenko This page intentionally left blank From the Library of Alexey Evseenko This chapter covers the following subjects: ■ OSPF Review: This section reviews the OSPF concepts, configuration, and verification commands assumed as prerequisites, specifically those details included in the CCNA Exam’s coverage of OSPF. ■ OSPF Neighbors and Adjacencies on LANs: This section discusses a variety of features that impact when a router attempts to form OSPF neighbor relationships (neighborships), what must be true for those neighborships to work, and what might prevent those neighborships. ■ OSPF Neighbors and Adjacencies on WANs: This short section examines the typical usage of OSPF neighborships over various types of WAN technologies. ■ Virtual Links: This section examines how engineers can use virtual links to connect separate parts of an area through another area to maintain the requirement that OSPF areas be contiguous. From the Library of Alexey Evseenko CHAPTER 7 Fundamental OSPF Concepts Open Shortest Path First (OSPF) requires only a few relatively simple commands when using it in a small- to medium-sized internetwork. However, behind those commands resides a fairly complex routing protocol, with internals that can intimidate those new to OSPF. When compared to the less-complex Enhanced Interior Gateway Routing Protocol (EIGRP), OSPF requires more thought when planning and a few more configuration commands. Additionally, the underlying complexity of OSPF makes operating and verifying an OSPF internetwork more challenging. This chapter begins with a review of OSPF concepts covered in your CCNA studies. Next, the chapter turns its attention to the formation of OSPF neighborships and adjacencies, followed by the establishment of OSPF neighbors and adjacencies over various WAN technologies. Finally, this chapter examines how a virtual link can be used to make discontiguous areas appear to be contiguous, or how an area not adjacent to an OSPF backbone area can appear to be adjacent. “Do I Know This Already?” Quiz The “Do I Know This Already?” quiz allows you to assess whether you should read the entire chapter. If you miss no more than one of these nine self-assessment questions, you might want to move ahead to the “Exam Preparation Tasks” section. Table 7-1 lists the major headings in this chapter and the “Do I Know This Already?” quiz questions covering the material in those headings so that you can assess your knowledge of those specific areas. The answers to the “Do I Know This Already?” quiz appear in Appendix A. Table 7-1 “Do I Know This Already?” Foundation Topics Section-to-Question Mapping Foundation Topics Section OSPF Review OSPF Neighbors and Adjacencies on LANs Question 1–3 4–6 OSPF Neighbors and Adjacencies on WANs 7 Virtual Links 8, 9 From the Library of Alexey Evseenko 260 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide 1. A router has been configured with the commands router ospf 9, network 172.16.1.0 0.0.0.255 area 8 and network 172.16.0.0 0.0.255.255 area 9, in that order. No other OSPF-related commands have been configured. The answers list the IP addresses that could be assigned to this router’s Fa0/0 interface. Which answers list an IP address/prefix length that would cause the router to put Fa0/0 into area 9? (Choose two.) a. 172.16.0.1/23 b. 172.16.1.1/26 c. 172.16.1.1/24 d. 172.16.0.255/23 e. None of the other answers is correct. 2. Which of the following is true about an OSPF area border router (ABR)? a. The ABR must have multiple interfaces connected to the backbone area. b. An ABR is a router with two interfaces, each connected to a different nonbackbone area. c. The only requirement to be considered an ABR is at least one interface connected to the backbone area. d. An ABR must have at least one interface in the backbone area plus at least one other interface in a nonbackbone area. 3. Which of the following can either directly or indirectly identify all the interfaces for which 1) OSPF has been enabled and 2) OSPF is not passive? (Choose two.) a. show ip ospf database b. show ip ospf interface brief c. show ip protocols d. show ip route ospf e. show ip ospf neighbors 4. Router R1 directly connects to subnet 10.1.1.0/24 with its Fa0/0 interface. R1 can ping four other working OSPF routers in that subnet. R1 is neither the designated router (DR) nor backup DR (BDR). OSPF is working correctly on all five routers. Which of the following are true on R1? (Choose two.) a. The show ip ospf neighbors command lists two neighbors off Fa0/0. b. The show ip ospf neighbors command lists four neighbors off Fa0/0. c. The show ip ospf neighbors command lists two neighbors off Fa0/0 in the FULL state. d. The show ip ospf neighbors command lists two neighbors off Fa0/0 in the DISCO state. From the Library of Alexey Evseenko Chapter 7: Fundamental OSPF Concepts 261 5. Routers R1 and R2 are OSPF neighbors using their Fa0/0 interfaces, respectively, using default settings for all timers. An engineer adds the ip ospf hello-interval 6 command to R1’s Fa0/0 configuration. Which of the following are true regarding the results from this change? (Choose two.) a. The show ip ospf neighbor command on R1 lists the revised Hello timer. b. The show ip ospf interface brief command on R1 lists the revised Hello timer. c. The R1-R2 neighborship fails because of Hello timer mismatch. d. The show ip ospf interface command on R1 lists the revised Hello timer. 6. Which of the following settings do not prevent two potential OSPF neighbors from becoming neighbors? a. The interface used to connect to that neighbor being passive in the OSPF process b. Duplicate OSPF router IDs c. Mismatched Dead timers d. IP addresses of 10.1.1.1/24 and 10.2.2.2/24 e. Mismatched OSPF process IDs 7. A company has a Frame Relay WAN with one central-site router and 100 branch office routers. A partial mesh of PVCs exists: one PVC between the central site and each of the 100 branch routers. All routers use point-to-point subinterfaces and one subnet per PVC. Which of the following is true about OSPF in this design? a. The central-site router has 100 fully adjacent neighborships with the 100 branches. b. The central-site router has neighborships with all branch routers, but fully adjacent neighborships with only two branches. c. The central-site router has a neighborship with the Frame Relay switch. d. None of the other answers is correct. 8. Which of the following answers can be verified as true based on the following command output from Router R1? R1# show ip ospf virtual-links Virtual Link OSPF_VL0 to router 4.4.4.4 is up Run as demand circuit DoNotAge LSA allowed. Transit area 1, via interface FastEthernet0/1, Cost of using 3? a. R1 is configured with an area 0 virtual-link 4.4.4.4 cost 3 command. b. The ping 4.4.4.4 command on R1 must currently be successful. c. R1’s Fa0/1 OSPF cost is 3. d. 4.4.4.4 is known to R1 based on a Type 1 LSA in area 1. From the Library of Alexey Evseenko 262 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide 9. Several links have been broken so that for the next day or two, what was formerly a contiguous area 0 has been broken into two parts. However, both parts of area 0 have working links into area 1 using routers with RID 1.1.1.1 and 2.2.2.2. Which answer lists the command on the router with RID 1.1.1.1 to create a virtual link to help solve this temporary problem? a. area 0 virtual-link 2.2.2.2 b. area 1 virtual-link 2.2.2.2 c. area 0 source-rid 1.1.1.1 dest-rid 2.2.2.2 d. virtual-link transit-area 1 RID 2.2.2.2 From the Library of Alexey Evseenko Foundation Topics Chapter 7: Fundamental OSPF Concepts 263 OSPF Review All the CCNP exams consider CCNA materials as prerequisite. Similarly, this book also assumes that the reader is already familiar with CCNA topics. However, the CCNP exams do include features that overlap with CCNA. Additionally, most people forget some details about CCNA topics along the way. This section is intended as a quick reminder of the basics from your earlier CCNA studies related to OSPF, with the addition of a few related details you might not have seen during your CCNA study. Note that this section does not cover every detail of CCNA-level OSPF topics—the main goal is a quick refamiliarization. To that end, this section begins with a review of OSPF terminology and link-state theory, followed by a configuration and verification sample. OSPF Link-State Concepts OSPF uses link-state (LS) logic, which can be broken into three major branches. The first step, neighbor discovery, has the same overall goal as EIGRP’s neighbor discovery process: to find the neighboring routers and exchange enough information so that the two routers know whether they should exchange topology data. (Like EIGRP, OSPF keeps a list of neighbors in its neighbor table.) The second step, topology database exchange, requires each OSPF router to cooperate by sending messages so that all routers learn topology information—information that is the equivalent of the kinds of information a human would draw and write in a diagram of the internetwork. Each router stores this topology information in its topology database, sometimes called its link-state database (LSDB). The information communicated by OSPF routers and held in their LSDBs includes ■ The existence of, and an identifier for, each router (router ID) ■ Each router interface, IP address, mask, and subnet ■ The list of routers reachable by each router on each interface During the third major step, route computation, each router independently analyzes the topology data to choose the best routes from its perspective. In particular, LS algorithms such as OSPF use a Shortest Path First (SPF) algorithm to analyze the data, choose the shortest (best) route for each reachable subnet, and add the correct next-hop/outgoing interface information for those routes to the IP routing table. OSPF requires more planning than does EIGRP, particularly with regard to the necessity for a hierarchical design using OSPF areas. Each router interface exists in a single area, with some special routers, called area border routers (ABR), being the boundary between areas. Inside an area, routers exchange detailed topology information. However, the detailed topology information does not flow between areas. Instead, the ABRs From the Library of Alexey Evseenko 264 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide advertise briefer information between areas, including information about subnets/masks, but the information advertised into one area does not include details about the topology of the other area. For perspective on the OSPF design issues, consider Figure 7-1, which shows a typical hierarchical design. Area 0 (Backbone) Subnet 4 Area 1 ABR1 Subnet 1 Area 2 ABR2 Area 3 Subnet 2 Subnet 3 Figure 7-1 Typical Hierarchical OSPF Design One area, called the backbone area, must connect to all other areas. Packets that need to pass between two nonbackbone areas must pass through (at least) one backbone router. The ABRs must keep a copy of the LSDB for each area to which they attach. For example, ABR1 has LSDBs for area 0, area 1, and area 2. However, the ABRs do not forward all the topology details between areas. Instead, they simply advertise the subnets (prefix/ length) between the areas. Because of the sparse information advertised into one area about another area, topologically, routers inside one area know only about the subnets in another area. They do not know about the details of the topology in the other area; instead, from a topology perspective, it appears as if the subnets from another area connect to the ABR. Figure 7-2 shows the concept with the two routers in area 3 from Figure 7-1. From the Library of Alexey Evseenko Subnet 1 Subnet 2 ABR2 Subnet 4 Chapter 7: Fundamental OSPF Concepts 265 Subnet 3 Figure 7-2 Area 3 LSDB Concept Figure 7-2 essentially shows the contents of area 3’s LSDB in graphical form. Two routers exist, with a link between them, and one LAN subnet (Subnet 3) internal to the area. However, the other three sample subnets shown in Figure 7-1 (Subnets 1, 2, and 4) appear connected to ABR2. (Other subnets exist outside area 3 as well; the figure just shows a few as examples.) The routers inside area 3 can calculate and add routes to their routing tables, but without needing all the topology information shown in Figure 7-1. By using an area design similar to the one illustrated in Figure 7-1, network engineers can group routers and interfaces into areas, which results in smaller topology databases on those routers, as shown in Figure 7-2. As a result, each router reduces the processing time, memory consumption, and effort to calculate the best routes. OSPF uses a fairly large number of terms. Table 7-2 lists some of the more common OSPF terms as an early reference as you read through the chapter. Table 7-2 Commonly Used OSPF Terms Key Topic Term Definition Link-state database (LSDB) The data structure held by an OSPF router for the purpose of storing topology data Shortest Path First (SPF) The name of the algorithm OSPF uses to analyze the LSDB (Note: The analysis determines the best [lowestcost] route for each prefix/length.) Link-State Update (LSU) The name of the OSPF packet that holds the detailed topology information, specifically LSAs Link-State Advertisement (LSA) The name of a class of OSPF data structures that hold topology information (Note: LSAs are held in memory in an LSDB and communicate over a network in LSU messages.) From the Library of Alexey Evseenko 266 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Term Definition Area A contiguous grouping of routers and router interfaces (Note: Routers in an area strive to learn all topology information about the area, but they do not learn topology information about all other areas.) Area border router (ABR) A router that has interfaces connected to at least two different OSPF areas, including the backbone area (Note: ABRs hold topology data for each area, calculate routes for each area, and advertise those routes between areas.) Backbone router Any router that has at least one interface connected to the backbone area Internal routers A router that has interfaces connected to only one area, making the router completely internal to that one area Designated router (DR) On multiaccess data links like LANs, an OSPF router elected by the routers on that data link to perform special functions (Note: These functions include generating LSAs representing the subnet and playing a key role in the database exchange process.) Backup designated router (BDR) A router on a multiaccess data link that monitors the DR and becomes prepared to take over for the DR, should the DR fail OSPF Configuration Review Other than the configuration of the OSPF areas, a basic configuration of OSPF basics looks similar to a simple EIGRP configuration. Cisco IOS uses the router ospf processid command, plus one or more network net-id wildcard-mask area area-id subcommands, to enable OSPF on the router and on router interfaces. The rules for these commands are as follows: Key Topic Step 1. Step 2. Neighboring routers’ router ospf process-id commands do not have to be configured with the same process-id parameter to become neighbors. Cisco IOS only enables OSPF on interfaces matched by an OSPF network command. When enabled, the router does the following: a. Attempts to discover OSPF neighbors on that interface by sending multicast OSPF Hello messages b. Includes the connected subnet in future topology database exchanges Step 3. To match an interface with the network command, Cisco IOS compares the net-id configured in the network command with each interface’s IP address, while using the configured wildcard mask as an ACL wildcard mask. From the Library of Alexey Evseenko Chapter 7: Fundamental OSPF Concepts 267 Step 4. Regardless of the order in which the network commands are added to the configuration, Cisco IOS puts these commands into the configuration file with the most specific (most binary 0s) wildcard mask first, for overlapping network ranges. Cisco IOS lists the network commands in this sorted order in the configuration. Step 5. The first network command that matches an interface, per the order shown in the output of the show running-config command, determines the OSPF area number associated with the interface. Example 7-1 shows a sample configuration for each router in Figure 7-3. Area 1 Area 0 RID 1.1.1.1 S0/0/0 R1 12.1/30 Fa0/0 1.1/24 RID 2.2.2.2 S0/0/1 12.2/30 S0/0/0 R2 23.2/30 Fa0/0 2.2/25 RID 3.3.3.3 S0/0/1 23.1/30 Fa0/1 R3 192.168.3.3/26 Fa0/0 3.3/26 Note: All IP addresses begin with 10.1 unless otherwise noted. Figure 7-3 Three-Router Internetwork with Two OSPF Areas Example 7-1 OSPF Configuration on Routers R1, R2, and R3 ! On Router R1: !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! interface loopback 1 ip address 1.1.1.1 255.255.255.255 router ospf 1 network 10.0.0.0 0.255.255.255 area 1 ! On Router R2: !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! interface loopback 1 ip address 2.2.2.2 255.255.255.255 router ospf 2 network 10.1.12.2 0.0.0.0 area 1 network 10.1.0.0 0.0.255.255 area 0 ! On Router R3: !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! interface loopback 1 ip address 3.3.3.3 255.255.255.255 router ospf 3 From the Library of Alexey Evseenko 268 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide network 10.1.0.0 0.0.255.255 area 0 network 192.168.3.3 0.0.0.0 area 0 Key Topic First, note that all three routers use a different process ID on their respective router ospf process-id commands. These mismatches do not prevent neighborships from forming. Next, consider the requirement that R1’s S0/0/0 and R2’s S0/0/1 must be in the same area. Typically, all routers on the same subnet need to be in the same area; the routers themselves are the boundary between areas. In this case, R1’s network 10.0.0.0 0.255.255.255 area 1 command matches all interfaces whose addresses begin with 10 in the first octet and assigns those interfaces (Fa0/0 and S0/0/0) to area 1. Similarly, R2’s network 10.1.12.2 0.0.0.0 area 1 command matches only one IP address—R2’s S0/0/1 IP address—and places it in area 1. Looking further at R2’s OSPF configuration, note that both network commands actually match the 10.1.12.2 S0/0/1 IP address: one with area 0 and one with area 1. However, R2 orders these two network commands with the mostspecific wildcard mask first, placing the command with wildcard mask 0.0.0.0 first and the one with wildcard mask 0.0.255.255 second. Then, R2 compares the commands to the interface IP addresses in order, so R2 places S0/0/1 into area 1. (Note that in real internetworks, choosing wildcard masks such that it is clear which network command should match each interface is the better choice.) On R3, the network 10.1.0.0 0.0.255.255 area 0 command matches interfaces Fa0/0 and S0/0/0, adding them to area 0. R3 then needs an additional network command to enable OSPF on R3’s Fa0/1 interface with all three interfaces in area 0. Finally, note that the addition of the loopback interfaces causes each router to choose an obvious OSPF router ID (RID). OSPF uses the same logic as does EIGRP to choose a router ID on each router, at the time the OSPF process is initialized, as follows, in the listed order of precedence: Step 1. Use the router ID defined in the router-id x.x.x.x OSPF router subcommand. Step 2. Use the highest IP address of any up loopback interface. Step 3. Use the highest IP address of any up nonloopback interface. Note that for the second and third choices, the interface does not need to have OSPF enabled. OSPF Verification Review The verification process, whether it uses a formal verification plan or not, requires some knowledge of the intended design and function of the network. The design and implementation documents dictate what the network should do, and the verification plan should confirm whether the network is meeting those goals. For the purposes of this OSPF review section, assume that the only design goal for the internetwork in Figure 7-3 is that OSPF be used so that all routers have routes to reach all subnets shown in the figure, within the constraints of the area design. From the Library of Alexey Evseenko Chapter 7: Fundamental OSPF Concepts 269 To verify such a simple design, an engineer should start by confirming on which interfaces OSPF has been enabled on each router. The next step should be to determine whether the OSPF neighbor relationships that should occur are indeed up and working. Then, the OSPF topology table should be examined to confirm that non-ABRs have only topology information for their respective areas. Finally, the IP routes on each router should be examined, confirming that all routes are known. To that end, Table 7-3 summarizes five key show commands that provide the information to answer these questions: Table 7-3 Commonly Used OSPF show Commands Key Topic Command Key Information show ip ospf interface brief Lists the interfaces on which OSPF is enabled (based on the network commands), omitting passive interfaces show ip protocols Lists the contents of the network configuration commands for each routing process and a list of enabled but passive interfaces show ip ospf neighbors Lists known neighbors, including neighbor state; does not list neighbors for which some mismatched parameter is preventing a valid OSPF neighbor relationship show ip ospf database Lists all LSAs for all connected areas show ip route Lists the contents of the IP routing table, listing OSPF-learned routes with a code of O on the left side of the output Example 7-2 shows samples of each command listed in Table 7-3. Note that the output highlights various samples of items that should be verified, including the interfaces on which OSPF is enabled, the known neighbors, the neighbors’ states, the LSAs in the topology table, and the OSPF routes. Example 7-2 OSPF Verification on Routers R1, R2, and R3 ! On Router R2: !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! Note that S0/0/1 is shown as in area 1, while the other 2 interfaces are all in ! Area 0. R2# show ip ospf interface brief Interface PID Area Se0/0/0 2 0 Fa0/0 2 0 Se0/0/1 2 1 IP Address/Mask 10.1.23.2/30 10.1.2.2/25 10.1.12.2/30 Cost State Nbrs F/C 64 P2P 1/1 1 DR 0/0 64 P2P 1/1 ! Next, note that R2 lists two "Routing Information Sources", 1.1.1.1 (R1) and ! 3.3.3.3 (R3). ! These routers, listed by RID, should mirror those listed in the output of the show ! ip ospf neighbors command that follows. From the Library of Alexey Evseenko 270 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide R2# show ip protocols Routing Protocol is "ospf 2" Outgoing update filter list for all interfaces is not set Incoming update filter list for all interfaces is not set Router ID 2.2.2.2 It is an area border router Number of areas in this router is 2. 2 normal 0 stub 0 nssa Maximum path: 4 Routing for Networks: 10.1.12.2 0.0.0.0 area 1 10.1.0.0 0.0.255.255 area 0 Reference bandwidth unit is 100 mbps Routing Information Sources: Gateway Distance Last Update 3.3.3.3 110 00:01:08 1.1.1.1 110 00:01:08 Distance: (default is 110) ! Note that the Full state means that the database exchange process is fully ! completed ! between these two neighbors. R2# show ip ospf neighbors Neighbor ID 3.3.3.3 1.1.1.1 Pri State 0 FULL/ 0 FULL/ - Dead Time 00:00:34 00:00:34 Address 10.1.23.1 10.1.12.1 Interface Serial0/0/0 Serial0/0/1 ! On Router R1: !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! Note that R1's LSDB includes a "Router Link State" for RID 1.1.1.1 (R1) ,2.2.2.2 ! (R2), but not 3.3.3.3 (R3), because R3 is not attached to area 1. R1# show ip ospf database OSPF Router with ID (1.1.1.1) (Process ID 1) Router Link States (Area 1) Link ID 1.1.1.1 2.2.2.2 ADV Router Age 1.1.1.1 210 2.2.2.2 195 Seq# Checksum Link count 0x80000004 0x001533 3 0x80000002 0x0085DB 2 Summary Net Link States (Area 1) Link ID 10.1.2.0 ADV Router Age 2.2.2.2 190 Seq# Checksum 0x80000001 0x00B5F0 From the Library of Alexey Evseenko Chapter 7: Fundamental OSPF Concepts 271 10.1.3.0 2.2.2.2 190 0x80000001 0x00AE76 10.1.23.0 2.2.2.2 190 0x80000001 0x0031A4 192.168.3.0 2.2.2.2 191 0x80000001 0x008B3B ! Below, note that R1 has routes for all remote subnets, including R3's ! LAN subnets, even though R1 does not list R3 in its LSDB. R1# show ip route ospf 10.0.0.0/8 is variably subnetted, 5 subnets, 4 masks O IA 10.1.3.0/26 [110/129] via 10.1.12.2, 00:04:13, Serial0/0/0 O IA 10.1.2.0/25 [110/65] via 10.1.12.2, 00:04:13, Serial0/0/0 O IA 10.1.23.0/30 [110/128] via 10.1.12.2, 00:04:13, Serial0/0/0 192.168.3.0/26 is subnetted, 1 subnets O IA 192.168.3.0 [110/129] via 10.1.12.2, 00:04:13, Serial0/0/0 OSPF Feature Summary Table 7-4 summarizes some key OSPF facts. The table includes some review items from CCNA-level OSPF topics, plus some topics that will be developed in this and upcoming chapters. The items that are not CCNA topics are included just for convenience when reviewing for final preparation before taking the exam. Table 7-4 OSPF Feature Summary Key Topic Feature Description Transport IP, protocol type 89 (does not use UDP or TCP). Metric Based on cumulative cost of all outgoing interfaces in a route. The interface cost defaults to a function of interface bandwidth but can be set explicitly. Hello interval Interval at which a router sends OSPF Hello messages out of an interface. Dead interval Timer used to determine when a neighboring router has failed, based on a router not receiving any OSPF messages, including Hellos, in this timer period. Update destination address Normally sent to 224.0.0.5 (All SPF Routers) and 224.0.0.6 (All Designated Routers). Full or partial updates Full updates used when new neighbors are discovered; partial updates used otherwise. Authentication Supports MD5 and clear-text authentication. VLSM/classless Includes the mask with each route, also allowing OSPF to support discontiguous networks and VLSM. From the Library of Alexey Evseenko 272 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Feature Description Route tags Allows OSPF to tag routes as they are redistributed into OSPF. Next-hop field Supports the advertisement of routes with a different nexthop router than the advertising router. Manual route summarization Allows route summarization at ABR routers only. This concludes the review of OSPF topics. The rest of this chapter focuses on OSPF topics related to the formation of OSPF neighbor relationships. OSPF Neighbors and Adjacencies on LANs With EIGRP, neighborship is relatively simple, if two EIGRP routers discover each other (using Hellos) and meet several requirements (like being in the same subnet). After becoming neighbors, the two EIGRP routers exchange topology information. Comparing OSPF and EIGRP, OSPF neighborship is more complex. First, with EIGRP, two routers either become neighbors or they do not. With OSPF, even after all the neighbor parameter checks pass, two classes of neighborships exist: neighbors and fully adjacent neighbors. The OSPF neighbor discovery process has many pitfalls when the internetwork uses Frame Relay, with a class of issues that simply do not exist with EIGRP. Finally, OSPF uses an underlying Finite State Machine (FSM) with eight neighbor states used to describe the current state of each OSPF neighbor, adding another layer of complexity compared to EIGRP. This section breaks down the OSPF neighbor relationship, the logic, and the OSPF configuration settings—anything that impacts OSPF neighborship on LAN interfaces. This section examines the following questions: ■ On what interfaces will this router attempt to discover neighbors by sending multicast OSPF Hello messages? ■ Does a potential neighbor meet all requirements to become a neighbor? This section examines these topics, in sequence. Enabling OSPF Neighbor Discovery on LANs OSPF sends multicast OSPF Hello messages on LAN interfaces, attempting to discover OSPF neighbors, when two requirements are met: Key Topic ■ OSPF has been enabled on the interface, either through the network router subcommand or the ip ospf area interface subcommand. ■ The interface has not been made passive by the passive-interface router subcommand. From the Library of Alexey Evseenko Chapter 7: Fundamental OSPF Concepts 273 When both requirements are met, OSPF sends Hellos to the 224.0.0.5 multicast address, an address reserved for all OSPF-speaking routers. The Hello itself contains several parameters that must be checked, including the OSPF RID of the router sending the Hello and the OSPF area that router has assigned to that LAN subnet. Of the three configuration commands that might impact whether a router attempts to discover potential neighbors on an interface, one is commonly understood (network) and was already covered in this chapter’s “OSPF Configuration Review” section. The second configuration command that impacts whether potential neighbors discover each other, passive-interface, works just like it does with EIGRP. In short, when a router configures an interface as passive to OSPF, OSPF quits sending OSPF Hellos, so the router will not discover neighbors. The router will still advertise the interface’s connected subnet if OSPF is enabled on the interface, but all other OSPF processing on the interface is stopped. The third configuration command that impacts whether a router discovers potential neighbors using Hellos is the ip ospf process-id area area-id interface subcommand. This command acts as a replacement for the OSPF network command. Simply put, this command enables OSPF directly on the interface and assigns the area number. To demonstrate the ip ospf area and passive-interface commands, Example 7-3 shows a revised configuration on Router R3, as seen originally in Example 7-1. In this new example configuration, R3 has made two interfaces passive, because no other OSPF routers exist on its LAN subnets. Additionally, R3 has migrated its configuration away from the older network commands, instead using the ip ospf area interface subcommand. Example 7-3 Configuring passive-interface and ip ospf area interface loopback 1 Ip address 3.3.3.3 255.255.255.255 router ospf 3 passive-interface FastEthernet0/0 passive-interface FastEthernet0/1 interface FastEthernet0/0 ip ospf 3 area 0 interface FastEthernet0/1 ip ospf 3 area 0 interface Serial0/0/1 ip ospf 3 area 0 R3# show ip protocols Routing Protocol is "ospf 3" Outgoing update filter list for all interfaces is not set Incoming update filter list for all interfaces is not set Router ID 3.3.3.3 Number of areas in this router is 1. 1 normal 0 stub 0 nssa Maximum path: 4 From the Library of Alexey Evseenko 274 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Routing for Networks: Routing on Interfaces Configured Explicitly (Area 0): Serial0/0/1 FastEthernet0/1 FastEthernet0/0 Reference bandwidth unit is 100 mbps Passive Interface(s): FastEthernet0/0 FastEthernet0/1 Routing Information Sources: Gateway Distance Last Update Distance: (default is 110) Note that in the second half of Example 7-3, the show ip protocols command now lists the interfaces as matched with the ip ospf area commands, and it lists the passive interfaces. You can take the list of explicitly configured interfaces, remove the passive interfaces, and know which interfaces on which R3 will attempt to discover OSPF neighbors. Also, take a moment to compare this output with the same command’s output in Example 7-2, with the earlier example listing the parameters of the configured network commands. Settings That Must Match for OSPF Neighborship After an OSPF router has discovered a potential neighbor by receiving a Hello from the other router, the local router considers the router that sent the Hello as a potential neighbor. The local router must examine the contents of the received Hello, plus a few other factors, compare those settings to its own, and check for agreement, and only then can that other router be considered an OSPF neighbor. For reference, the following list details the items seen in OSPF Hello messages. Note that some fields might not be present in a Hello, depending on the conditions in the network. ■ OSPF router ID ■ Stub area flag ■ Hello interval ■ Dead interval ■ Subnet mask ■ List of neighbors reachable on the interface ■ Area ID ■ Router priority ■ Designated router (DR) IP address ■ Backup DR (BDR) IP address ■ Authentication digest From the Library of Alexey Evseenko Chapter 7: Fundamental OSPF Concepts 275 Table 7-5 summarizes the items that two routers will compare when deciding whether they can become OSPF neighbors. For study purposes, the table also lists some items that one might think prevent OSPF neighborship but do not, with comparisons to EIGRP. Table 7-5 Neighbor Requirements for EIGRP and OSPF Key Topic Requirement Interfaces’ primary IP addresses must be in same subnet. Must not be passive on the connected interface. Must be in same area. Hello interval/timer, plus either the Hold (EIGRP) or Dead (OSPF) timer, must match. Router IDs must be unique. IP MTU must match. Must pass neighbor authentication (if configured). K-values (used in metric calculation) must match. Must use the same ASN (EIGRP) or process ID (OSPF) on the router configuration command. OSPF EIGRP Yes Yes Yes Yes Yes N/A Yes No Yes No Yes1 No Yes Yes N/A Yes No Yes 1 Might allow the other router to be listed in the output of the show ip ospf neighbor command, but the MTU mismatch will prevent proper operation of the topology exchange. The first few items in Table 7-5 require only a minor amount of discussion. First, OSPF checks the IP address (found as the source address of the Hello message) and mask (listed in the Hello message) of the potential neighbor, calculates the subnet address, and compares the subnet address and mask to its own interface IP address. Both the subnet address and mask must match. Additionally, the OSPF Hello messages include the area number of the subnet, as defined by that router. The receiving router compares the received Hello with its own configuration and rejects the potential neighbor if the area numbers do not match. The next several sections examine other settings that can prevent OSPF neighborship. Optimizing Convergence Using Hello and Dead Timers Using the same concept as EIGRP, but with different terminology, OSPF uses two timers to monitor the reachability of neighbors. With OSPF, the Hello interval defines how often the router sends a Hello on the interface. The Dead interval defines how long a router should wait, without hearing any Hello messages from a neighbor, before deciding that the neighbor failed. For example, with a default LAN interface Hello timer of 10 seconds, and a Dead interval of 40 seconds, the local router sends Hello messages every 10 seconds. The neighbor resets its downward-counting Hold timer to 40 upon receiving a Hello from that neighbor. Under normal operation on a LAN, with defaults, the Dead timer for a neighbor would vary from 40 down to 30, and then be reset to 40 upon From the Library of Alexey Evseenko 276 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide receipt of the next Hello. However, if Hello messages were not received for 40 seconds, the neighborship would fail, driving convergence. To tune for faster convergence, you can configure OSPF to set a lower Hello and Dead timer. It speeds convergence in some cases. Note that if the interface fails, OSPF will immediately realize that all neighbors reached through that interface have also failed and will not wait on the Dead timer to count down to 0. For example, consider the internetwork in Figure 7-4. This internetwork has four routers connected to the same VLAN, with interfaces, IP addresses, masks, and OSPF areas as shown. Area 0 10.1.1.1/24 Fa0/1 R1 10.5.5.1/28 Fa0/0 10.2.2.2/25 Fa0/1 R2 10.5.5.2/28 Fa0/0 10.5.5.3/28 Fa0/0 R3 10.3.3.3/26 Fa0/1 10.5.5.4/28 Fa0/0 R4 10.4.4.4/27 Fa0/1 Area 3 Area 4 Figure 7-4 Four OSPF Routers on the Same Subnet, with Two OSPF Areas Example 7-4 verifies some of the facts about the routers in Figure 7-4, showing the changes to the Hello interval and the resulting failed neighborships. Each router has been assigned an obvious RID: 1.1.1.1 for R1, 2.2.2.2 for R2, and so on. Example 7-4 Effect of Configuring a Different OSPF Hello Interval R4# show ip ospf neighbors Neighbor ID Pri State Dead Time Address Interface 1.1.1.1 1 2WAY/DROTHER 00:00:35 10.5.5.1 FastEthernet0/0 2.2.2.2 1 FULL/BDR 00:00:39 10.5.5.2 FastEthernet0/0 3.3.3.3 1 FULL/DR 00:00:38 10.5.5.3 FastEthernet0/0 R4# conf t Enter configuration commands, one per line. End with CNTL/Z. R4(config)# interface fastethernet0/0 R4(config-if)# ip ospf hello-interval 9 R4(config-if)# ^Z From the Library of Alexey Evseenko Chapter 7: Fundamental OSPF Concepts 277 *Apr 28 00:06:20.271: %SYS-5-CONFIG_I: Configured from console by console R4# show ip ospf interface fa0/0 FastEthernet0/0 is up, line protocol is up Internet Address 10.5.5.4/28, Area 0 Process ID 4, Router ID 4.4.4.4, Network Type BROADCAST, Cost: 1 Enabled by interface config, including secondary ip addresses Transmit Delay is 1 sec, State DROTHER, Priority 1 Designated Router (ID) 3.3.3.3, Interface address 10.5.5.3 Backup Designated router (ID) 2.2.2.2, Interface address 10.5.5.2 Timer intervals configured, Hello 9, Dead 36, Wait 36, Retransmit 5 oob-resync timeout 40 Hello due in 00:00:01 Supports Link-local Signaling (LLS) Index 1/1, flood queue length 0 Next 0x0(0)/0x0(0) Last flood scan length is 0, maximum is 3 Last flood scan time is 0 msec, maximum is 4 msec Neighbor Count is 3, Adjacent neighbor count is 2 Adjacent with neighbor 2.2.2.2 (Backup Designated Router) Adjacent with neighbor 3.3.3.3 (Designated Router) Suppress hello for 0 neighbor(s) R4# *Apr 28 00:06:51.559: %OSPF-5-ADJCHG: Process 4, Nbr 1.1.1.1 on FastEthernet0/0 from 2WAY to DOWN, Neighbor Down: Dead timer expired *Apr 28 00:06:57.183: %OSPF-5-ADJCHG: Process 4, Nbr 3.3.3.3 on FastEthernet0/0 from FULL to DOWN, Neighbor Down: Dead timer expired *Apr 28 00:06:58.495: %OSPF-5-ADJCHG: Process 4, Nbr 2.2.2.2 on FastEthernet0/0 from FULL to DOWN, Neighbor Down: Dead timer expired This example demonstrates several interesting facts. First, note that upon configuring the ip ospf hello-interval 9 command under Fa0/0, the show ip ospf interface fa0/0 command shows that not only did the Hello interval change, but the Dead timer was also set to 4X the Hello interval, or 36. To directly set the Dead timer on the interface, use the ip ospf dead-interval value interface subcommand. Then, at the end of the example, note that all three of R4’s neighbor relationships failed, because those routers now have mismatched Hello and Dead timers. However, the neighbor relationships failed only after the Dead timers expired, as noted in the messages and as confirmed by the timestamps on the messages. Example 7-4 also shows the two normal, stable, and working neighbor states. Look to the heading “state” in the output of the show ip ospf neighbors command at the top of the example. The first word (before the /) lists the state or status of each neighbor. FULL refers to a fully adjacent neighbor, meaning that the OSPF topology has been fully exchanged with that neighbor. The other state listed there, 2WAY, is a normal, stable, working state for neighbors with which topology data was not exchanged directly. In From the Library of Alexey Evseenko 278 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide some cases, OSPF routers exchange their topology information to one specific router on a LAN, called the designated router (DR), but they do not exchange their database directly with other routers. In the preceding example, taken from R4, R4 lists its relationship with R1 as 2WAY, which happens to be the status for a working neighbor that does not become fully adjacent. Note OSPF has two methods to tune the Hello and Dead intervals to subsecond values. Like EIGRP, OSPF supports Bidirectional Forwarding Detection (BFD). Additionally, OSPF supports the command ip ospf dead-interval minimal hello-multiplier multiplier, which sets the Dead interval to one second, and the Hello interval to a fraction of a second based on the multiplier. For example, the command ip ospf dead-interval minimal hellomultiplier 4 sets the Dead interval to one second, with Hellos occurring four times (the multiple) per second, for an effective Hello interval of 1/4 seconds. Using a Unique OSPF Router ID As mentioned earlier in the “OSPF Review” section, each OSPF router assigns itself a router ID, based on the same rules as EIGRP. In OSPF’s case, that means a router first looks for the OSPF router-id rid-value OSPF subcommand; next, to the highest IP address of any up loopback interface; and finally, to the highest IP address of any up nonloopback interface. An OSPF RID mismatch makes for unpredictable results, because OSPF routers base their view of the topology on the topology database, and the database identifies routers based on their RIDs. By design, all OSPF RIDs in a domain should be unique. To avoid such issues, OSPF prevents neighborships between routers with duplicate RIDs. The next example shows what happens when two routers discover each other as potential neighbors but notice a duplicate RID. Using the same network as in Figure 7-4, each router has been assigned an obvious RID: 1.1.1.1 for R1, 2.2.2.2 for R2, and so on. Unfortunately, R4 has been mistakenly configured with RID 1.1.1.1, duplicating R1’s RID. R4 is powered on after all three other routers have established neighbor relationships. Example 7-5 shows some of the results. Example 7-5 OSPF RID Mismatch—R1 and R4, R4 Connects After R1 ! On R1... the following output occurs AFTER R4 powers on. R1, RID 1.1.1.1, ! does not form a neighbor relationship with R4. R1# show ip ospf neighbors Neighbor ID 2.2.2.2 3.3.3.3 Pri State 1 FULL/BDR 1 FULL/DR Dead Time 00:00:35 00:00:33 Address 10.5.5.2 10.5.5.3 Interface FastEthernet0/0 FastEthernet0/0 ! On R3 From the Library of Alexey Evseenko Chapter 7: Fundamental OSPF Concepts 279 ! R3 does form a neighbor relationship, but does not learn routes from ! R4. Note that R3 does not have a route for R4's 10.4.4.0/27 subnet. R3# show ip ospf neighbors Neighbor ID Pri State Dead Time Address Interface 1.1.1.1 1 FULL/DROTHER 00:00:38 10.5.5.1 FastEthernet0/0 1.1.1.1 1 FULL/DROTHER 00:00:37 10.5.5.4 FastEthernet0/0 2.2.2.2 1 FULL/BDR 00:00:35 10.5.5.2 FastEthernet0/0 R3# show ip route ospf 10.0.0.0/8 is variably subnetted, 4 subnets, 4 masks O 10.2.2.0/25 [110/2] via 10.5.5.2, 00:06:56, FastEthernet0/0 O 10.1.1.0/24 [110/2] via 10.5.5.1, 00:01:34, FastEthernet0/0 As you can see from the output on R1, whose RID is duplicated with R4, the routers with duplicate RIDs do not form a neighbor relationship. Additionally, other routers, such as R3, do form neighbor relationships with the two routers, but the duplication confuses the topology flooding process. Because R3 formed its neighborship with R1 before R4, R3 does learn a route for R1’s 10.1.1.0/24 subnet, but does not for R4’s 10.4.4.0/27 subnet. However, with the same configuration, but a different sequence and timing of neighbors coming up, R3 might learn about 10.4.4.0/27 instead of 10.1.1.0/24. Note The OSPF process will not start without an RID. Using the Same IP MTU The maximum transmission unit (MTU) of an interface tells Cisco IOS the largest IP packet that can be forwarded out an interface. This setting protects the packet from being discarded on data links whose Layer 2 features will not pass a frame over a certain size. For example, routers typically default to an IP MTU of 1500 bytes. From a data plane perspective, when a router needs to forward a packet larger than the outgoing interface’s MTU, the router either fragments the packet or discards it. If the IP header’s Do Not Fragment (DF) bit is set, the router discards the packet. If the DF bit is not set, the router can perform Layer 3 fragmentation on the packet, creating two (or more) IP packets with mostly identical IP headers, spreading the data that follows the original IP packet header out among the fragments. The fragments can then be forwarded, with the reassembly process being performed by the receiving host. From a design perspective, the MTU used by all devices attached to the same data link ought to be the same value. However, routers have no dynamic mechanism to prevent the misconfiguration of MTU on neighboring routers. When an MTU mismatch occurs between two OSPF neighbors, one router will attempt to become neighbors with the other router whose MTU differs. The other router will be listed in the list of neighbors (show ip ospf neighbor). However, the two routers will not From the Library of Alexey Evseenko 280 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide exchange topology information, and the two routers will not calculate routes that use this neighbor as a next-hop router. The IP MTU can be set on an interface using the ip mtu value interface subcommand and for all Layer 3 protocols with the mtu value interface subcommand. Example 7-6 shows an example, with R4 again configured so that it has problems. Example 7-6 Setting IP MTU and Failing the OSPF Database Exchange Process R4# configure terminal Enter configuration commands, one per line. End with CNTL/Z. R4(config)# int fastethernet0/0 R4(config-if)# ip mtu 1498 R4(config-if)# ^Z R4# R4# show ip interface fa0/0 FastEthernet0/0 is up, line protocol is up Internet address is 10.5.5.4/28 Broadcast address is 255.255.255.255 Address determined by non-volatile memory MTU is 1498 bytes ! lines omitted for brevity R4# show ip ospf neighbors Neighbor ID 1.1.1.1 2.2.2.2 3.3.3.3 Pri State Dead Time Address 1 EXSTART/DROTHER 00:00:39 10.5.5.1 1 EXSTART/DROTHER 00:00:37 10.5.5.2 1 EXSTART/BDR 00:00:39 10.5.5.3 Interface FastEthernet0/0 FastEthernet0/0 FastEthernet0/0 *Apr 28 12:36:00.231: %OSPF-5-ADJCHG: Process 4, Nbr 2.2.2.2 on FastEthernet0/0 from EXSTART to DOWN, Neighbor Down: Too many retransmissions R4# show ip ospf neighbors Neighbor ID 1.1.1.1 2.2.2.2 3.3.3.3 Pri State 1 INIT/DROTHER 1 DOWN/DROTHER 1 INIT/DROTHER Dead Time 00:00:39 00:00:39 Address 10.5.5.1 10.5.5.2 10.5.5.3 Interface FastEthernet0/0 FastEthernet0/0 FastEthernet0/0 Note that you could argue that the mismatched MTU does not prevent routers from becoming neighbors, but it does prevent them from successfully exchanging topology data. When the mismatch occurs, a pair of routers tries to become neighbors, and they list each other in the output of the show ip ospf neighbors command, as seen in Example 7-6. However, the neighbor state (listed before the /, under the heading “State”) moves from EXSTART (which means that the database exchange process is starting), but it fails as implied by the highlighted message in the example. Then, the state changes to DOWN, and later one router tries again, moving to the INIT (initializing) state. So, the neighbor is listed in the output of the show ip ospf neighbors command, but it never succeeds at exchanging topology data. From the Library of Alexey Evseenko Chapter 7: Fundamental OSPF Concepts 281 OSPF Neighbors and Adjacencies on WANs To form OSPF neighbor relationships on WAN connections, OSPF still must meet the same requirements as on LANs. The area number must match with each neighbor; the IP subnet address and mask of each router must match; authentication must pass; and so on. In short, the items in Table 7-5 earlier in this chapter must be true. However, the operation of OSPF on WAN links of various types requires some additional thought, particularly when developing an implementation and verification plan. In particular, depending on the WAN technology and configuration, the following additional questions might matter for proper OSPF operation over WAN connections: ■ Will the routers discover each other using multicast OSPF Hello messages, or do the neighbors require predefinition? ■ Will the routers try to elect a DR, and if so, which router should be the DR? ■ With which other routers should each router become an OSPF neighbor? The first two of these items depend in part on the setting of the OSPF network type, and the third question depends on the WAN service. This section first examines the concept of OSPF network types and then examines the use of OSPF over common WAN technologies. OSPF Network Types The OSPF network type (a per-interface setting) directs OSPF in regard to three important facts: ■ Whether the router can expect to discover neighbors using multicast Hello messages ■ Whether only two or more than two OSPF routers can exist in the subnet attached to the interface ■ Whether the router should attempt to elect an OSPF DR on that interface For example, LAN interfaces require a DR because of the default OSPF network type of broadcast. An OSPF network type of broadcast dynamically discovers neighbors using multicast Hello messages. Also, the broadcast OSPF network type supports more than two routers on the same subnet, and it elects a DR. Conversely, point-to-point links and point-to-point WAN subinterfaces default to use a network type of point-to-point, meaning that only two OSPF routers can exist in the subnet, neighbors can be dynamically discovered through Hellos, and the routers do not elect a DR. In production networks, the network type is often ignored, because there is no motivation to change this setting—you pick a combination that works, and most everyone ignores it. However, for the sake of CCNP ROUTE, you need to be able to distinguish between these different OSPF network types. Table 7-6 summarizes the OSPF network types and their meanings. Note that this perinterface or per-subinterface setting is configured with the ip ospf network type interface subcommand. From the Library of Alexey Evseenko 282 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Key Topic Table 7-6 OSPF Network Types Interface Type Uses Default Hello Dynamic DR/BDR? Interval Discovery of Neighbors? More Than Two Routers Allowed in the Subnet? Broadcast Yes 10 Yes Yes Point-to-point1 No 10 Yes No Loopback No — — No Nonbroadcast2 (NBMA) Yes 30 No Yes Point-to-multipoint No 30 Yes Yes Point-to-multipoint nonbroadcast No 30 No Yes 1 Default on Frame Relay point-to-point subinterfaces. 2 Default on Frame Relay physical and multipoint subinterfaces. OSPF Neighborship over Point-to-Point Links Point-to-point serial links can be a bit boring. You configure IP addresses on either end, configure the clock rate if using a back-to-back serial cable in a lab, and configure no shutdown on the interfaces. When enabling OSPF on the interfaces, no extra effort is required compared to LANs—just enable OSPF on the interface, and rely on the default OSPF network type of point-to-point. However, serial links can provide a convenient and uncluttered place to experiment with OSPF network types. As such, Figure 7-5 shows a small network with two routers, with Example 7-7 that follows showing several examples of the OSPF network type. (This small network matches a portion of the network shown in Figure 7-1 earlier in this chapter.) Area 1 RID 1.1.1.1 S0/0/0 R1 12.1/30 Fa0/0 1.1/24 RID 2.2.2.2 S0/0/1 12.2/30 R2 Fa0/0 2.2/25 Area 0 Note: All IP addresses begin with 10.1 unless otherwise noted. Figure 7-5 Simple Two-Router Internetwork From the Library of Alexey Evseenko Chapter 7: Fundamental OSPF Concepts 283 Example 7-7 demonstrates OSPF network types with all defaults on the High-Level Data Link Control (HDLC) link between R1 and R2. Example 7-7 OSPF Network Types, Default, on an HDLC Link R1# show run int s0/0/0 Building configuration... Current configuration : 102 bytes ! interface Serial0/0/0 ip address 10.1.12.1 255.255.255.252 no fair-queue clock rate 1536000 ! router ospf 1 network 10.0.0.0 0.255.255.255 area 1 ! end R1# show ip ospf interface s0/0/0 Serial0/0/0 is up, line protocol is up Internet Address 10.1.12.1/30, Area 1 Process ID 1, Router ID 1.1.1.1, Network Type POINT_TO_POINT, Cost: 64 ! lines omitted for brevity R1# show ip ospf neighbor Neighbor ID 2.2.2.2 Pri State 0 FULL/ - Dead Time Address 00:00:31 10.1.12.2 Interface Serial0/0/0 Example 7-7 begins listing R1’s configuration on the serial link, mainly to make the point that the OSPF network type has not been explicitly configured. The show ip ospf interface command then lists the network type (point-to-point). Based on Table 7-7, this type should dynamically discover neighbors, and it does, with neighbor 2.2.2.2 (R2) being listed at the end of the example. In particular, note that under the state heading in the show ip ospf neighbor command output, after the /, only a dash is listed. This notation means that no attempt was made to elect a DR. If the network type had implied that a DR should be elected, some text would be listed after the /, for example, “/DR” meaning that the neighbor was the DR. (Refer back to the end of Example 7-4 for an example of the output of show ip ospf neighbor in which a DR has been elected.) Example 7-8 shows an alternative where both routers change their OSPF network type on the serial link to nonbroadcast. This change is nonsensical in real designs and is only done for the purposes of showing the results: that the neighbors are not discovered dynamically, but after being defined, a DR is elected. From the Library of Alexey Evseenko 284 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Note R2 has been preconfigured to match the configuration on R1 in Example 7-8. Specifically, the OSPF network type has been changed (ip ospf network non-broadcast), and R2 has been configured with a neighbor 10.1.12.1 OSPF router subcommand. Example 7-8 Configuring OSPF Network Type Nonbroadcast on an HDLC Link R1# configure terminal Enter configuration commands, one per line. End with CNTL/Z. R1(config)# interface s0/0/0 R1(config-if)# ip ospf network ? broadcast Specify OSPF broadcast multi-access network non-broadcast Specify OSPF NBMA network point-to-multipoint Specify OSPF point-to-multipoint network point-to-point Specify OSPF point-to-point network R1(config-if)# ip ospf network non-broadcast R1(config-if)# ^Z R1# show ip ospf neighbor R1# configure terminal Enter configuration commands, one per line. End with CNTL/Z. R1(config)# router ospf 1 R1(config-router)# neighbor 10.1.12.2 R1(config-router)# ^Z R1# *Apr 28 20:10:15.755: %OSPF-5-ADJCHG: Process 1, Nbr 2.2.2.2 on Serial0/0/0 from LOADING to FULL, Loading Done R1# show ip ospf neighbor Neighbor ID 2.2.2.2 Pri State 1 FULL/DR Dead Time Address 00:01:58 10.1.12.2 Interface Serial0/0/0 The example begins with R2 already configured, so the neighbor relationship has already failed. When the OSPF network type changes on R1’s S0/0/0, the routers do not dynamically discover each other, based on the network type (nonbroadcast). However, by completing the configuration in the example by adding R1’s neighbor 10.1.12.2 command, the neighbor relationship is formed. Also, note that the final show ip ospf neighbor command lists a state of FULL, then a /, and then DR, meaning that a DR was indeed elected, as required by this OSPF network type. Neighborship over Frame Relay Point-to-Point Subinterfaces Frame Relay design allows several options for IP addressing and subnetting. One option treats each pair of routers on the ends of each PVC as a point-to-point topology, with one From the Library of Alexey Evseenko Chapter 7: Fundamental OSPF Concepts 285 subnet assigned to each pair of routers. Another option treats more than two routers as a group, whether connected with a full mesh or partial mesh of PVCs, with a single subnet assigned to that group. Many Frame Relay designs use the first option, treating each pair of routers on the ends of a PVC as a single subnet, as shown in Figure 7-6. In such cases, it makes sense to treat each PVC as a separate point-to-point connection, assigning a single subnet (at Layer 3) to each Layer 2 PVC. interface S0/0/0.1 point-to-point ip address 10.1.1.1 255.255.255.252 frame-relay interface-dlci 101 10.1.1.0/30 interface S0/0/0.2 point-to-point ip address 10.1.1.5 255.255.255.252 frame-relay interface-dlci 102 interface s0/0/0.3 point-to-point ip address 10.1.1.9 255.255.255.252 frame-relay interface-dlci 103 R1 10.1.1.8/30 Frame Relay 10.1.1.4/30 R2 R4 R3 OSPF Neighborship Figure 7-6 Hub-and-Spoke Frame Relay Network With this design, if all the routers use point-to-point subinterfaces as shown in R1’s configuration in the figure, you can ignore the OSPF network (interface) type and OSPF works fine. Cisco IOS point-to-point subinterfaces unsurprisingly default to use an OSPF network type of point-to-point. The two routers discover each other using multicast OSPF Hellos. They do not bother to elect a DR, and everything works well. Neighborship on MPLS VPN Multiprotocol Label Switching (MPLS) virtual private networks (VPN) create a WAN service that has some similarities but many differences when compared to Frame Relay. The customer routers connect to the service, often with serial links but at other times From the Library of Alexey Evseenko 286 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide with Frame Relay PVCs or with Ethernet. The service itself is a Layer 3 service, forwarding IP packets through a cloud. As a result, no predefined PVCs need to exist between the customer routers. Additionally, the service uses routers at the edge of the service provider cloud—generically called provider edge (PE) routers—and these routers are Layer 3 aware. That Layer 3 awareness means that the customer edge (CE) routers form an OSPF neighborship with the PE router on the other end of their local access link, as shown in Figure 7-7. The PE routers exchange their routes, typically using Multiprotocol BGP (MP-BGP). So, unlike the design seen previously in Figure 7-6, the central-site router will not have an OSPF neighborship with each branch office router but will have a neighborship with the MPLS VPN provider’s PE router. MPLS VPN characteristics do impact the data seen in the LSDB in the enterprise routers and require some different thinking in regard to area design. R1 PE MPLS VPNs PE PE PE R2 R4 R3 OSPF Neighborship Figure 7-7 OSPF Neighborships over MPLS VPN From the Library of Alexey Evseenko Chapter 7: Fundamental OSPF Concepts 287 Neighborship on Metro Ethernet In the like-named section “Neighborship on Metro Ethernet” in Chapter 4, “Fundamental EIGRP Concepts,” you were introduced to some basic terminology for Metro Ethernet, including Virtual Private Wire Service (VPWS), a point-to-point service, and Virtual Private LAN Service (VPLS), a multipoint service. In both cases, however, if a customer connects to the service using a router, the configuration typically uses VLAN trunking with subinterfaces off a Fast Ethernet or Gigabit Ethernet interface. If connecting with a Layer 3 switch, the configuration again often uses VLAN trunking, with the Layer 3 configuration being made on various VLAN interfaces inside the switch configuration. Because MetroE services provide Layer 2 connectivity, customer routers do not form OSPF neighborships with routers inside the service provider’s network. Instead, OSPF neighborships form between customer routers, essentially as if the service were a large WAN. Figure 7-8 shows the basic idea, with four routers connected to the service. R1 Gi0/0 Fa0/1 R2 Fa0/1 R3 Metro Ethernet Fa0/1 R4 OSPF Neighborship Figure 7-8 OSPF Neighborships over Metro Ethernet From the Library of Alexey Evseenko 288 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Figure 7-8 shows four routers with any-to-any connectivity, typical of a VPWS service. However, from an OSPF design perspective, each pair of routers could communicate over a different VLAN, using a different Layer 3 subnet. Each Layer 3 subnet could be in a different area. Virtual Links OSPF area design requires the use of a backbone area, area 0, with each area connecting to area 0 through an ABR. However, in some cases, two backbone areas exist. In other cases, a nonbackbone area might not have a convenient point of connection to the backbone area, for example: ■ Case 1: An existing internetwork needs to add a new area, with a convenient, low- cost connection point with another nonbackbone area; however, that connection does not give the new area any connection to area 0. ■ Case 2: Even with a well-designed area 0, a combination of link failures might result in a discontiguous backbone area, essentially creating two backbone areas. ■ Case 3: Two companies could merge, each using OSPF. To merge the OSPF domains, one backbone area must exist. It might be more convenient to connect the two networks using links through an existing nonbackbone area, but that design means two backbone areas, which is not allowed. Figure 7-9 shows an example of each of the first two cases. The problems in each case have different symptoms, but the problems all stem from the area design requirements: Each area should be contiguous, and each nonbackbone area should connect to the backbone area through an ABR. When the network does not meet these requirements, engineers could simply redesign the areas. However, OSPF provides an alternative tool called an OSPF virtual link. From the Library of Alexey Evseenko (New) Area 111 (Old) Area 222 Chapter 7: Fundamental OSPF Concepts 289 Area 0 Case 1 Site 1 Backbone Area Site 2 Case 2 Area 1 Figure 7-9 Examples of Area Design Issues Understanding OSPF Virtual Link Concepts An OSPF virtual link allows two ABRs that connect to the same nonbackbone area to form a neighbor relationship through that nonbackbone area, even when separated by many other routers and subnets. This virtual link acts like a virtual point-to-point connection between the two routers, with that link inside area 0. The routers form a neighbor relationship, inside area 0, and flood LSAs over that link. From the Library of Alexey Evseenko 290 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide For example, consider the topology in Figure 7-10, which shows an example of the third of the three cases described in the beginning of this section. In this case, two companies merged. Both companies had a small office in the same city, so for expediency’s sake, they connected the two former enterprise internetworks through a newly combined local sales office in area 1. Company 1 Area 0 Company 2 Area 0 RID 1.1.1.1 Fa0/0 C1 Fa0/1 10.21.1.1/24 Virtual Link Fa0/0 RID 4.4.4.4 C2 Fa0/1 10.24.1.1/24 Branch Company 1 Branch Company 2 Area 1 Figure 7-10 Connecting Two Area 0s with a Virtual Link Although adding the link between branch offices can be a cost-effective temporary choice, it creates a design problem: Two backbone areas now exist, and OSPF requires that the backbone area be contiguous. To solve this problem, the engineer configures a virtual link between ABRs C1 and C2. The virtual link exists inside area 0, making area 0 contiguous. To define the virtual link, each router configures the other router’s RID and a reference to the area through which the virtual link passes (area 1 in this case). The two routers send the usual OSPF message types, encapsulated inside unicast IP packets, with a destination IP address of the router on the other end of the virtual link. Any routers between the two routers that create the virtual link—for example, the two branch routers in Figure 7-10—just forward these OSPF packets like any other packet. The neighbors on the ends of the virtual link flood their LSDBs to each other so that all routers in both parts of area 0 learn the routes from the other area 0. The ABRs connected over a virtual link act mostly like any other ABR, with a couple of differences. The first difference is that ABRs send all OSPF messages as unicasts to the IP address of the router on the other end of the link. Second, the routers also mark the Do Not Age (DNA) bit in the LSAs, meaning that all routers on the other side of the virtual From the Library of Alexey Evseenko Chapter 7: Fundamental OSPF Concepts 291 link will not expect the LSAs to be reflooded over the virtual link on the usual 30-minute refresh interval. This helps reduce overhead over the virtual link, which often runs over slower links and less-powerful routers. The router also assigns an OSPF cost to the virtual link, just as it would for an interface. After the virtual link is up, the ABRs’ SPF processes can calculate their best routes just like before, using the virtual link as another point-to-point link in area 0. For packets destined to pass from one part of the backbone over the virtual link to the other part of the backbone, the chosen best routes eventually lead the packets to the router with the virtual link. That router, connected to the transit nonbackbone area, has already calculated its next hop based on the LSDB in the transit area (Router C1 and transit area 1 in the example of Figure 7-10). The routers in the transit area choose routes that eventually deliver the packet to the router on the other end of the virtual link (Router C2 in Figure 7-10). Configuring OSPF Virtual Links Configuring an OSPF virtual link requires a minor amount of configuration just to get the link working, with several optional configuration items. Most of the optional configuration settings relate to features that would normally be configured on the interface connecting two neighboring routers, but with a virtual link, there is no such interface, so the parameters must be added to the area virtual-link command. The following list summarizes the key configuration options on the area virtual-link router subcommand: Key Topic ■ The remote-RID in the area area-num virtual-link remote-RID command refers to the other router’s RID. ■ The area-num in the area area-num virtual-link remote-RID command refers to the transit area over which the packets flow between the two routers. ■ The transit area over which the two routers communicate must not be a stubby area. ■ The optional configuration of OSPF neighbor authentication parameters, normally configured as interface subcommands, must be configured as additional parameters on the area virtual-link command. ■ The optional configuration of Hello and Dead intervals, normally configured as interface subcommands, must be configured as additional parameters on the area virtual-link command. ■ The router assigns the virtual link an OSPF cost as if it were a point-to-point link. The router calculates the cost as the cost to reach the router on the other end of the link, as calculated using the transit area’s LSDB. Example 7-9 shows the configuration of a virtual link on Router C1 and Router C2 shown in Figure 7-10. The configuration shows the virtual link, referencing area 1 as the transit area, with each router referring to the other router’s RIDs. The configuration also shows the loopback IP addresses on which the ABR’s RIDs are based being advertised into OSPF. From the Library of Alexey Evseenko 292 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Example 7-9 OSPF Virtual Link Configuration on Routers C1 and C2 ! On Router C1: router ospf 1 area 1 virtual-link 4.4.4.4 ! interface fastethernet0/0 ip address 10.1.1.1 255.255.255.0 ip ospf 1 area 0 ! interface fastethernet0/1 ip address 10.21.1.1 255.255.255.0 ip ospf 1 area 1 ! interface loopback 1 ip address 1.1.1.1 255.255.255.0 ip ospf 1 area 1 ! On Router C2: router ospf 4 area 1 virtual-link 1.1.1.1 ! interface fastethernet0/0 ip address 10.4.4.4 255.255.255.0 ip ospf 4 area 0 ! interface fastethernet0/1 ip address 10.24.1.1 255.255.255.0 ip ospf 4 area 1 ! interface loopback 1 ip address 4.4.4.4 255.255.255.0 ip ospf 4 area 1 Verifying the OSPF Virtual Link To prove whether the virtual link works, a neighbor relationship between C1 and C2 must reach the FULL state, resulting in all routers in both parts of area 0 having the same area 0 LSDB. Example 7-10 shows the working neighbor relationship, plus status information for the virtual link with the show ip ospf virtual-links command. Example 7-10 OSPF Virtual Link Configuration on Routers C1 and C2 C1# show ip ospf virtual-links Virtual Link OSPF_VL0 to router 4.4.4.4 is up Run as demand circuit DoNotAge LSA allowed. From the Library of Alexey Evseenko Chapter 7: Fundamental OSPF Concepts 293 Transit area 1, via interface FastEthernet0/1, Cost of using 3 Transmit Delay is 1 sec, State POINT_TO_POINT, Timer intervals configured, Hello 10, Dead 40, Wait 40, Retransmit 5 Hello due in 00:00:02 Adjacency State FULL (Hello suppressed) Index 1/2, retransmission queue length 0, number of retransmission 0 First 0x0(0)/0x0(0) Next 0x0(0)/0x0(0) Last retransmission scan length is 0, maximum is 0 Last retransmission scan time is 0 msec, maximum is 0 msec ! ! next, note that the neighbor reaches FULL state, with no DR elected. C1# show ip ospf neighbor Neighbor ID 4.4.4.4 2.2.2.2 Pri State 0 FULL/ 1 FULL/DR Dead Time Address - 10.24.1.1 00:00:35 10.21.1.2 Interface OSPF_VL0 FastEthernet0/1 C1# show ip ospf neighbor detail 4.4.4.4 Neighbor 4.4.4.4, interface address 10.24.1.1 In the area 0 via interface OSPF_VL0 Neighbor priority is 0, State is FULL, 6 state changes DR is 0.0.0.0 BDR is 0.0.0.0 Options is 0x32 in Hello (E-bit, L-bit, DC-bit) Options is 0x72 in DBD (E-bit, L-bit, DC-bit, O-bit) LLS Options is 0x1 (LR) Neighbor is up for 00:00:21 Index 1/2, retransmission queue length 0, number of retransmission 0 First 0x0(0)/0x0(0) Next 0x0(0)/0x0(0) Last retransmission scan length is 0, maximum is 0 Last retransmission scan time is 0 msec, maximum is 0 msec The only new command in the example, show ip ospf virtual-links, details some items unique to virtual links. In particular, the first highlighted portion shows the assignment of a name to the link (VL0); if multiple virtual links were configured, each would have a different number. This virtual link name/number is then referenced inside the LSDB. It also shows that the routers both allow the use of the Do Not Age (DNA) bit, so periodic reflooding will not occur over this virtual link. It lists a cost of 3. As it turns out, each of the three interfaces between Router C1 and C2 have an OSPF cost of 1, so C1’s area 1 cost to reach C2 is 3. The output also confirms that the routers have reached a fully adjacent state and are suppressing the periodic Hello messages. From the Library of Alexey Evseenko 294 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide The familiar show ip ospf neighbor command lists a few new items as well. Note that the interface refers to the virtual link “OSPF VL0” instead of the interface, because there is no interface between the neighbors. It also lists no Dead timer, because the neighbors choose to not use the usual Hello/Dead interval process over a virtual link. (Instead, if all the transit area’s routes to reach the router on the other router of the link fail, the virtual link fails.) Finally, the show ip ospf neighbor detail 4.4.4.4 command shows the interesting phrase “In the area 0 via interface OSPF VL0,” confirming that the neighborship does indeed exist in area 0. Note OSPF does not require that the RID IP address range be advertised as a route in OSPF. As a result, the RID listed in the area virtual-link command might not be pingable, but the virtual link still works. From the Library of Alexey Evseenko Exam Preparation Tasks Chapter 7: Fundamental OSPF Concepts 295 Planning Practice The CCNP ROUTE exam expects test takers to review design documents, create implementation plans, and create verification plans. This section provides some exercises that can help you to take a step back from the minute details of the topics in this chapter, so that you can think about the same technical topics from the planning perspective. For each planning practice table, simply complete the table. Note that any numbers in parentheses represent the number of options listed for each item in the solutions in Appendix F, “Completed Planning Practice Tables.” Design Review Table Table 7-7 lists several design goals related to this chapter. If these design goals were listed in a design document, and you had to take that document and develop an implementation plan, what implementation options come to mind? For any configuration items, a general description can be used, without concern about specific parameters. Table 7-7 Design Review Design Goal Improve OSPF convergence. Possible Implementation Choices Covered in This Chapter Implement OSPF on each router so that neighborships are formed (2). Limit neighborship formation on OSPF-enabled interfaces (2). The design shows branch routers with WAN interfaces in area 0 and LAN interfaces in different areas for each branch. What LSDB information do you expect to see in the branch routers? A merger design plan shows two companies with OSPF backbone areas. How can the two area 0s be connected? (2) Implementation Plan Peer Review Table Table 7-8 shows a list of questions that others might ask, or that you might think about, during a peer review of another network engineer’s implementation plan. Complete the table by answering the questions. From the Library of Alexey Evseenko 296 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Table 7-8 Notable Questions from This Chapter to Consider During an Implementation Plan Peer Review Question Answers What happens on a router interface on which an OSPF network command matches the interface? (2) What configuration settings prevent OSPF neighbor discovery on an OSPF-enabled interface? What settings do potential neighbors check before becoming OSPF neighbors? (7) What settings that many CCNP candidates might think would impact OSPF neighbor relationships actually do not prevent a neighborship from forming? A design shows one main site and 100 branches, with OSPF and MPLS VPNs. How many OSPF neighborships over the WAN do you expect to see on the central-site router? A design shows one main site and 100 branches, with one Frame Relay PVC between the main site and each branch. How many OSPF neighborships over the WAN do you expect to see on the central-site router? A design shows six routers connected to the same VLAN and subnet. How many OSPF fully adjacent neighborships over this subnet do you expect each router to have? A design shows one main site and 100 branches, each connected with a VPWS service. The configuration shows that the central-site router uses a separate VLAN subinterface to connect to each branch, but the branch routers do not have a VLAN connecting to other branches. How many OSPF fully adjacent neighborships over the WAN do you expect to see on the central site router? Create an Implementation Plan Table To practice skills useful when creating your own OSPF implementation plan, list in Table 7-9 configuration commands related to the configuration of the following features. You might want to record your answers outside the book and set a goal to complete this table (and others like it) from memory during your final reviews before taking the exam. From the Library of Alexey Evseenko Chapter 7: Fundamental OSPF Concepts 297 Table 7-9 Implementation Plan Configuration Memory Drill Feature Configuration Commands/Notes Enabling OSPF on interfaces—traditional method Enabling OSPF on interfaces—using interface subcommands Setting Hello and Dead intervals Passive interfaces, with router subcommands OSPF router ID Create a virtual link through transit area X Choose Commands for a Verification Plan Table To practice skills useful when creating your own OSPF verification plan, list in Table 710 all commands that supply the requested information. You might want to record your answers outside the book and set a goal to complete this table (and others like it) from memory during your final reviews before taking the exam. Table 7-10 Verification Plan Memory Drill Information Needed Which routes have been added to the IP routing table by OSPF? All routes in a router’s routing table Command The specific route for a single destination address or subnet A list of all (both static and dynamically discovered) OSPF neighbors List interfaces on which OSPF has been enabled List the number of OSPF neighbors and fully adjacent neighbors known through a particular interface The elapsed time since a neighborship was formed The configured Hello timer for an interface The configured Dead interval timer for an interface From the Library of Alexey Evseenko 298 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Information Needed Command The current actual Dead timer for a neighbor A router’s RID A list of OSPF passive interfaces List traffic statistics about OSPF Display the name and status of a virtual link Note Some of the entries in this table may not have been specifically mentioned in this chapter but are listed in this table for review and reference. Review All the Key Topics Review the most important topics from inside the chapter, noted with the Key Topic icon in the outer margin of the page. Table 7-11 lists a reference of these key topics and the page numbers on which each is found. Table 7-11 Key Topics for Chapter 7 Key Topic Key Topic Element Description Page Number Table 7-2 Commonly Used OSPF 265 Terms List Base OSPF configuration 266 steps List Rules for choosing an OSPF 268 router ID Table 7-3 Commonly Used OSPF show 269 Commands Table 7-4 OSPF Feature Summary 271 List Requirements before OSPF 272 will attempt to dynamically discover neighbors Table 7-5 Neighbor Requirements for 275 EIGRP and OSPF Table 7-6 OSPF Network Types 282 List Configuration options for the 291 area virtual-link command From the Library of Alexey Evseenko Chapter 7: Fundamental OSPF Concepts 299 Complete the Tables and Lists from Memory Print a copy of Appendix D, “Memory Tables,” (found on the CD) or at least the section for this chapter, and complete the tables and lists from memory. Appendix E, “Memory Tables Answer Key,” also on the CD, includes completed tables and lists to check your work. Define Key Terms Define the following key terms from this chapter, and check your answers in the glossary: area, area border router (ABR), backbone router, router ID, Hello interval, Dead interval, fully adjacent, OSPF network type, virtual link From the Library of Alexey Evseenko This chapter covers the following topics: ■ LSAs and the OSPF Link-State Database: This section examines LSA Types 1, 2, and 3 and describes how they allow OSPF routers to model a topology and choose the best routes for each known subnet. ■ The Database Exchange Process: This section details how neighboring routers use OSPF messages to exchange their LSAs. ■ Choosing the Best Internal OSPF Routes: This section examines how OSPF routers calculate the cost for each possible route to each subnet. From the Library of Alexey Evseenko CHAPTER 8 The OSPF Link-State Database Open Shortest Path First (OSPF) and Enhanced Interior Gateway Routing Protocol (EIGRP) both use three major branches of logic, each of which populates a different table: the neighbor table, the topology table, or the IP routing table. This chapter examines topics related to the OSPF topology table—the contents and the processes by which routers exchange this information—and describes how OSPF routers choose the best routes in the topology table to be added to the IP routing table. In particular, this chapter begins by looking at the building blocks of an OSPF topology table, namely, the OSPF link-state advertisement (LSA). Following that, the chapter examines the process by which OSPF routers exchange LSAs with each other. Finally, the last major section of the chapter discusses how OSPF chooses the best route among many when running the Shortest Path First (SPF) algorithm. Note that this chapter focuses on OSPF version 2, the long-available version of OSPF that supports IPv4 routes. Chapter 9, “Advanced OSPF Concepts,” discusses OSPF version 3, which applies to IPv6. “Do I Know This Already?” Quiz The “Do I Know This Already?” quiz allows you to assess whether you should read the entire chapter. If you miss no more than one of these nine self-assessment questions, you might want to move ahead to the “Exam Preparation Tasks” section. Table 8-1 lists the major headings in this chapter and the “Do I Know This Already?” quiz questions covering the material in those headings so that you can assess your knowledge of those specific areas. The answers to the “Do I Know This Already?” quiz appear in Appendix A. Table 8-1 “Do I Know This Already?” Foundation Topics Section-to-Question Mapping Foundation Topics Section LSAs and the OSPF Link-State Database The Database Exchange Process Questions 1–3 4, 5 Choosing the Best OSPF Routes 6–9 From the Library of Alexey Evseenko 302 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide 1. A network design shows area 1 with three internal routers, area 0 with four internal routers, and area 2 with five internal routers. Additionally, one ABR (ABR1) connects areas 0 and 1, plus a different ABR (ABR2) connects areas 0 and 2. How many Type 1 LSAs would be listed in ABR2’s LSDB? a. 6 b. 7 c. 15 d. 12 e. None of the other answers are correct. 2. A network planning diagram shows a large internetwork with many routers. The configurations show that OSPF has been enabled on all interfaces, IP addresses correctly configured, and OSPF working. For which of the following cases would you expect a router to create and flood a Type 2 LSA? a. When OSPF is enabled on a LAN interface, and the router is the only router connected to the subnet b. When OSPF is enabled on a point-to-point serial link, and that router has both the higher router ID and higher interface IP address on the link c. When OSPF is enabled on a Frame Relay point-to-point subinterface, has the lower RID and lower subinterface IP address, and otherwise uses default OSPF configuration on the interface d. When OSPF is enabled on a working LAN interface on a router, and the router has been elected as a BDR e. None of the other answers are correct. 3. A verification plan shows a network diagram with branch office Routers B1 through B100, plus two ABRs, ABR1 and ABR2, all in area 100. The branches connect to the ABRs using Frame Relay point-to-point subinterfaces. The verification plan lists the output of the show ip ospf database summary 10.100.0.0 command on a Router B1, one of the branches. Which of the following is true regarding the output that could be listed for this command? a. The output lists nothing unless 10.100.0.0 has been configured as a summary route using the area range command. b. If 10.100.0.0 is a subnet in area 0, the output lists one Type 3 LSA, specifically the LSA with the lower metric when comparing ABR1’s and ABR2’s LSA for 10.100.0.0. c. If 10.100.0.0 is a subnet in area 0, the output lists two Type 3 LSAs, one each created by ABR1 and ABR2. d. None, because the Type 3 LSAs would exist only in the ABR’s LSDBs. From the Library of Alexey Evseenko Chapter 8: The OSPF Link-State Database 303 4. Which of the following OSPF messages contains complete LSAs used during the database exchange process? a. LSR b. LSAck c. LSU d. DD e. Hello 5. Routers R1, R2, R3, and R4 connect to the same 10.10.10.0/24 LAN-based subnet. OSPF is fully working in the subnet. Later, R5, whose OSPF priority is higher than the other four routers, joins the subnet. Which of the following are true about the OSPF database exchange process over this subnet at this point? (Choose two.) a. R5 will send its DD, LSR, and LSU packets to the 224.0.0.5 all-DR-routers multicast address. b. R5 will send its DD, LSR, and LSU packets to the 224.0.0.6 all-DR-routers multicast address. c. The DR will inform R5 about LSAs by sending its DD, LSR, and LSU packets to the 224.0.0.6 all-SPF-routers multicast address. d. The DR will inform R5 about LSAs by sending its DD, LSR, and LSU packets to the 224.0.0.5 all-SPF-routers multicast address. 6. R1 is internal to area 1, and R2 is internal to area 2. Subnet 10.1.1.0/24 exists in area 2 as a connected subnet off R2. ABR1 connects area 1 to backbone area 0, and ABR2 connects area 0 to area 2. Which of the following LSAs must R1 use when calculating R1’s best route for 10.1.1.0/24? a. R2’s Type 1 LSA b. Subnet 10.1.1.0/24’s Type 2 LSA c. ABR1’s Type 1 LSA in area 0 d. Subnet 10.1.1.0/24’s Type 3 LSA in Area 0 e. Subnet 10.1.1.0/24’s Type 3 LSA in Area 1 7. Which of the following LSA types describe topology information that, when changed, requires a router in the same area to perform an SPF calculation? (Choose two.) a. 1 b. 2 c. 3 d. 4 e. 5 f. 7 From the Library of Alexey Evseenko 304 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide 8. The following output was taken from Router R3. A scan of R3’s configuration shows that no bandwidth commands have been configured in this router. Which of the following answers list configuration settings that could be a part of a configuration that results in the following output? Note that only two of the three interface’s costs have been set directly. (Choose two.) R3# show ip ospf interface brief Interface PID Area Se0/0/0.2 3 34 Se0/0/0.1 3 34 Fa0/0 3 34 IP Address/Mask 10.10.23.3/29 10.10.13.3/29 10.10.34.3/24 Cost State Nbrs F/C 647 P2P 1/1 1000 P2P 1/1 20 BDR 1/1 a. An auto-cost reference-bandwidth 1000 command in router ospf mode b. An auto-cost reference-bandwidth 2000 command in router ospf mode c. An ip ospf cost 1000 interface S0/0/0.1 command in router ospf mode d. An auto-cost reference-bandwidth 64700 command in router ospf mode 9. Which of the following LSA types describe information related to topology or subnets useful for calculating routes for subnets inside the OSPF domain? (Choose three.) a. 1 b. 2 c. 3 d. 4 e. 5 f. 7 From the Library of Alexey Evseenko Foundation Topics Chapter 8: The OSPF Link-State Database 305 LSAs and the OSPF Link-State Database Every router that connects to a given OSPF area should learn the exact same topology data. Each router stores the data, composed of individual link-state advertisements (LSA), in its own copy of the link-state database (LSDB). Then, the router applies the Shortest Path First (SPF) algorithm to the LSDB to determine the best (lowest-cost) route for each reachable subnet (prefix/length). When a router uses SPF to analyze the LSDB, the SPF process has some similarities to how humans put a jigsaw puzzle together—but without a picture of what the puzzle looks like. Humans faced with such a challenge might first look for the obvious puzzle pieces, such as the corner and edge pieces, because they are easily recognized. You might then group puzzle pieces together if they have the same color or look for straight lines that might span multiple puzzle pieces. And of course, you would be looking at the shapes of the puzzle pieces to see which ones fit together. Similarly, a router’s SPF process must examine the individual LSAs and see how they fit together, based on their characteristics. To better appreciate the SPF process, the first section of this chapter examines the three LSA types that OSPF uses to describe an enterprise OSPF topology inside an OSPF domain. By understanding the types of LSAs, you can get a better understanding of what a router might look for to take the LSAs—the pieces of a network topology puzzle, if you will—and build the equivalent of a network diagram. Table 8-2 lists the various OSPF LSA types. Not all of these LSA types are discussed in this chapter but are provided in the table as a convenience when studying. Table 8-2 OSPF LSA Types Key Topic LSA Type Common Name 1 Router 2 Network 3 Net Summary Description Each router creates its own Type 1 LSA to represent itself for each area to which it connects. The LSDB for one area contains one Type 1 LSA per router per area, listing the RID and all interface IP addresses on that router that are in that area. Represents stub networks as well. One per transit network. Created by the DR on the subnet, and represents the subnet and the router interfaces connected to the subnet. Created by ABRs to represent subnets listed in one area’s Type 1 and 2 LSAs when being advertised into another area. Defines the links (subnets) in the origin area, and cost, but no topology data. From the Library of Alexey Evseenko 306 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide LSA Type Common Name Description 4 ASBR Summary Like a Type 3 LSA, except it advertises a host route used to reach an ASBR. 5 AS External Created by ASBRs for external routes injected into OSPF. 6 Group Membership Defined for MOSPF; not supported by Cisco IOS. 7 NSSA External Created by ASBRs inside an NSSA area, instead of a Type 5 LSA. 8 Link LSAs Type 8 LSAs only exist on a local link, where they are used by a router to advertise the router’s link-local address to all other routers on the same link. Additionally, the Type 8 LSA provides to routers on that link a listing of all IPv6 addresses associated with the link. 9 Intra-Area Prefix Can send information about IPv6 networks (including LSAs stub networks) attached to a router (similar to the Type 1 LSA for IPv4 networks). Additionally, a Type 9 LSA can send information about transit IPv6 network segments within an area (similar to the Type 2 LSA for IPv4 networks). 10, 11 Opaque Used as generic LSAs to allow easy future extension of OSPF. For example, Type 10 has been adapted for MPLS traffic engineering. LSA Type 1: Router LSA An LSA type 1, called a Router LSA, identifies an OSPF router based on its OSPF router ID (RID). Each router creates a Type 1 LSA for itself and floods the LSA throughout the same area. To flood the LSA, the originating router sends the Type 1 LSA to its neighbors inside the same area, who in turn send it to their other neighbors inside the same area, until all routers in the area have a copy of the LSA. Besides the RID of the router, this LSA also lists information about the attached links. In particular, the Type 1 LSA lists ■ For each interface on which no designated router (DR) has been elected, it lists the router’s interface subnet number/mask and interface OSPF cost. (OSPF refers to these subnets as stub networks.) ■ For each interface on which a DR has been elected, it lists the IP address of the DR and a notation that the link attaches to a transit network (meaning that a Type 2 LSA exists for that network). ■ For each interface with no DR, but for which a neighbor is reachable, it lists the neighbor’s RID. From the Library of Alexey Evseenko Chapter 8: The OSPF Link-State Database 307 As with all OSPF LSAs, OSPF identifies a Type 1 LSA using a 32-bit link-state identifier (LSID). When creating its own Type 1 LSA, each router uses its own OSPF RID value as the LSID. Internal routers each create a single Type 1 LSA for themselves, but area border routers (ABR) create multiple Type 1 LSAs for themselves: one per area. The Type 1 LSA in one area will list only interfaces in that area and only neighbors in that area. However, the router still has only a single RID, so all its Type 1 LSAs for a single router list the same RID. The ABR then floods each of its Type 1 LSAs into the appropriate area. To provide a better backdrop for the upcoming LSA discussions, Figure 8-1 shows a sample internetwork, which will be used in most of the examples in this chapter. Area 34 Fa0/0 10.10.34.3/24 S0/0/0.1 13.3 R3 S0/0/0.2 23.3 Fa0/0 10.10.34.4/24 S0/0/0.1 14.4 R4 S0/0/0.2 24.4 Fa0/0 17.1 R1 Fa0/1 18.1 Fa0/0.1 12.1 Fa0/0 5.5/27 S0/0.1 15.5 R5 S0/0.2 25.5 Fa0/0.1 12.2 Fa0/0 27.2 R2 Fa0/1 28.2 Area 5 Figure 8-1 Sample OSPF Multiarea Design SW1 Fa0/1 17.7 Fa0/2 27.7 Gi0/1 98.7 SW3 Data Center Subnet 10.10.99.0/24 18.8 Fa0/1 Gi0/1 98.8 Fa0/2 28.8 SW2 Area 0 Note Unless otherwise noted, the first two octets of all networks in Figure 8-1 are 10.10, which are not shown to make the figure more readable. All routers that participate in an area, be they internal routers or ABRs, create and flood a Type 1 LSA inside the area. For example, in Figure 8-1, area 5 has one internal router (R5, RID 5.5.5.5) and two ABRs: R1 with RID 1.1.1.1 and R2 with RID 2.2.2.2. Each of these three routers creates and floods its own Type 1 LSA inside area 5 so that all three routers know the same three Type 1 LSAs. Next, to further understand the details inside a Type 1 LSA, first consider the OSPF configuration of R5 as an example. R5 has three IP-enabled interfaces: Fa0/0, S0/0.1, and S0/0.2. R5 uses point-to-point subinterfaces, so R5 should form neighbor relationships with both R1 and R2 with no extra configuration beyond enabling OSPF, in area 5, on all three interfaces. Example 8-1 shows this baseline configuration on R5. From the Library of Alexey Evseenko 308 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Example 8-1 R5 Configuration—IP Addresses and OSPF interface Fastethernet0/0 ip address 10.10.5.5 255.255.255.224 ip ospf 5 area 5 ! interface s0/0.1 point-to-point ip address 10.10.15.5 255.255.255.248 frame-relay interface-dlci 101 ip ospf 5 area 5 ! interface s0/0.2 point-to-point ip address 10.10.25.5 255.255.255.248 frame-relay interface-dlci 102 ip ospf 5 area 5 ! router ospf 5 router-id 5.5.5.5 ! R5# show ip ospf interface brief Interface PID Area IP Address/Mask se0/0.2 5 5 10.10.25.5/29 se0/0.1 5 5 10.10.15.5/29 fa0/0 5 5 10.10.5.5/27 R5# show ip ospf neighbor Cost State Nbrs F/C 64 P2P 1/1 64 P2P 1/1 1 DR 0/0 Neighbor ID 2.2.2.2 1.1.1.1 Pri State 0 FULL/ 0 FULL/ - Dead Time 00:00:30 00:00:38 Address 10.10.25.2 10.10.15.1 Interface Serial0/0.2 Serial0/0.1 R5’s OSPF configuration enables OSPF, for process ID 5, placing three interfaces in area 5. As a result, R5’s Type 1 LSA will list at least these three interfaces as links, plus it will refer to the two working neighbors. Example 8-2 displays the contents of R5’s area 5 LSDB, including the detailed information in R5’s Type 1 LSA, including the following: ■ The LSID of R5’s Type 1 LSA (5.5.5.5) ■ Three links that connect to a stub network, each listing the subnet/mask ■ Two links that state a connection to another router, one listing R1 (RID 1.1.1.1) and one listing R2 (RID 2.2.2.2) Example 8-2 R5 Configuration—IP Addresses and OSPF R5# show ip ospf database OSPF Router with ID (5.5.5.5) (Process ID 5) Router Link States (Area 5) From the Library of Alexey Evseenko Chapter 8: The OSPF Link-State Database 309 Link ID 1.1.1.1 2.2.2.2 5.5.5.5 ADV Router Age 1.1.1.1 835 2.2.2.2 788 5.5.5.5 787 Seq# Checksum Link count 0x80000002 0x006BDA 2 0x80000002 0x0082A6 2 0x80000004 0x0063C3 5 Summary Net Link States (Area 5) Link ID ADV Router Age 10.10.12.0 1.1.1.1 835 10.10.12.0 2.2.2.2 787 ! lines omitted for brevity Seq# Checksum 0x80000001 0x00F522 0x80000001 0x00D73C R5# show ip ospf database router 5.5.5.5 OSPF Router with ID (5.5.5.5) (Process ID 5) Router Link States (Area 5) LS age: 796 Options: (No TOS-capability, DC) LS Type: Router Links Link State ID: 5.5.5.5 Advertising Router: 5.5.5.5 LS Seq Number: 80000004 Checksum: 0x63C3 Length: 84 Number of Links: 5 Link connected to: another Router (point-to-point) (Link ID) Neighboring Router ID: 2.2.2.2 (Link Data) Router Interface address: 10.10.25.5 Number of TOS metrics: 0 TOS 0 Metrics: 64 Link connected to: a Stub Network (Link ID) Network/subnet number: 10.10.25.0 (Link Data) Network Mask: 255.255.255.248 Number of TOS metrics: 0 TOS 0 Metrics: 64 Link connected to: another Router (point-to-point) (Link ID) Neighboring Router ID: 1.1.1.1 (Link Data) Router Interface address: 10.10.15.5 Number of TOS metrics: 0 TOS 0 Metrics: 64 Link connected to: a Stub Network From the Library of Alexey Evseenko 310 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide (Link ID) Network/subnet number: 10.10.15.0 (Link Data) Network Mask: 255.255.255.248 Number of TOS metrics: 0 TOS 0 Metrics: 64 Link connected to: a Stub Network (Link ID) Network/subnet number: 10.10.5.0 (Link Data) Network Mask: 255.255.255.224 Number of TOS metrics: 0 TOS 0 Metrics: 1 The first command, show ip ospf database, displays a summary of the LSAs known to R5. The output mainly consists of a single line per LSA, listed by LSA ID. The three highlighted lines of this output, in Example 8-2, highlight the RID of the three router (Type 1) LSAs, namely, 1.1.1.1 (R1), 2.2.2.2 (R2), and 5.5.5.5 (R5). The output of the show ip ospf database router 5.5.5.5 command displays the detailed information in R5’s Router LSA. Looking at the highlighted portions, you see three stub networks—three interfaces on which no DR has been elected—and the associated subnet numbers. The LSA also lists the neighbor IDs of two neighbors (1.1.1.1 and 2.2.2.2) and the interfaces on which these neighbors can be reached. Armed with the same kind of information in R1’s and R2’s Type 1 LSAs, a router has enough information to determine which routers connect, over which stub links, and then use the interface IP address configuration to figure out the interfaces that connect to the other routers. Figure 8-2 shows a diagram of area 5 that could be built just based on the detailed information held in the Router LSAs for R1, R2, and R5. Stub Subnet 10.10.5.0/27 neighbor 1.1.1.1 10.10.15.5 R5 5.5.5.5 10.10.15.0/29 Stub Subnet 10.10.25.0/29 neighbor 2.2.2.2 10.10.25.5 neighbor 5.5.5.5 10.10.15.1 1.1.1.1 R1 Stub Subnet 10.10.15.0/29 Stub Figure 8-2 Three Type 1 LSAs in Area 5 neighbor 5.5.5.5 10.10.25.2 2.2.2.2 R2 Stub Subnet 10.10.25.0/29 From the Library of Alexey Evseenko Chapter 8: The OSPF Link-State Database 311 Note that Figure 8-2 displays only information that could be learned from the Type 1 Router LSAs inside area 5. Each Type 1 Router LSA lists information about a router, but only the details related to a specific area. As a result, Figure 8-2 shows R1’s interface in area 5 but none of the interfaces in area 34 nor in area 0. To complete the explanation surrounding Figure 8-2, Example 8-3 lists R1’s Type 1 Router LSA for area 5. Example 8-3 R1’s Type 1 LSA in Area 5 R5# show ip ospf database router 1.1.1.1 OSPF Router with ID (5.5.5.5) (Process ID 5) Router Link States (Area 5) Routing Bit Set on this LSA LS age: 1306 Options: (No TOS-capability, DC) LS Type: Router Links Link State ID: 1.1.1.1 Advertising Router: 1.1.1.1 LS Seq Number: 80000002 Checksum: 0x6BDA Length: 48 Area Border Router Number of Links: 2 Link connected to: another Router (point-to-point) (Link ID) Neighboring Router ID: 5.5.5.5 (Link Data) Router Interface address: 10.10.15.1 Number of TOS metrics: 0 TOS 0 Metrics: 64 Link connected to: a Stub Network (Link ID) Network/subnet number: 10.10.15.0 (Link Data) Network Mask: 255.255.255.248 Number of TOS metrics: 0 TOS 0 Metrics: 64 Note Because OSPF uses the RID for many purposes inside different LSAs—for example, as the LSID of a Type 1 LSA—Cisco recommends setting the RID to a stable, predictable value. To do this, use the OSPF router-id value OSPF subcommand or define a loopback interface with an IP address. From the Library of Alexey Evseenko 312 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide LSA Type 2: Network LSA SPF requires that the LSDB model the topology with nodes (routers) and connections between nodes (links). In particular, each link must be between a pair of nodes. When a multiaccess data link exists—for example, a LAN—OSPF must somehow model that LAN so that the topology represents nodes and links between only a pair of nodes. To do so, OSPF uses the concept of a Type 2 Network LSA. OSPF routers actually choose whether to use a Type 2 LSA for a multiaccess network based on whether a designated router (DR) has or has not been elected on an interface. So, before discussing the details of the Type 2 Network LSA, a few more facts about the concept of a DR need to be discussed. Background on Designated Routers As discussed in Chapter 7’s section “OSPF Network Types,” the OSPF network type assigned to a router interface tells that router whether to attempt to elect a DR on that interface. Then, when a router has heard a Hello from at least one other router, the routers elect a DR and BDR. OSPF uses a DR in a particular subnet for two main purposes: Key Topic ■ To create and flood a Type 2 Network LSA for that subnet ■ To aid in the detailed process of database exchange over that subnet Routers elect a DR, and a backup DR (BDR), based on information in the OSPF Hello. The Hello message lists each router’s RID and a priority value. When no DR exists at the time, routers use the following election rules when neither a DR nor BDR yet exists: ■ Choose the router with the highest priority (default 1, max 255, set with the ip ospf priority value interface subcommand). ■ If tied on priority, choose the router with highest RID. ■ Choose a BDR, based on next-best priority, or if a tie, next-best (highest) RID. The preceding describes the election when no DR currently exists. However, the rules differ a bit when a DR and BDR already exist. After a DR and BDR are elected, no election is held until either the DR or BDR fails. If the DR fails, the BDR becomes the DR—regardless of whether a higher-priority router has joined the subnet—and a new election is held to choose a new BDR. If the BDR fails, a new election is held for the BDR, and the DR remains unchanged. On LANs, the choice of DR matters little from a design perspective, but it does matter from an operational perspective. Throughout this chapter, note the cases in which the output of show commands identifies the DR and its role. Now, back to the topic of Type 2 LSAs. Type 2 Network LSA Concepts OSPF uses the concept of a Type 2 LSA to model a multiaccess network—a network with more than two routers connected to the same subnet—while still conforming to the From the Library of Alexey Evseenko Chapter 8: The OSPF Link-State Database 313 “a link connects only two nodes” rule for the topology. For example, consider the network in Figure 8-3 (also shown as Figure 7-4 in the previous chapter). As seen in Chapter 7, “Fundamental OSPF Concepts,” all four routers form neighbor relationships inside area 0, with the DR and BDR becoming fully adjacent with the other routers. Area 0 10.1.1.1/24 Fa0/1 R1 10.5.5.1/28 Fa0/0 10.2.2.2/25 Fa0/1 R2 10.5.5.2/28 Fa0/0 10.5.5.3/28 Fa0/0 R3 10.3.3.3/26 Fa0/1 10.5.5.4/28 Fa0/0 R4 10.4.4.4/27 Fa0/1 Area 3 Area 4 Figure 8-3 Small Network, Four Routers, on a LAN OSPF cannot represent the idea of four routers connected through a single subnet by using a link connected to all four routers. Instead, OSPF defines the Type 2 Network LSA, used as a pseudonode. Each router’s Type 1 Router LSA lists a connection to this pseudonode, often called a transit network, which is then modeled by a Type 2 Network LSA. The Type 2 Network LSA itself then lists references back to each Type 1 Router LSA connected to it—four in this example, as shown in Figure 8-4. The elected DR in a subnet creates the Type 2 LSA for that subnet. The DR identifies the LSA by assigning an LSID of the DR’s interface IP address in that subnet. The Type 2 LSA also lists the DR’s RID as the router advertising the LSA. Type 2 LSA show Commands To see these concepts in the form of OSPF show commands, next consider area 34 back in Figure 8-1. This design shows that R3 and R4 connect to the same LAN, which means that a DR will be elected. (OSPF elects a DR on LANs when at least two routers pass the neighbor requirements and can become neighbors.) If both R3 and R4 default to use priority 1, R4 wins the election, because of its 4.4.4.4 RID (versus R3’s 3.3.3.3 RID). So, R4 creates the Type 2 LSA for that subnet and floods the LSA. Figure 8-5 depicts the area 34 topology, and Example 8-4 shows the related LSDB entries. From the Library of Alexey Evseenko 314 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide R1 Type 1 R2 Type 1 Type 2 10.5.5.0/28 Pseudonode R3 Type 1 R4 Type 1 Figure 8-4 OSPF Topology When Using a Type 2 Network LSA R3 transit 10.10.34.4 3.3.3.3 Type 1 1.1.1.1 Type 1 R1 10.10.34.4 Type 2 to 3.3.3.3 Type 1 to 4.4.4.4 Type 1 transit 10.10.34.4 4.4.4.4 Type 1 2.2.2.2 Type 1 R2 R4 Figure 8-5 Area 34 Topology with Four Type 1 LSAs and One Type 2 LSA From the Library of Alexey Evseenko Chapter 8: The OSPF Link-State Database 315 Example 8-4 Area 34 LSAs for R3, Network 10.10.34.0 /24 R3# show ip ospf database OSPF Router with ID (3.3.3.3) (Process ID 3) Router Link States (Area 34) Link ID 1.1.1.1 2.2.2.2 3.3.3.3 4.4.4.4 ADV Router 1.1.1.1 2.2.2.2 3.3.3.3 4.4.4.4 Age 1061 1067 1066 1067 Seq# Checksum Link count 0x80000002 0x00EA7A 4 0x80000001 0x0061D2 4 0x80000003 0x00E2E8 5 0x80000003 0x007D3F 5 Net Link States (Area 34) Link ID 10.10.34.4 ADV Router 4.4.4.4 Age 1104 Seq# Checksum 0x80000001 0x00AB28 Summary Net Link States (Area 34) Link ID ADV Router Age 10.10.5.0 1.1.1.1 1023 10.10.5.0 2.2.2.2 1022 ! lines omitted for brevity R3# show ip ospf database router 4.4.4.4 Seq# Checksum 0x80000001 0x000BF2 0x80000001 0x00EC0D OSPF Router with ID (3.3.3.3) (Process ID 3) Router Link States (Area 34) LS age: 1078 Options: (No TOS-capability, DC) LS Type: Router Links Link State ID: 4.4.4.4 Advertising Router: 4.4.4.4 LS Seq Number: 80000003 Checksum: 0x7D3F Length: 84 Number of Links: 5 Link connected to: another Router (point-to-point) (Link ID) Neighboring Router ID: 2.2.2.2 (Link Data) Router Interface address: 10.10.24.4 Number of TOS metrics: 0 TOS 0 Metrics: 64 From the Library of Alexey Evseenko 316 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Link connected to: a Stub Network (Link ID) Network/subnet number: 10.10.24.0 (Link Data) Network Mask: 255.255.255.248 Number of TOS metrics: 0 TOS 0 Metrics: 64 Link connected to: another Router (point-to-point) (Link ID) Neighboring Router ID: 1.1.1.1 (Link Data) Router Interface address: 10.10.14.4 Number of TOS metrics: 0 TOS 0 Metrics: 64 Link connected to: a Stub Network (Link ID) Network/subnet number: 10.10.14.0 (Link Data) Network Mask: 255.255.255.248 Number of TOS metrics: 0 TOS 0 Metrics: 64 Link connected to: a Transit Network (Link ID) Designated Router address: 10.10.34.4 (Link Data) Router Interface address: 10.10.34.4 Number of TOS metrics: 0 TOS 0 Metrics: 1 R3# show ip ospf database network 10.10.34.4 OSPF Router with ID (3.3.3.3) (Process ID 3) Net Link States (Area 34) Routing Bit Set on this LSA LS age: 1161 Options: (No TOS-capability, DC) LS Type: Network Links Link State ID: 10.10.34.4 (address of Designated Router) Advertising Router: 4.4.4.4 LS Seq Number: 80000001 Checksum: 0xAB28 Length: 32 Network Mask: /24 Attached Router: 4.4.4.4 Attached Router: 3.3.3.3 The show ip ospf database command lists a single line for each LSA. Note that the (highlighted) heading for Network LSAs lists one entry, with LSID 10.10.34.4, which is R4’s Fa0/0 IP address. The LSID for Type 2 Network LSAs is the interface IP address of the DR that creates the LSA. From the Library of Alexey Evseenko Chapter 8: The OSPF Link-State Database 317 The show ip ospf database router 4.4.4.4 command shows the new style of entry for the reference to a transit network, which again refers to a connection to a Type 2 LSA. The output lists an LSID of 10.10.34.4, which again is the LSID of the Type 2 LSA. Finally, the show ip ospf database network 10.10.34.4 command shows the details of the Type 2 LSA, based on its LSID of 10.10.34.4. Near the bottom, the output lists the attached routers, based on RID. The SPF process can then use the cross-referenced information, as shown in Figure 8-5, to determine which routers connect to this transit network (pseudonode). The SPF process has information in both the Type 1 LSAs that refer to the transit network link to a Type 2 LSA, and the Type 2 LSA has a list of RIDs of Type 1 LSAs that connect to the Type 2 LSA, making the process of modeling the network possible. OSPF can model all the topology inside a single area using Type 1 and 2 LSAs. When a router uses its SPF process to build a model of the topology, it can then calculate the best (lowest-cost) route for each subnet in the area. The next topic completes the LSA picture for internal OSPF routes by looking at Type 3 LSAs, which are used to model interarea routes. LSA Type 3: Summary LSA OSPF areas exist in part so that engineers can reduce the consumption of memory and compute resources in routers. Instead of having all routers, regardless of area, know all Type 1 and Type 2 LSAs inside an OSPF domain, ABRs do not forward Type 1 and Type 2 LSAs from one area into another area, and vice versa. This convention results in smaller per-area LSDBs, saving memory and reducing complexity for each run of the SPF algorithm, which saves CPU resources and improves convergence time. However, even though ABRs do not flood Type 1 and Type 2 LSAs into other areas, routers still need to learn about subnets in other areas. OSPF advertises these interarea routes using the Type 3 Summary LSA. ABRs generate a Type 3 LSA for each subnet in one area, and advertise each Type 3 LSA into the other areas. For example, if subnet A exists in area 3, the routers in area 3 learn of that subnet as part of Type 1 and Type 2 LSAs. However, an ABR connected to area 3 will not forward the Type 1 and Type 2 LSAs into other areas, instead creating a Type 3 LSA for each subnet (including subnet A). The routers inside the other areas can then calculate a route for the subnets (like subnet A) that exist inside another area. Type 3 Summary LSAs do not contain all the detailed topology information, so in comparison to Types 1 and 2, these LSAs summarize the information—hence the name Summary LSA. Conceptually, a Type 3 LSA appears to be another subnet connected to the ABR that created and advertised the Type 3 LSA. The routers inside that area can calculate their best route to reach the ABR, which gives the router a good loop-free route to reach the subnet listed in a Type 3 LSA. An example can certainly help in this case. First, consider the comparison shown in the top and bottom of Figure 8-6. The top depicts the topology shown back in Figure 8-1 if that design had used a single area. In that case, every router would have a copy of each From the Library of Alexey Evseenko 318 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Type 1 LSA (shown as a router name in the figure) and each Type 2 LSA (abbreviated as T2 in the figure). The bottom of Figure 8-6 shows the area 5 topology, when holding to the three-area design shown in Figure 8-1. SW1 T2 R3 R1 T2 T2 T2 T2 T2 T2 R4 R2 T2 SW2 R5 Type 3 LSAs R1 R5 R2 Figure 8-6 Comparing a Single-Area LSDB to a Three-Area LSDB The ABR creates and floods each Type 3 LSA into the next area. The ABR assigns an LSID of the subnet address being advertised. It also adds its own RID to the LSA as well, so that routers know which ABR advertised the route. It also includes the subnet mask. The correlation between the advertising router’s RID and the LSID (subnet address) allows the OSPF processes to create the part of the topology as shown with Type 3 LSAs at the bottom of Figure 8-6. Example 8-5 focuses on the Type 3 LSAs in area 34 of the network shown in Figure 8-1. Ten subnets exist outside area 34. As ABRs, both R1 and R2 create and flood a Type 3 LSA for each of these ten subnets, resulting in 20 Type 3 LSAs listed in the output of the show ip ospf database command inside area 34. Then, the example focuses specifically on the Type 3 LSA for subnet 10.10.99.0/24. From the Library of Alexey Evseenko Example 8-5 Type 3 LSAs in Area 34 R3# show ip ospf database Chapter 8: The OSPF Link-State Database 319 OSPF Router with ID (3.3.3.3) (Process ID 3) Router Link States (Area 34) Link ID 1.1.1.1 2.2.2.2 3.3.3.3 4.4.4.4 ADV Router Age 1.1.1.1 943 2.2.2.2 991 3.3.3.3 966 4.4.4.4 977 Seq# Checksum Link count 0x80000003 0x00E87B 4 0x80000002 0x005FD3 4 0x80000004 0x00E0E9 5 0x80000004 0x007B40 5 Net Link States (Area 34) Link ID ADV Router Age 10.10.34.4 4.4.4.4 977 Seq# Checksum 0x80000002 0x00A929 Summary Net Link States (Area 34) Link ID ADV Router Age 10.10.5.0 1.1.1.1 943 10.10.5.0 2.2.2.2 991 10.10.12.0 1.1.1.1 943 10.10.12.0 2.2.2.2 991 10.10.15.0 1.1.1.1 943 10.10.15.0 2.2.2.2 993 10.10.17.0 1.1.1.1 946 10.10.17.0 2.2.2.2 993 10.10.18.0 1.1.1.1 946 10.10.18.0 2.2.2.2 994 10.10.25.0 1.1.1.1 946 10.10.25.0 2.2.2.2 993 10.10.27.0 1.1.1.1 946 10.10.27.0 2.2.2.2 993 10.10.28.0 1.1.1.1 947 10.10.28.0 2.2.2.2 993 10.10.98.0 1.1.1.1 946 10.10.98.0 2.2.2.2 993 10.10.99.0 1.1.1.1 946 10.10.99.0 2.2.2.2 993 Seq# Checksum 0x80000002 0x0009F3 0x80000002 0x00EA0E 0x80000002 0x00F323 0x80000002 0x00D53D 0x80000002 0x0021BA 0x80000003 0x008313 0x80000002 0x00BC55 0x80000002 0x00A864 0x80000002 0x00B15F 0x80000002 0x009D6E 0x80000002 0x00355C 0x80000002 0x009439 0x80000002 0x0058AE 0x80000002 0x0030D3 0x80000002 0x004DB8 0x80000002 0x0025DD 0x80000002 0x004877 0x80000002 0x002A91 0x80000002 0x003D81 0x80000002 0x001F9B R3# show ip ospf database summary 10.10.99.0 From the Library of Alexey Evseenko 320 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide OSPF Router with ID (3.3.3.3) (Process ID 3) Summary Net Link States (Area 34) Routing Bit Set on this LSA LS age: 1062 Options: (No TOS-capability, DC, Upward) LS Type: Summary Links(Network) Link State ID: 10.10.99.0 (summary Network Number) Advertising Router: 1.1.1.1 LS Seq Number: 80000002 Checksum: 0x3D81 Length: 28 Network Mask: /24 TOS: 0 Metric: 2 Routing Bit Set on this LSA LS age: 1109 Options: (No TOS-capability, DC, Upward) LS Type: Summary Links(Network) Link State ID: 10.10.99.0 (summary Network Number) Advertising Router: 2.2.2.2 LS Seq Number: 80000002 Checksum: 0x1F9B Length: 28 Network Mask: /24 TOS: 0 Metric: 2 Note The Type 3 Summary LSA is not used for the purpose of route summarization. OSPF does support route summarization, and Type 3 LSAs might indeed advertise such a summary, but the Type 3 LSA does not inherently represent a summary route. The term Summary reflects the idea that the information is sparse compared to the detail inside Type 1 and Type 2 LSAs. The upcoming section “Calculating the Cost of Interarea Routes” discusses how a router determines the available routes to reach subnets listed in a Type 3 LSA and how a router chooses which route is best. Limiting the Number of LSAs By default, Cisco IOS does not limit the number of LSAs that a router can learn. However, it might be useful to protect a router from learning too many LSAs to protect router memory. Also, with a large number of LSAs, the router might be unable to process the LSDB with SPF well enough to converge in a reasonable amount of time. From the Library of Alexey Evseenko Chapter 8: The OSPF Link-State Database 321 The maximum number of LSAs learned from other routers can be limited by a router using the max-lsa number OSPF subcommand. When configured, if the router learns more than the configured number of LSAs from other routers (ignoring those created by the router itself), the router reacts. The first reaction is to issue log messages. The router ignores the event for a time period, after which the router repeats the warning message. This ignore-and-wait strategy can proceed through several iterations, ending when the router closes all neighborships, discards its LSDB, and then starts adding neighbors again. (The ignore time, and the number of times to ignore the event, can be configured with the max-lsa command.) Summary of Internal LSA Types OSPF uses Type 1, 2, and 3 LSAs to calculate the best routes for all routes inside an OSPF routing domain. In a later chapter, we will explore Types 4, 5, and 7, which OSPF uses to calculate routes for external routes—routes redistributed into OSPF. Table 8-3 summarizes some of the key points regarding OSPF Type 1, 2, and 3 LSAs. In particular for the ROUTE exam, the ability to sift through the output of various show ip ospf database commands can be important. Knowing what the OSPF LSID represents can help you interpret the output, and knowing the keywords used with the show ip ospf database lsa-type lsid commands can also be very useful. Table 8-3 summarizes these details. Table 8-3 Facts About LSA Types 1, 2, and 3 Key Topic LSA Type LSA Type This Type Display Using show (Number) (Name) Represents ip ospf database keyword... 1 Router A router router 2 Network A subnet in network which a DR exists 3 Summary A subnet in summary another area LSID Is Created by Equal to RID of router Each router creates its own DR’s IP The DR in that address in subnet the subnet Subnet number An ABR The Database Exchange Process Every router in an area, when OSPF stabilizes after topology changes occur, should have an identical LSDB for that area. Internal routers (routers inside a single area) have only that area’s LSAs, but an ABR’s LSDB will contain LSAs for each area to which it connects. The ABR does, however, know which LSAs exist in each area. OSPF routers flood both the LSAs they create, and the LSAs they learn from their neighbors, until all routers in the area have a copy of each of the most recent LSAs for that From the Library of Alexey Evseenko 322 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide area. To manage and control this process, OSPF defines several messages, processes, and neighbor states that indicate the progress when flooding LSAs to each neighbor. This section begins by listing reference information for the OSPF messages and neighbor states. Next, the text describes the flooding process between two neighbors when a DR does not exist, followed by a description of the similar process used when a DR does exist. This section ends with a few items related to how routers avoid looping the LSA advertisements and how they periodically reflood the information. OSPF Message and Neighbor State Reference For reference, Table 8-4 lists the OSPF message types that will be mentioned in the next few pages. Additionally, Table 8-5 lists the various neighbor states. Although useful for study, when you are first learning this topic, feel free to skip these tables for now. Table 8-4 OSPF Message Types and Functions Key Topic Message Name/Number Description Hello Used to discover neighbors and supply information used to confirm that two routers should be allowed to become neighbors, to bring a neighbor relationship to a 2-Way state, and to monitor a neighbor’s responsiveness in case it fails Database Description (DD or DBD) Used to exchange brief versions of each LSA, typically on initial topology exchange, so that a router knows a list of that neighbor’s known LSAs Link-State Request (LSR) A packet that lists the LSIDs of LSAs that the sender of the LSR would like the receiver of the LSR to supply during database exchange Link-State Update (LSU) A packet that contains fully detailed LSAs, typically sent in response to an LSR message Link-State Acknowledgment (LSAck) Sent to confirm receipt of an LSU message Table 8-5 OSPF Neighbor State Reference Key Topic State Meaning Down No Hellos have been received from this neighbor for more than the Dead interval. Attempt Used when the neighbor is defined with the neighbor command, after sending a Hello, but before receiving a Hello from that neighbor. Init A Hello has been received from the neighbor, but it did not have the local router’s RID in it or list parameters that do not pass the neighbor verification checks. This is a permanent state when Hello parameters do not match. From the Library of Alexey Evseenko Chapter 8: The OSPF Link-State Database 323 State Meaning 2-Way A Hello has been received from the neighbor; it has the router’s RID in it, and all neighbor verification checks passed. ExStart Currently negotiating the DD sequence numbers and master/slave logic used for DD packets. Exchange Finished negotiating the DD process particulars, and currently exchanging DD packets. Loading All DD packets are exchanged, and the routers are currently sending LSR, LSU, and LSAck packets to exchange full LSAs. Full Neighbors are fully adjacent, meaning that they believe that their LSDBs for that area are identical. Routing table (re)calculations can begin. Exchange Without a Designated Router As discussed in Chapter 7, an OSPF interface’s network type tells a router whether to attempt to elect a DR on that interface. The most common case for which routers do not elect a DR occur on point-to-point topologies, such as true point-to-point serial links and point-to-point subinterfaces. This section examines the database exchange process on such interfaces, in preparation for the slightly more complex process when using a DR on an OSPF broadcast network type, like a LAN. Each OSPF neighborship begins by exchanging Hellos until the neighbors (hopefully) reach the 2-Way state. During these early stages, the routers discover each other by sending multicast Hellos and then check each other’s parameters to make sure that all required items match (as listed in Chapter 7’s Table 7-5). Figure 8-7 shows the details, with the various neighbor states listed on the outside of the figure and the messages listed in the middle. Neighbor State Down Neighbor State Down RID 1.1.1.1 Init R1 (R1 to R2 link comes up...) Hello, Seen [null], RID 1.1.1.1 RID 2.2.2.2 Init R2 2-Way Hello, Seen [1.1.1.1], RID 2.2.2.2 Hello, Seen [1.1.1.1, 2.2.2.2], RID 1.1.1.1 2-Way Figure 8-7 Neighbor Initialization—Early Stages Figure 8-7 shows an example that begins with a failed neighborship, so the neighborship is in a down state. When a router tries to reestablish the neighborship, each router sends a multicast Hello and moves to an INIT state. After a router has both received a Hello and verified that all the required parameters agree, the router lists the other router’s RID in the From the Library of Alexey Evseenko 324 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Hello as being seen, as shown in the bottom two Hello messages in the figure. When a router receives a Hello that lists its own RID as having been seen by the other router, the router can transition to the 2-Way state. When a router has reached the 2-Way state with a neighbor, as shown at the bottom of Figure 8-7, the router then decides whether it should exchange its LSDB entries. When no DR exists, the answer is always “yes.” Each router next follows this general process: Step 1. Discover the LSAs known to the neighbor but unknown to me. Step 2. Discover the LSAs known by both routers, but the neighbor’s LSA is more up to date. Step 3. Ask the neighbor for a copy of all the LSAs identified in the first two steps. Figure 8-8 details the messages and neighbor states used to exchange the LSAs between two neighbors. As with Figure 8-7, Figure 8-8 shows neighbor states on the outer edges of the flows (refer to Table 8-5 for reference). Routers display these neighbor states (with variants of the show ip ospf neighbor command), so a particular state can be useful in determining how far two neighbors have gotten in the database exchange process. The more important neighbor states will be mentioned throughout the chapter. RID 1.1.1.1 RID 2.2.2.2 R1 R2 ExStart Exchange DD (LSA Headers) DD (LSA Headers) DD (LSA Headers) ExStart Exchange Loading LSR, LSU, LSAck (Full LSAs) Loading Full Full Figure 8-8 Overview of the Database Exchange Process Between Two Neighbors The inner portions of Figure 8-8 represent the OSPF message flows, with Table 8-2, earlier in the chapter, listing the messages for reference. The next several pages examine the process shown in Figure 8-8 in more detail. Discovering a Description of the Neighbor’s LSDB After a router has decided to move forward from a 2-Way state and exchange its LSDB with a neighbor, the routers use the sequence shown in Figure 8-8. The next step in that process requires both routers to tell each other the LSIDs of all their known LSAs in that area. The primary goal is for each neighbor to realize which LSAs it does not know, so it From the Library of Alexey Evseenko Chapter 8: The OSPF Link-State Database 325 can then ask for those full LSAs to be sent. To learn the list of LSAs known by a neighbor, the neighboring routers follow these steps: Step 1. Multicast database description packets (abbreviated as both DD and DBD, depending on the reference) to 224.0.0.5, which is the all-SPF-routers multicast address. Step 2. When sending the first DD message, transition to the ExStart state until one router, the one with the higher RID, becomes the master in a master/slave relationship. Step 3. After electing a master, transition the neighbor to the Exchange state. Step 4. Continue multicasting DD messages to each other until both routers have the same shared view of the LSIDs known collectively by both routers, in that area. Note that the DD messages themselves do not list the entire LSAs, but rather just the LSA headers. These headers include the LSIDs of the LSAs and the LSA sequence number. The LS sequence number for an LSA begins at value 0x80000001 (hex) when initially created. The router creating the LSA increments the sequence number, and refloods the LSA, whenever the LSA changes. For example, if an interface moves from the up to down state, that router changes its Type 1 LSA to list that interface state as down, increments the LSA sequence number, and refloods the LSA. The master router for each exchange controls the flow of DD messages, with the slave responding to the master’s DD messages. The master keeps sending DD messages until it lists all its known LSIDs in that area. The slave responds by placing LSA headers in its DD messages. Some of those LSA headers simply repeat what the slave heard from the master, for the purpose of acknowledging to the master that the slave learned that LSA header from the master. Additionally, the slave includes the LSA headers for any LSAs that the master did not list. This exchange of DD messages ends with each router knowing a list of LSAs that it does not have in its LSDB, but the other router does have those LSAs. Additionally, each router also ends this process with a list of LSAs that the local router already knows, but for which the other router has a more recent copy (based on sequence numbers). Exchanging the LSAs When the two neighbors realize that they have a shared view of the list of LSIDs, they transition to the Loading state and start exchanging the full LSAs—but only those that they do not yet know about or those that have changed. For example, when the two routers in Figure 8-8 first become neighbors, neither router will have a copy of the Type 1 LSA for the other router. So, R1 will request that R2 send its LSA with LSID 2.2.2.2. R2 will send its Type 1 LSA, and R1 will acknowledge receipt. The mechanics work like this: Step 1. Transition the neighbor state to Loading. Step 2. For any missing LSAs, send a Link-State Request (LSR) message, listing the LSID of the requested LSA. From the Library of Alexey Evseenko 326 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Step 3. Step 4. Step 5. Respond to any LSR messages with a Link-State Update (LSU), listing one or more LSAs in each message. Acknowledge receipt by either sending a Link-State Acknowledgment (LSAck) message (called explicit acknowledgment) or by sending the same LSA that was received back to the other router in an LSU message (implicit acknowledgment). When all LSAs have been sent, received, and acknowledged, transition the neighborship to the FULL state (fully adjacent). Note Because this section examines the case without a DR, all these messages flow as multicasts to 224.0.0.5, the all SPF routers multicast address, unless the neighbors have been defined with an OSPF neighbor command. By the end of this process, both routers should have an identical LSDB for the area to which the link has been assigned. At that point, the two routers can run the SPF algorithm to choose the currently best routes for each subnet. Exchange with a Designated Router Database exchange with a DR differs slightly than database exchange when no DR exists. The majority of the process is similar, with the same messages, meanings, and neighbor states. The big difference is the overriding choice of with whom each router chooses to perform database exchange. Non-DR routers do not exchange their databases directly with all neighbors on a subnet. Instead, they exchange their database with the DR. Then, the DR exchanges any new/ changed LSAs with the rest of the OSPF routers in the subnet. The concept actually follows along with the idea of a Type 2 LSA as seen earlier in Figure 8-4. Figure 8-9 represents four Type 1 LSAs, for four real routers on the same LAN, plus a single Type 2 LSA that represents the multiaccess subnet. The DR created the Type 2 LSA as part of its role in life. Figure 8-9 shows two conceptual steps for database exchange. The non-DR router (R3) first exchanges its database with the pseudonode, and then the Type 2 pseudonode exchanges its database with the other routers. However, the pseudonode is a concept, not a router. To make the process depicted in Figure 8-9 work, the DR takes on the role of the Type 2 pseudonode. The messages differ slightly as well, as follows: Key Topic ■ The non-DR performs database exchange with the same messages, as shown in Figure 8-9, but sends these messages to the 224.0.0.6 all-DR-routers multicast address. ■ The DR performs database exchange with the same messages but sends the messages to the 224.0.0.5 all-SPF-routers multicast address. From the Library of Alexey Evseenko Chapter 8: The OSPF Link-State Database 327 R1 Type 1 2 to 224.0.0.5 (All SPF) 2 R2 Type 1 1 to 224.0.0.6 (All DR) Type 2 10.5.5.0/28 2 to 224.0.0.5 (All SPF) R3 Type 1 R4 Type 1 Figure 8-9 Conceptual View—Exchanging the Database with a Pseudonode Consider these two conventions one at a time. First, the messages sent to 224.0.0.6 are processed by the DR and the BDR only. The DR actively participates, replying to the messages, with the BDR acting as a silent bystander. In effect, this allows the non-DR router to exchange its database directly with the DR and BDR, but with none of the other routers in the subnet. Next, consider the multicast messages from the DR to the 224.0.0.5 all-SPF-router multicast address. All OSPF routers process these messages, so the rest of the routers—the DROthers to use the Cisco IOS term—also learn the newly exchanged LSAs. This process completes the second step shown in the conceptual Figure 8-9, where the DR, acting like the pseudonode, floods the LSAs to the other OSPF routers in the subnet. The process occurs in the background and can be generally ignored. However, for operating an OSPF network, an important distinction must be made. With a DR in existence, a DROther router performs the database exchange process (as seen in Figure 8-9) with the DR/BDR only and not any other DROther routers in the subnet. For example, in Figure 8-9, R1 acts as DR, R2 acts as BDR, and R3/R4 act as DROther routers. Because the underlying process does not make R3 and R4 perform database exchange with each other, the routers do not reach the FULL neighbor state, remaining in a 2-Way state. Example 8-6 shows the resulting output for the LAN shown in Figure 8-9, with four routers. The output, taken from DROther R3, shows a 2-Way state with R4, the other DROther. It also shows on interface Fa0/0 that its own priority is 2. This output also shows a neighbor count (all neighbors) of 3 and an adjacent neighbor count (all fully adjacent neighbors) of 2, again because the neighborship between DROthers R3 and R4 is not a full adjacency. From the Library of Alexey Evseenko 328 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Example 8-6 Demonstrating OSPF FULL and 2-Way Adjacencies R3# show ip ospf interface fa0/0 FastEthernet0/0 is up, line protocol is up Internet Address 172.16.1.3/24, Area 0 Process ID 75, Router ID 3.3.3.3, Network Type BROADCAST, Cost: 1 Transmit Delay is 1 sec, State DROTHER, Priority 2 Designated Router (ID) 1.1.1.1, Interface address 172.16.1.1 Backup Designated router (ID) 2.2.2.2, Interface address 172.16.1.2 Timer intervals configured, Hello 10, Dead 40, Wait 40, Retransmit 5 oob-resync timeout 40 Hello due in 00:00:02 Supports Link-local Signaling (LLS) Cisco NSF helper support enabled IETF NSF helper support enabled Index 1/1, flood queue length 0 Next 0x0(0)/0x0(0) Last flood scan length is 0, maximum is 4 Last flood scan time is 0 msec, maximum is 0 msec Neighbor Count is 3, Adjacent neighbor count is 2 Adjacent with neighbor 1.1.1.1 (Designated Router) Adjacent with neighbor 2.2.2.2 (Backup Designated Router) Suppress hello for 0 neighbor(s) R3# show ip ospf neighbor fa0/0 Neighbor ID 1.1.1.1 2.2.2.2 44.44.44.44 Pri State 4 FULL/DR 3 FULL/BDR 1 2WAY/DROTHER Dead Time 00:00:37 00:00:37 00:00:36 Address 172.16.1.1 172.16.1.2 172.16.1.4 Interface FastEthernet0/0 FastEthernet0/0 FastEthernet0/0 Flooding Throughout the Area So far in this section, the database exchange process has focused on exchanging the database between neighbors. However, LSAs need to be flooded throughout an area. To do so, when a router learns new LSAs from one neighbor, that router then knows that its other neighbors in that same area might not know of that LSA. Similarly, when an LSA changes—for example, when an interface changes state—a router might learn the same old LSA but with a new sequence number, and again need to flood the changed LSA to other neighbors in that area. Figure 8-10 shows a basic example of the process. In this case, R2, R3, and R4 have established neighbor relationships, with four LSAs in their LSDB in this area. R1 is again the new router added to the internetwork. From the Library of Alexey Evseenko Chapter 8: The OSPF Link-State Database 329 Area 1 R1 R2 LSDB - Before R2 Type 1 R3 Type 1 R4 Type 1 Subnet 1 Type 2 R3 R4 Figure 8-10 Flooding Throughout an Area First, consider what happens as the new R1-R2 neighborship comes up and goes through database exchange. When R1 loads and the link comes up, R1 and R2 reach a full state and have a shared view of the area 1 LSDB. R2 has learned all R1’s new LSAs (should only be R1’s Type 1 Router LSA), and R1 has learned all the area 1 LSAs known to R2, including the Type 1 LSAs for R3 and R4. Next, think about the LSDBs of R3 and R4 at this point. The database exchange between R1-R2 did not inform R3 or R4 about any of the new LSAs known by R1. So, R2, when it learns of R1’s Type 1 LSA, sends DD packets to the DR on the R2/R3/R4 LAN. LSR/LSU packets follow, resulting in R3 and R4 learning about the new LSA for R1. If more routers existed in area 1, the flooding process would continue throughout the entire area, until all routers know of the best (highest sequence number) copy of each LSA. The flooding process prevents the looping of LSAs as a side effect of the database exchange process. Neighbors use DD messages to learn the LSA headers known by the neighbor, and then only request the LSAs known by the neighbor but not known by the local router. By requesting only unknown LSAs or new versions of old LSAs, routers prevent the LSA advertisements from looping. Periodic Flooding Although OSPF does not send routing updates on a periodic interval, as do distance vector protocols, OSPF does reflood each LSA every 30 minutes based on each LSA’s age variable. The router that creates the LSA sets this age to 0 (seconds). Each router then From the Library of Alexey Evseenko 330 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide increments the age of its copy of each LSA over time. If 30 minutes pass with no changes to an LSA—meaning that no other reason existed in that 30 minutes to cause a reflooding of the LSA—the owning router increments the sequence number, resets the timer to 0, and refloods the LSA. Because the owning router increments the sequence number and resets the LSAge every 1800 seconds (30 minutes), the output of various show ip ospf database commands should also show an age of less than 1800 seconds. For example, referring back to Example 8-5, the Type 1 LSA for R1 (RID 1.1.1.1) shows an age of 943 seconds and a sequence number of 0x80000003. Over time, the sequence number should increment once every 30 minutes, with the LSAge cycle upward toward 1800 and then back to 0 when the LSA is reflooded. Note also that when a router realizes it needs to flush an LSA from the LSDB for an area, it actually sets the age of the LSA to the MaxAge setting (3600) and refloods the LSA. All the other routers receive the LSA, see that the age is already at the maximum, and cause those routers to also remove the LSA from their LSDBs. Choosing the Best OSPF Routes All this effort to define LSA types, create areas, and fully flood the LSAs has one goal in mind: to allow all routers in that area to calculate the best, loop-free routes for all known subnets. Although the database exchange process might seem laborious, the process by which SPF calculates the best routes requires a little less thought, at least to the level required for the CCNP ROUTE exam. In fact, the choice of the best route for a given subnet, and calculated by a particular router, can be summarized as follows: Key Topic ■ Analyze the LSDB to find all possible routes to reach the subnet. ■ For each possible route, add the OSPF interface cost for all outgoing interfaces in that route. ■ Pick the route with the lowest total cost. For humans, if you build a network diagram and note the OSPF cost for each interface (as shown with show ip ospf interface), you can easily add up the costs for each router’s possible routes to each subnet and tell which route OSPF will choose. The routers must use a more complex SPF algorithm to derive a mathematical model of the topology based on the LSAs. This section examines both the simpler human view of metric calculation and folds in some of the basics of what SPF must do on a router to calculate the best routes. It also goes through the options for tuning the metric calculation to influence the choice of routes. OSPF Metric Calculation for Internal OSPF Routes The process of calculating the cost from a router to each subnet might be intuitive to most people. However, spending a few minutes considering the details is worthwhile, in part to link the concepts with the LSAs, and to be better prepared for questions on the From the Library of Alexey Evseenko Chapter 8: The OSPF Link-State Database 331 ROUTE exam. This section breaks the discussion into four sections: intra-area routes, interarea routes, a short discussion about cases when both intra-area and interarea routes exist for the same subnet, and an explanation of SPF calculations. Calculating the Cost of Intra-Area Routes When a router analyzes the LSDB to calculate the best route to each subnet, it does the following: Key Topic Step 1. Step 2. Finds all subnets inside the area, based on the stub interfaces listed in the Type 1 LSAs and based on any Type 2 Network LSAs Runs SPF to find all possible paths through the area’s topology, from itself to each subnet Step 3. Calculates the OSPF interface costs for all outgoing interfaces in each route, picking the lowest-total-cost route for each subnet as the best route For example, Figure 8-11 shows the routers and links inside area 34, as a subset of the internetwork also shown in Figure 8-1. Figure 8-11 shows the interface numbers and OSPF costs. Subnet 10.10.34.0/24 13.3 Fa0/0 S0/0/0.1 Cost 647 Cost 10 .3 R3 S0/0/0.2 Cost 647 Fa0/0 Cost 10 .4 14S.04/0/0.1 Cost 647 R4 S0/0/0.2 Cost 647 Cost 647 S0/0/0.3 Cost 647 S0/0/0.4 R1 Cost 647 S0/0/0.3 Cost 647 S0/0/0.4 R2 Figure 8-11 Area 34 Portion of Figure 8-1 Following the basic three-step process, at Step 1, R1 can determine that subnet 10.10.34.0/24 exists in area 34 because of the Type 2 LSA created by the DR in that subnet. For Step 2, R1 can then run SPF and determine four possible routes, two of which are clearly more reasonable to humans: R1-R3 and R1-R4. (The two other possible routes, R1-R3-R2-R4 and R1-R4-R2-R3, are possible and would be considered by OSPF but would clearly be higher cost.) For Step 3, R1 does the simple math of adding the costs of the outgoing interfaces in each route, as follows: ■ R1-R3: Add R1’s S0/0/0.3 cost (647) and R3’s Fa0/0 cost (10), total 657 ■ R1-R4: Add R1’s S0/0/0.4 cost (647) and R4’s Fa0/0 cost (10), total 657 The metrics tie, so with a default setting of maximum-paths 4, R1 adds both routes to its routing table. Specifically, the routes list the metric of 657 and the next-hop IP address From the Library of Alexey Evseenko 332 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide on the other end of the respective links: 10.10.13.3 (R3’s S0/0/0.1) and 10.10.14.4 (R4’s S0/0/0.1). Note that OSPF supports equal-cost load balancing, but it does not support unequal-cost load balancing. The maximum-paths OSPF subcommand can be set as low as 1, with the maximum being dependent on router platform and Cisco IOS version. Modern Cisco IOS versions typically support 16 or 32 concurrent routes to one destination (maximum). Calculating the Cost of Interarea Routes From a human perspective, the cost for interarea routes can be calculated just like for intra-area routes if we have the full network diagram, subnet addresses, and OSPF interface costs. To do so, just find all possible routes from a router to the destination subnet, add up the costs of the outgoing interfaces, and choose the router with the lowest total cost. However, OSPF routers cannot do the equivalent for interarea routes, because routers internal to one area do not have topological data—LSA Types 1 and 2—for other areas. Instead, ABRs create and flood Type 3 Summary LSAs into an area, listing the subnet address and mask, but not listing details about routers and links in the other areas. For example, Figure 8-12 shows both areas 34 and 0 from Figure 8-1, including interface costs. Then consider how OSPF determines the lowest-cost route from Router R3 for subnet 10.10.99.0/24, the data center subnet on the right. Area 34 Area 0 Fa0/0 10.10.34.3/24 S0/0/0.1 13.3 R3 S0/0/0.2 23.3 Fa0/0 10.10.34.4/24 S0/0/0.1 14.4 R4 S0/0/0.2 24.4 R1 Fa0/0.1 12.1 Fa0/0 17.1 Fa0/1 18.1 SW1 Fa0/1 17.7 Fa0/2 27.2 Gi0/1 98.7 Fa0/0.1 12.2 Fa0/0 27.2 R2 Fa0/1 28.2 Data SW3 Center Subnet 10.10.99.0/24 18.8 Fa0/1 Gi0/1 98.8 Fa0/2 28.8 SW2 Figure 8-12 Area 34 and Area 0 Portion of Figure 8-1 R3 has a large number of possible routes to reach subnet 10.10.99.0/24. For example, just to get from R3 to R1, there are several possibilities: R3-R1, R3-R4-R1, and R3-R2-R1. From R1 the rest of the way to subnet 10.10.99.0/24, many more possibilities exist. The SPF algorithm has to calculate all possible routes inside an area to the ABR, so with more From the Library of Alexey Evseenko Chapter 8: The OSPF Link-State Database 333 redundancy, SPF’s run time goes up. And SPF has to consider all the options, whereas we humans can rule out some routes quickly, because they appear to be somewhat ridiculous. Because of the area design, with R1 and R2 acting as ABRs, R3 does not process all the topology shown in Figure 8-12. Instead, R3 relies on the Type 3 Summary LSAs created by the ABRs, which have the following information: ■ The subnet number/mask represented by the LSA ■ The cost of the ABR’s lowest-cost route to reach the subnet ■ The RID of the ABR Example 8-7 begins to examine the information that R3 will use to calculate its best route for subnet 10.10.99.0/24, on the right side of Figure 8-12. To see these details, Example 8-7 lists several commands taken from R1. It lists R1’s best route (actually two that tie) for subnet 10.10.99.0/24, with cost 11. It also lists the Type 3 LSA R1 generated by R1 for 10.10.99.0/24, again listing cost 11, and listing the Type 3 LSA created by ABR R2 and flooded into area 34. Example 8-7 Route and Type 3 LSA on R1 for 10.10.99.0/24 R1# show ip route ospf 10.0.0.0/8 is variably subnetted, 15 subnets, 3 masks O 10.10.5.0/27 [110/648] via 10.10.15.5, 00:04:19, Serial0/0/0.5 O 10.10.23.0/29 [110/711] via 10.10.13.3, 00:04:19, Serial0/0/0.3 O 10.10.24.0/29 [110/711] via 10.10.14.4, 00:04:19, Serial0/0/0.4 O 10.10.25.0/29 [110/711] via 10.10.15.5, 00:04:19, Serial0/0/0.5 O 10.10.27.0/24 [110/11] via 10.10.17.7, 00:04:19, FastEthernet0/0 [110/11] via 10.10.12.2, 00:04:19, FastEthernet0/0.1 O 10.10.28.0/24 [110/11] via 10.10.18.8, 00:04:19, FastEthernet0/1 [110/11] via 10.10.12.2, 00:04:19, FastEthernet0/0.1 O 10.10.34.0/24 [110/648] via 10.10.14.4, 00:04:19, Serial0/0/0.4 [110/648] via 10.10.13.3, 00:04:19, Serial0/0/0.3 O 10.10.98.0/24 [110/11] via 10.10.18.8, 00:04:19, FastEthernet0/1 [110/11] via 10.10.17.7, 00:04:19, FastEthernet0/0 O 10.10.99.0/24 [110/11] via 10.10.18.8, 00:04:19, FastEthernet0/1 [110/11] via 10.10.17.7, 00:04:19, FastEthernet0/0 R1# show ip ospf database summary 10.10.99.0 OSPF Router with ID (1.1.1.1) (Process ID 1) ! omitting output for area 5... Summary Net Link States (Area 34) LS age: 216 Options: (No TOS-capability, DC, Upward) From the Library of Alexey Evseenko 334 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide LS Type: Summary Links(Network) Link State ID: 10.10.99.0 (summary Network Number) Advertising Router: 1.1.1.1 LS Seq Number: 80000003 Checksum: 0x951F Length: 28 Network Mask: /24 TOS: 0 Metric: 11 LS age: 87 Options: (No TOS-capability, DC, Upward) LS Type: Summary Links(Network) Link State ID: 10.10.99.0 (summary Network Number) Advertising Router: 2.2.2.2 LS Seq Number: 80000002 Checksum: 0x7938 Length: 28 Network Mask: /24 TOS: 0 Metric: 11 Note The examples use default bandwidth settings, but with all routers configured with the auto-cost reference-bandwidth 1000 command. This command is explained in the upcoming section “Changing the Reference Bandwidth.” Key Topic For routers in one area to calculate the cost of an interarea route, the process is simple when you realize that the Type 3 LSA lists the ABR’s best cost to reach that interarea subnet. To calculate the cost Step 1. Calculate the intra-area cost from that router to the ABR listed in the Type 3 LSA. Step 2. Add the cost value listed in the Type 3 LSA. (This cost represents the cost from the ABR to the destination subnet.) A router applies these two steps for each possible route to reach the ABR. Following the example of Router R3 and subnet 10.10.99.0/24, Figure 8-13 shows the components of the calculation. Figure 8-13 shows the calculation of both routes, with the intra-area cost to reach R1 either 647 or 657 in this case. For both routes, the cost listed in the Type 3 LSA sourced by R1, cost 11, is added. From the Library of Alexey Evseenko 647 Cost 10 Cost 647 R3 10 + 647 Chapter 8: The OSPF Link-State Database 335 Best Route + 11 = 658 Cost 11 R1 T3 10.10.99.0/24 + 11 = 668 Cost 647 R4 Figure 8-13 R3’s Calculation of Cost for 10.10.99.0/24 When more than one ABR exists, as is the case as shown in Figure 8-12, each ABR should have created a Type 3 LSA for the subnet. In fact, the output in Example 8-7 showed the Type 3 LSA for 10.10.99.0/24 created by both R1 and another created by R2. For example, in the internetwork used throughout this chapter, ABRs R1 and R2 would create a Type 3 LSA for 10.10.99.0/24. So, in this particular example, R3 would also have to calculate the best route to reach 10.10.99.0/24 through ABR R2. Then, R3 would choose the best route among all routes for 10.10.99.0/24. Each router repeats this process for all known routes to reach the ABR, considering the Type 3 LSAs from each ABR. In this case, R3 ties on metrics for one route through R1 and one through R2, so R3 adds both routes to its routing table, as shown in Example 8-8. Example 8-8 Route and Type 3 LSA on R3 for 10.10.99.0/24 R3# show ip route 10.10.99.0 255.255.255.0 Routing entry for 10.10.99.0/24 Known via "ospf 3", distance 110, metric 658, type inter area Last update from 10.10.13.1 on Serial0/0/0.1, 00:08:06 ago Routing Descriptor Blocks: * 10.10.23.2, from 2.2.2.2, 00:08:06 ago, via Serial0/0/0.2 Route metric is 658, traffic share count is 1 10.10.13.1, from 1.1.1.1, 00:08:06 ago, via Serial0/0/0.1 Route metric is 658, traffic share count is 1 R3# show ip route ospf 10.0.0.0/8 is variably subnetted, 15 subnets, 3 masks O IA 10.10.5.0/27 [110/1304] via 10.10.23.2, 00:07:57, Serial0/0/0.2 [110/1304] via 10.10.13.1, 00:07:57, Serial0/0/0.1 O IA 10.10.12.0/24 [110/657] via 10.10.23.2, 00:08:17, Serial0/0/0.2 [110/657] via 10.10.13.1, 00:08:17, Serial0/0/0.1 ! lines omitted for brevity O IA 10.10.99.0/24 [110/658] via 10.10.23.2, 00:08:17, Serial0/0/0.2 [110/658] via 10.10.13.1, 00:08:17, Serial0/0/0.1 From the Library of Alexey Evseenko 336 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Besides the information that matches the expected outgoing interfaces per the figures, the output also flags these routes as interarea routes. The first command lists “type inter area” explicitly, and the show ip route ospf command lists the same information with the code “O IA,” meaning OSPF, interarea. Simply put, interarea routes are routes for which the subnet is known from a Type 3 Summary LSA. Special Rules Concerning Intra-Area and Interarea Routes on ABRs OSPF has a couple of rules concerning intra-area and interarea routes that take precedence over the simple comparison of the cost calculated for the various routes. The issue exists when more than one ABR connects to the same two areas. Many designs use two routers between the backbone and each nonbackbone area for redundancy, so this design occurs in many OSPF networks. The issue relates to the fact that with two or more ABRs, the ABRs themselves, when calculating their own routing tables, can calculate both an intra-area route and interarea route for subnets in the backbone area. For example, consider the perspective of Router R1 from the last several examples, as depicted in Figure 8-14. Area 34 Area 0 R1 Intra-area Route Interarea Route 10.10.99.0/24 Best Route R2 Figure 8-14 R1’s Choice: Intra-Area or Interarea Route to 10.10.99.0/24 Conceptually, R1 could calculate both the intra-area route and interarea route to 10.10.99.0/24. However, the OSPF cost settings could be set so that the lower-cost route for R1 actually goes through area 34, to ABR R2, and then on through area 0 to 10.10.99.0/24. However, two OSPF rules prevent such a choice by R1: Step 1. When choosing the best route, an intra-area route is always better than a competing interarea route, regardless of metric. Step 2. If an ABR learns a Type 3 LSA inside a nonbackbone area, the ABR ignores that LSA when calculating its own routes. Because of the first rule, R1 would never choose the interarea route if the intra-area route were available. The second rule goes further, stating that R1 could never choose the interarea route—R1 simply ignores that LSA for the purposes of choosing its own best IP routes. From the Library of Alexey Evseenko Chapter 8: The OSPF Link-State Database 337 Metric and SPF Calculations Before moving on to discuss how to influence route choices by changing the OSPF interface costs, first take a moment to consider the CPU-intensive SPF work done by a router. SPF does the work to piece together topology information to find all possible routes to a destination. As a result, SPF must execute when the intra-area topology changes, because changes in topology impact the choice of best route. However, changes to Type 3 LSAs do not drive a recalculation of the SPF algorithm, because the Type 3 LSAs do not actually describe the topology. To take the analysis a little deeper, remember that an internal router, when finding the best interarea route for a subnet, uses the intra-area topology to calculate the cost to reach the ABR. When each route is identified, the internal router adds the intra-area cost to the ABR, plus the corresponding Type 3 LSA’s cost. A change to the Type 3 LSA—it fails, comes back up, or the metric changes—does impact the choice of best route, so the changed Type 3 LSA must be flooded. However, no matter the change, the change does not affect the topology between a router and the ABR—and SPF focuses on processing that topology data. So, only changes to Type 1 and 2 LSAs require an SPF calculation. You can see the number of SPF runs, and the elapsed time since the last SPF run, using several variations of the show ip ospf command. Each time a Type 3 LSA changes and is flooded, SPF does not run, and the counter does not increment. However, each time a Type 1 or 2 LSA changes, SPF runs and the counter increments. Example 8-9 highlights the counter that shows the number of SPF runs on that router, in that area, and the time since the last run. Note that ABRs list a group of messages per area, showing the number of runs per area. Example 8-9 Example with New Route Choices but No SPF Run R3# show ip ospf | begin Area 34 Area 34 Number of interfaces in this area is 3 Area has no authentication SPF algorithm last executed 00:41:02.812 ago SPF algorithm executed 15 times Area ranges are Number of LSA 25. Checksum Sum 0x0BAC6B Number of opaque link LSA 0. Checksum Sum 0x000000 Number of DCbitless LSA 0 Number of indication LSA 0 Number of DoNotAge LSA 0 Flood list length 0 Metric Tuning Engineers have a couple of commands available that allow them to tune the values of the OSPF interface cost, thereby influencing the choice of best OSPF route. This section discusses the three methods: changing the reference bandwidth, setting the interface bandwidth, and setting the OSPF cost directly. From the Library of Alexey Evseenko 338 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Changing the Reference Bandwidth OSPF calculates the default OSPF cost for an interface based on the following formula: Cost = Reference-Bandwidth / Interface-Bandwidth The reference-bandwidth, which you can set using the auto-cost reference-bandwidth bandwidth router subcommand, sets the numerator of the formula for that one router, with a unit of Mbps. This setting can be different on different routers, but Cisco recommends using the same setting on all routers in an OSPF routing domain. For example, serial interfaces default to a bandwidth setting of 1544, meaning 1544 kbps. The reference bandwidth defaults to 100, meaning 100 Mbps. After converting the reference bandwidth units to kbps (by multiplying by 1000) to match the bandwidth unit of measure, the cost, calculated per the defaults, for serial links would be Cost = 100,000 / 1544 = 64 Note OSPF always rounds down when the calculation results in a decimal value. The primary motivation for changing the reference bandwidth is to accommodate good defaults for higher-speed links. With a default of 100 Mbps, the cost of Fast Ethernet interfaces is a cost value of 1. However, the minimum OSPF cost is 1, so Gigabit Ethernet and 10 Gigabit interfaces also then default to OSPF cost 1. By setting the OSPF reference bandwidth so that there is some difference in cost between the higher-speed links, OSPF can then choose routes that use those higher-speed interfaces. Note Although Cisco recommends that all routers use the same reference bandwidth, the setting is local to each router. Note that in the examples earlier in this chapter, the bandwidth settings used default settings, but the auto-cost reference-bandwidth 1000 command was used on each router to allow different costs for Fast Ethernet and Gigabit interfaces. Setting Bandwidth You can indirectly set the OSPF cost by configuring the bandwidth speed interface subcommand (where speed is in kbps). In such cases, the formula shown in the previous section is used, just with the configured bandwidth value. While on the topic of the interface bandwidth subcommand, a couple of seemingly trivial facts might matter to your choice of how to tune the OSPF cost. First, on serial links, the bandwidth defaults to 1544. On subinterfaces of those serial interfaces, the same bandwidth default is used. On Ethernet interfaces, if not configured with the bandwidth command, the interface bandwidth matches the actual speed. For example, on an interface that supports autonegotiation From the Library of Alexey Evseenko Chapter 8: The OSPF Link-State Database 339 for 10/100, the bandwidth is either 100,000 kbps (or 100 Mbps) or 10,000 kbps (or 10 Mbps), depending on whether the link currently runs at 100 or 10 Mbps, respectively. Configuring Cost Directly The most controllable method of configuring OSPF costs, but the most laborious, is to configure the interface cost directly. To do so, use the ip ospf cost value interface subcommand, substituting your chosen value as the last parameter. Verifying OSPF Cost Settings Several commands can be used to display the OSPF cost settings of various interfaces. Example 8-10 shows several, along with the configuration of all three methods for changing the OSPF cost. In this example, the following have been configured: ■ The reference bandwidth is set to 1000. ■ Interface S0/0/0.1 has its bandwidth set to 1000 kbps. ■ Interface Fa0/0 has its cost set directly to 17. Example 8-10 R3 with OSPF Cost Values Set router ospf 3 auto-cost reference-bandwidth 1000 interface S0/0/0.1 bandwidth 1000 interface fa0/0 ip ospf cost 17 R3# show ip ospf interface brief Interface PID Area Se0/0/0.2 3 34 Se0/0/0.1 3 34 Fa0/0 3 34 IP Address/Mask 10.10.23.3/29 10.10.13.3/29 10.10.34.3/24 Cost State Nbrs F/C 647 P2P 1/1 1000 P2P 1/1 17 BDR 1/1 R3# show ip ospf interface fa0/0 FastEthernet0/0 is up, line protocol is up Internet Address 10.10.34.3/24, Area 34 Process ID 3, Router ID 3.3.3.3, Network Type BROADCAST, Cost: 17 Enabled by interface config, including secondary ip addresses Transmit Delay is 1 sec, State BDR, Priority 1 Designated Router (ID) 4.4.4.4, Interface address 10.10.34.4 Backup Designated router (ID) 3.3.3.3, Interface address 10.10.34.3 ! lines omitted for brevity From the Library of Alexey Evseenko 340 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Exam Preparation Tasks Planning Practice The CCNP ROUTE exam expects test takers to review design documents, create implementation plans, and create verification plans. This section provides some exercises that can help you to take a step back from the minute details of the topics in this chapter so that you can think about the same technical topics from the planning perspective. For each planning practice table, simply complete the table. Note that any numbers in parentheses represent the number of options listed for each item in the solutions in Appendix F, “Completed Planning Practice Tables.” Design Review Table Table 8-6 lists several design goals related to this chapter. If these design goals were listed in a design document, and you had to take that document and develop an implementation plan, what implementation options come to mind? For any configuration items, a general description can be used, without concern about the specific parameters. Table 8-6 Design Review Design Goal The design sets specific limits to the number of Type 1 and 2 LSAs in each area. Describe how to predict the number of each type of LSA. Possible Implementation Choices Covered in This Chapter How could you tune OSPF metrics to favor 10-Gbps links over 1-Gbps and 1-Gig over 100Mbps? (2) The design shows one physical path from ABR1 to core subnet 1 inside area 0, and one longer area 1 path to the same subnet. What can be done to ensure that both paths can be used? Implementation Plan Peer Review Table Table 8-7 shows a list of questions that others might ask, or that you might think about, during a peer review of another network engineer’s implementation plan. Complete the table by answering the questions. From the Library of Alexey Evseenko Chapter 8: The OSPF Link-State Database 341 Table 8-7 Notable Questions from This Chapter to Consider During an Implementation Plan Peer Review Question Answer What conditions must be true for a router to create/flood a Type 2 LSA? (2) The plan shows Frame Relay with all pointto-point subinterfaces. By default, will a DR/ BDR be elected? The plan shows a reference bandwidth change planned for all routers with highspeed links, but not all other routers. What is the impact? (2) The plan shows many different WAN links speeds but with the interface bandwidths not matching the actual speed. All OSPF cost changes are made explicitly with the ip ospf cost interface subcommand. Do the incorrect bandwidths cause any OSPF problems? Create an Implementation Plan Table To practice skills useful when creating your own OSPF implementation plan, list in Table 8-8 configuration commands related to the configuration of the following features. You might want to record your answers outside the book and set a goal to complete this table (and others like it) from memory during your final reviews before taking the exam. Table 8-8 Implementation Plan Configuration Memory Drill Feature Tune metrics by changing the formula for calculating OSPF cost based on interface bandwidth. Configuration Commands/Notes Tune metrics by changing interface bandwidth. Change metrics by setting cost directly. Set the number of equal-cost OSPF routes allowed in a router’s routing table. Influence the choice of DR on a LAN. (2) From the Library of Alexey Evseenko 342 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Choose Commands for a Verification Plan Table To practice skills useful when creating your own OSPF verification plan, list in Table 89 all commands that supply the requested information. You might want to record your answers outside the book and set a goal to complete this table (and others like it) from memory during your final reviews before taking the exam. Table 8-9 Verification Plan Memory Drill Information Needed Display a summary of the OSPF database. Command(s) Display all Type 1 Router LSAs known to a router. Display the details of a particular Type 1 Router LSA. Display all Type 2 Network LSAs known to a router. Display the details of a particular Type 2 Router LSA. Display all Type 3 Summary LSAs known to a router. Display the details of a particular Type 3 Router LSA. Display a list of OSPF-enabled interfaces on a router. Determine on which interfaces a router has formed at least one OSPF neighborship. Determine the number of fully adjacent neighbors on an interface. Determine which transit networks connect to a Type 1 LSA. Determine the router that created and flooded a Type 3 LSA. Determine the router that created and flooded a Type 2 LSA. Determine the router that created and flooded a Type 1 LSA. Display the IP address of the current DR and BDR on a LAN. Display the OSPF interface cost (metric). Display all OSPF-learned routes. Display statistics about the number of SPF algorithm runs. From the Library of Alexey Evseenko Chapter 8: The OSPF Link-State Database 343 Note Some of the entries in this table might not have been specifically mentioned in this chapter but are listed in this table for review and reference. Review All the Key Topics Review the most important topics from inside the chapter, noted with the Key Topic icon in the outer margin of the page. Table 8-10 lists a reference of these key topics and the page numbers on which each is found. Table 8-10 Key Topics for Chapter 8 Key Topic Key Topic Element Description Page Number Table 8-2 OSPF LSA Types 305 List Two main functions of a DR 312 Table 8-3 Facts About LSA Types 1, 2, and 3 321 Table 8-4 OSPF Message Types and Functions 322 Table 8-5 OSPF Neighbor State Reference 322 List Key differences between database exchange with and 326 without a DR List Three considerations a router makes when choosing 330 the best OSPF IP routes List Three steps to calculate OSPF costs for intra-area routes 331 List Two steps for calculating OSPF costs for interarea routes 334 Complete the Tables and Lists from Memory Print a copy of Appendix D, “Memory Tables,” (found on the CD) or at least the section for this chapter, and complete the tables and lists from memory. Appendix E, “Memory Tables Answer Key,” also on the CD, includes completed tables and lists to check your work. Define Key Terms Define the following key terms from this chapter, and check your answers in the glossary. link-state identifier (LSID), designated router (DR), backup designated router (BDR), internal router, area border router (ABR), all-SPF-routers multicast, all-DR-routers multicast, link-state advertisement, Database Description (DD) packet, Link-State Request (LSR) packet, Link-State Acknowledgment (LSA) packet, Link-State Update (LSU) packet, Router LSA, Network LSA, Summary LSA, Type 1 LSA, Type 2 LSA, Type 3 LSA, reference bandwidth, SPF calculation From the Library of Alexey Evseenko This chapter covers the following subjects: ■ Route Filtering: This section introduces three separate methods of route filtering with OSPF and discusses the commands to configure two of these methods. ■ Route Summarization: This section examines how OSPF can summarize routes at ABRs and at ASBRs. ■ Default Routes and Stub Areas: This section examines the two main reasons that an enterprise might use default routes and then shows OSPF’s solution to each need: flooding a domain-wide default route and using OSPF stub areas. ■ OSPF version 3: This section introduces the newest version of OSPF, OSPF version 3 (commonly written as OSPFv3). OSPFv3 adds support for the routing of IPv6 traffic. The theory and commands for OSPFv3 Address Family configuration are also covered. From the Library of Alexey Evseenko CHAPTER 9 Advanced OSPF Concepts This chapter discusses several features that optimize Open Shortest Path First (OSPF) operations: route filtering, route summarization, default routing, and OSPF stub areas, in addition to the features available in OSPFv3. Route filtering can be used to purposefully prevent hosts in one part of an internetwork from sending packets to another part. It can also reduce the size of a topology table and IP routing table, reducing both OSPF memory and CPU consumption, plus make the packet-forwarding process run slightly better. Route summarization can also reduce routing protocol and packet forwarding overhead, but with a potential negative effect of creating less-efficient paths through an internetwork. Additionally, this chapter briefly covers default routing, followed by a discussion of OSPF stub routers. These stub routers can be used to limit the amount of topology data in an area, again reducing overhead. Finally, this chapter concludes with a look at OSPFv3, including configuration examples. This discussion also introduces the concept of OSPFv3 Address Families and includes configuration and verification examples. “Do I Know This Already?” Quiz The “Do I Know This Already?” quiz allows you to assess whether you should read the entire chapter. If you miss no more than two of these 11 self-assessment questions, you might want to move ahead to the “Exam Preparation Tasks” section. Table 9-1 lists the major headings in this chapter and the “Do I Know This Already?” quiz questions covering the material in those headings so that you can assess your knowledge of these specific areas. The answers to the “Do I Know This Already?” quiz appear in Appendix A. Table 9-1 “Do I Know This Already?” Foundation Topics Section-to-Question Mapping Foundation Topics Section Route Filtering Route Summarization Questions 1–3 4, 5 Default Routing and Stub Areas OSPF version 3 6–8 9–11 From the Library of Alexey Evseenko 346 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide 1. Router B1, an internal router in area 1, displays the following output. The only two ABRs connected to area 1 are performing Type 3 LSA filtering. Which of the following answers is true based on the information in the output from B1? R1# show ip route 10.1.0.0 255.255.0.0 longer-prefixes ! Legend lines omitted for brevity 10.0.0.0/8 is variably subnetted, 17 subnets, 3 masks O 10.1.2.0/24 [110/658] via 10.10.13.1, 00:00:32, Serial0/0/0.1 O IA 10.1.1.0/24 [110/658] via 10.10.23.2, 00:41:39, Serial0/0/0.2 O IA 10.1.3.0/24 [110/658] via 10.10.23.2, 00:41:39, Serial0/0/0.2 a. A Type 3 LSA for 10.2.2.0/24 was filtered by both ABRs. b. A Type 3 LSA for 10.1.2.0/24 was not filtered by both ABRs. c. A Type 3 LSA for 10.1.3.0/24 was not filtered by at least one ABR. d. A Type 3 LSA for 10.1.1.0/24 was filtered by both ABRs. 2. The following command output was gathered from Router R1, an ABR between area 0 (backbone) and area 1. In this internetwork, area 0 contains all the subnets of Class A network 10.0.0.0. R1’s OSPF process has a distribute list configured. Assuming that the subnets listed in the answers actually exist in area 0, which of the following occurs on Router R1? R1# sh ip prefix-list ip prefix-list question: 3 entries seq 5 deny 10.1.2.0/24 ge 25 le 27 seq 15 deny 10.2.0.0/16 ge 30 le 30 seq 20 permit 0.0.0.0/0 le 32 a. R1 will not create/flood a Type 3 LSA for subnet 10.1.2.0/26 into area 1. b. R1 will not create/flood a Type 3 LSA for subnet 10.1.2.0/24 into area 1. c. R1 will not have an OSPF route for subnet 10.1.2.0/26 in its IP routing table. d. R1 will not have an OSPF route for subnet 10.1.2.0/24 in its IP routing table. From the Library of Alexey Evseenko Chapter 9: Advanced OSPF Concepts 347 3. Use the same scenario as the previous question, with one change. Instead of the distribute list configured on R1, R1’s OSPF process has an area 1 filter list configured. Again assuming that the subnets listed in the answers actually exist in area 0, which of the following occurs on Router R1? R1# sh ip prefix-list ip prefix-list question: 3 entries seq 5 deny 10.1.2.0/24 ge 25 le 27 seq 15 deny 10.2.0.0/16 ge 30 le 30 seq 20 permit 0.0.0.0/0 le 32 a. R1 will not create/flood a Type 3 LSA for subnet 10.1.2.0/26 into area 1. b. R1 will not create/flood a Type 3 LSA for subnet 10.1.2.0/24 into area 1. c. R1 will not have an OSPF route for subnet 10.1.2.0/26 in its IP routing table. d. R1 will not have an OSPF route for subnet 10.1.2.0/24 in its IP routing table. 4. R1, an ABR between backbone area 0 and area 1, has intra-area routes in area 0 for 10.1.1.0/24, 10.1.2.0/24, and 10.1.3.0/24. These routes have metrics of 21, 22, and 23, respectively. An engineer then adds the area 0 range 10.1.0.0 255.255.0.0 command under the OSPF process of R1. Which of the following are true? (Choose two.) a. R1 loses and then reestablishes neighborships with all neighbors. b. R1 no longer advertises 10.1.1.0/24 to neighbors into area 1. c. R1 advertises a 10.1.0.0/16 route into area 1 with a metric of 23 (largest metric). d. R1 advertises a 10.1.0.0/16 route into area 1 with a metric of 21 (lowest metric). 5. The following output exists on Router R1, a router internal to area 1. What can you determine as true from the output of the show ip ospf database summary command? Routing Bit Set on this LSA LS age: 124 Options: (No TOS-capability, DC, Upward) LS Type: Summary Links (Network) Link State ID: 10.1.0.0 (summary Network Number) Advertising Router: 1.1.1.1 LS Seq Number: 80000001 Checksum: 0x878F Length: 28 Network Mask: /22 TOS: 0 Metric: 11 a. The LSA was created by an ABR because of an area range command. b. The LSA was created by an ASBR because of a summary-address command. c. If created by an area range command, the best metric for a subordinate subnet on that ABR must have been 11. d. None of the other answers are correct. From the Library of Alexey Evseenko 348 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide 6. Router R1, an ASBR connected to the Internet and to backbone area 0, has been configured with a default-information originate command. Which of the following is true about the effects of this configuration command? a. R1 will always create and flood a default route into the OSPF domain. b. R1 will create and flood an LSA for prefix/length 0.0.0.0/0 into the OSPF domain if R1’s IP routing table has a route to 0.0.0.0/0. c. R1 will set a flag on the LSA for the subnet between itself and one of the ISPs, noting this subnet as a default network, regardless of whether R1 has a default route. d. R1 will set a flag on the LSA for the subnet between itself and one of the ISPs, noting this subnet as a default network, but only if R1 has a route to 0.0.0.0/0. 7. Which of the following are true about routers internal to a totally NSSA area? (Choose two.) a. Routers cannot redistribute external routes into the area. b. Routers should have zero Type 3 LSAs in their LSDBs. c. Routers should have zero Type 5 LSAs in their LSDBs. d. Routers should learn default routes from the ABRs attached to the area. 8. ABR R1 has been configured with an area 1 stub no-summary command. Which stubby area type is area 1? a. Stub b. Totally stubby c. NSSA d. Totally NSSA 9. With an OSPFv3 Address Family configuration supporting both IPv4 and IPv6 routing, which of the following is true regarding OSPFv3’s link-state database? a. IPv4 LSAs populate one database, while IPv6 LSAs populate a second database. b. Information received from all LSAs is aggregated in a single link-state database. c. OSPFv3 does not use a link-state database. Rather, it represents link-state information in a lookup table similar to Cisco Express Forwarding (CEF). d. A virtual Address Family is created, and it contains information from both IPv4 and IPv6 LSAs. From the Library of Alexey Evseenko Chapter 9: Advanced OSPF Concepts 349 10. In an OSPFv3 Address Family configuration, how do you tell an interface to partici- pate in the OSPFv3 process for IPv6 routes? a. Router(config-router)# ospfv3 process_id ipv6 area area_number b. Router(config-router-af)# ospfv3 process_id ipv6 area area_number c. Router(config-router-af-if)# ospfv3 process_id ipv6 area area_number d. Router(config-if)# ospfv3 process_id ipv6 area area_number 11. Which LSA used in IPv6 networks carries information similar to the information carried by Type 1 and Type 2 LSAs in IPv4 networks? a. Type 6 LSA b. Type 8 LSA c. Type 9 LSA d. Type 10 LSA From the Library of Alexey Evseenko 350 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Foundation Topics Route Filtering OSPF supports several methods to filter routes. However, the OSPF’s internal logic restricts most filtering, requiring that the filtering be done either on an area border router (ABR) or autonomous system boundary router (ASBR). This same internal logic dictates what each type of filtering can do and what it cannot do. So, when thinking about OSPF route filtering, you need to go beyond the concept of matching IP prefix/length information and consider OSPF internals as well. This first major section begins with a discussion of the OSPF internals that impact OSPF route filtering, followed by information about two of OSPF’s route-filtering tools. First, consider the difference in how OSPF chooses intra-area versus interarea routes. For intra-area routes, OSPF uses pure link-state logic, with full topology information about an area, piecing together the topology map from the Type 1 and Type 2 LSAs. This logic relies on all routers inside the area having an identical copy of the link-state database (LSDB) for that area. With the full topology, the shortest path first (SPF) algorithm can be run, finding all possible routes to each subnet. For interarea routes, OSPF uses distance vector logic. The intra-area SPF calculation includes the calculation of the metric of the best route to reach each ABR in the area. To choose the best interarea route, a router uses distance vector logic of taking its known metric to reach the ABR and adds the metric for that subnet as advertised by the ABR. This means that no additional SPF calculation is required to find all interarea routes for a given prefix/length, making this logic more like distance vector logic. Keeping these thoughts in mind, next consider the concept of route filtering inside one area. First, OSPF routers do not advertise routes; instead, they advertise LSAs. Any filtering applied to OSPF messages would need to filter the transmission of LSAs. However, inside one area, all routers must know all LSAs, or the entire SPF concept fails, and routing loops could occur. As a result, OSPF cannot and does not allow the filtering of LSAs inside an area, specifically the Type 1 and Type 2 LSAs that describe the intra-area topology. OSPF does allow some route filtering, however, taking advantage of the fact that OSPF uses distance vector logic with Type 3 LSAs (and Type 5 LSAs used for external routes). Because of the underlying distance vector logic, an OSPF ABR can be configured to filter Type 3 LSAs, with no risk of creating routing loops. (The same applies for ASBRs filtering Type 5 LSAs created for external routes.) As a result of these related concepts, Cisco IOS limits OSPF route filtering to the following: ■ Filtering Type 3 LSAs on ABRs ■ Filtering Type 5 LSAs on ASBRs ■ Filtering the routes that OSPF would normally add to the IP routing table on a single router From the Library of Alexey Evseenko Chapter 9: Advanced OSPF Concepts 351 Of these, the second option occurs as an option of the route redistribution process as explained in Chapter 10, “Route Redistribution.” So, it will not be covered in this chapter. The other two topics will be examined next. Type 3 LSA Filtering ABRs, by definition, connect to the backbone area and at least one other area. ABRs, as a fundamental part of their role, create and flood Type 3 Summary LSAs into one area to represent the subnets in the other areas connected to that ABR. Type 3 LSA filtering tells the ABR to filter the advertisement of these Type 3 LSAs. For example, consider Figure 9-1, which shows a generalized design with two ABR routers. The figure focuses on three subnets in area 0 for which each ABR would normally create and flood a Type 3 Summary LSA into area 1. However, in this case, the engineer has made the following choices: ■ On ABR1, filter subnet 3 from being advertised. ■ On ABR2, filter both subnets 2 and 3 from being advertised. Area 1 Area 0 Type 3 Subnet 1 Type 3 Subnet 2 ABR1 Type 3 Subnet 1 ABR2 Subnet 1 Subnet 2 Subnet 3 Figure 9-1 Generic View of Type 3 LSA Filtering The goal of such a filtering plan could be to prevent all area 1 users from reaching subnet 3 and to allow access to subnet 2—but only through ABR1. If ABR1 were to fail, none of the area 1 routers could calculate a route for subnet 2 through ABR2, because ABR2 has not created and flooded a Type 3 LSA for that subnet. The goal for subnet 1 would be to allow each area 1 router to choose the best route through either ABR, while having a redundant route in case one route failed. To configure Type 3 LSA filtering, you use the area number filter-list prefix name {in | out} command under router ospf configuration mode. The referenced prefix list matches subnets, with subnets matched by a deny action being filtered, and subnets matched with a permit action allowed through as normal. OSPF then performs the filtering by not flooding the Type 3 LSAs into the appropriate areas. From the Library of Alexey Evseenko 352 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide The trickiest part of the configuration relates to the in and out parameters at the end of the area filter-list router subcommand. These parameters define the direction relative to the area listed in the command, as follows: ■ When in is configured, Cisco IOS filters prefixes being created and flooded into the configured area. ■ When out is configured, Cisco IOS filters prefixes coming out of the configured area. The need for the in and out parameters makes more sense when you consider an ABR connected to at least three areas. Figure 9-2 shows just such a sample, with both the in and out directions represented. Area 1 area 0 filter-list... in Area 0 Subnet 111 ABR1 Stop Subnet 10 Stop area 2 filter-list... out Subnet 12 Area 2 Figure 9-2 Generic View of Type 3 LSA Filtering The area 0 filter-list... in command in the figure shows that the ABR considers filtering routes from all other areas (areas 1 and 2, in this case) when creating and flooding Type 3 LSAs into area 0. The area 2 filter-list... out command in the figure shows how the ABR only considers prefixes that exist in area 2. However, in this case, the ABR filters LSAs regardless of the area into which the Type 3 LSAs would be advertised. For example, consider the case of subnet 111, in area 1. Assume that all prefix lists happen to match subnet 111, so that subnet 111 should be filtered. The following list summarizes what happens on ABR1 regarding the potential advertisement of a Type 3 LSA for this subnet being flooded into areas 0 and 2: ■ ABR1 filters the subnet 111 LSA from being sent into area 0 because of the area 0 filter-list... in command. ■ ABR1 does not filter the subnet 111 LSA from being sent into area 2, because there is no area 1 filter-list... out command nor area 2 filter-list... in command. As another example, Figure 9-3 shows an example internetwork with three candidate routes to be filtered by ABRs R1 and R2. ABRs R1 and R2 will play the roles of ABR1 From the Library of Alexey Evseenko Chapter 9: Advanced OSPF Concepts 353 and ABR2 in Figure 9-1, with R1 filtering one of the three subnets and R2 filtering two of the subnets. Note that R1 and R2 will each use different in and out keywords as well. Area 34 R3 Subnets of 10.11.0.0/16 Area 0 Subnets of 10.9.x.x/16 SW1 R4 R1 SW3 Data Center 10.16.1.0/24 10.16.2.0/24 10.16.3.0/24 R5 R2 Subnets of 10.12.0.0/16 Area 5 SW2 Figure 9-3 Type 3 LSA Filtering Example Example 9-1 shows the configuration on both R1 and R2. Example 9-1 R1’s and R2’s distribute-list to Filter Manufacturing Routes ! On Router R1: ip prefix-list filter-into-area-34 seq 5 deny 10.16.3.0/24 ip prefix-list filter-into-area-34 seq 10 permit 0.0.0.0/0 le 32 ! router ospf 1 area 34 filter-list prefix filter-into-area-34 in ! On Router R2: ip prefix-list filter-out-of-area-0 seq 5 deny 10.16.2.0/23 ge 24 le 24 ip prefix-list filter-out-of-area-0 seq 10 permit 0.0.0.0/0 le 32 ! router ospf 2 area 0 filter-list prefix filter-out-of-area-0 out First, take a closer look at the specifics of the R1 configuration commands. The prefix list on R1 exactly matches route 10.16.3.0/24, with a deny action. The second prefixlist command matches all subnets, because the 0.0.0.0/0 parameter matches all subnet numbers, and the le 32 parameter, combined with the original /0 prefix length, matches From the Library of Alexey Evseenko 354 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide all prefix lengths from /0 through /32. The area 34... in command tells R1 to apply this filtering to all Type 3 LSAs that R1 creates and would otherwise flood into area 34. As a result, the area 34 LSDB will not contain a Type 3 LSA for 10.16.3.0/24, as injected by R1. R2’s configuration uses a slightly different prefix list. The filter examines all Type 3 LSAs for subnets in area 0. The first prefix-list command matches all prefixes in the range 10.16.2.0–10.16.3.255 (per the 10.16.2.0/23 parameter) but specifically for a prefix length of exactly 24. This command matches two of the three data center subnets. The second prefix-list command matches all other subnets with the same match-all logic seen earlier on R1, using a permit action. R2’s area 0... out command tells R2 to filter the subnets that R2 learns in area 0 and for which R2 would normally create Type 3 LSAs to flood into all other areas. So, neither area 34 nor area 5 will learn these two filtered subnets (10.16.2.0/24 and 10.16.3.0/24) in Type 3 LSAs from R2. The end result of this added configuration results in the following Type 3 LSAs for the three subnets shown on the right side of Figure 9-3: ■ Two Type 3 LSAs for 10.16.1.0/24 (created by R1 and R2, respectively) ■ One Type 3 LSA for 10.16.2.0/24 (created by R1) ■ None for 10.16.3.0/24 Example 9-2 confirms the contents of the LSDB in area 34, on Router R3. Example 9-2 Area 34 LSDB, as Seen on R3 R3# show ip route 10.16.0.0 255.255.0.0 longer-prefixes ! Legend lines omitted for brevity 10.0.0.0/8 is variably subnetted, 17 subnets, 3 masks O IA 10.16.2.0/24 [110/658] via 10.10.13.1, 00:00:32, Serial0/0/0.1 O IA 10.16.1.0/24 [110/658] via 10.10.23.2, 00:41:39, Serial0/0/0.2 [110/658] via 10.10.13.1, 00:00:32, Serial0/0/0.1 R3# show ip ospf database | include 10.16 10.16.1.0 1.1.1.1 759 10.16.1.0 2.2.2.2 745 10.16.2.0 1.1.1.1 759 0x80000002 0x008988 0x80000002 0x006BA2 0x80000002 0x007E92 The first command in the example lists R3’s routes for all subnets whose first two octets are 10.16. Note that R3 has no route to 10.16.3.0/24, because both R1 and R2 filtered the Type 3 LSA. R3 happens to have equal-cost routes for 10.16.1.0/24, which is possible, because both R1 and R2 permitted the advertisement of the Type 3 LSA for that subnet. R3 has only one route for 10.16.2.0/24, through R1, because R2 filtered its Type 3 LSA for that prefix. The second command in Example 9-2 lists all LSAs that include “10.16,” which includes the two Type 3 LSAs for 10.16.1.0/24 and the single Type 3 LSA for 10.16.2.0/24. From the Library of Alexey Evseenko Chapter 9: Advanced OSPF Concepts 355 Finally, note that although the configuration in Example 9-1 showed area filter-list commands with both in and out parameters for variety, the result of R2’s area filter-list... out command is that R2 does not flood the filtered LSAs to either area 34 or area 5. If the design goals specifically meant to filter only LSAs from being advertised from area 0 into area 34, the area 34 filter-list... in command should have been used on both routers. Filtering OSPF Routes Added to the Routing Table In some cases, an engineer might need to filter a route, but the area design does not lend itself well to his filtering goals. For example, if an area has 20 routers and the engineer wants to filter a route so that five of the routers do not learn the route, Type 3 LSA filtering cannot be used. Type 3 LSA filtering can only filter the LSAs from being flooded throughout the entire area. The next feature discussed in this section, referenced as filtering with distribute lists (based on the configuration command it uses), allows individual routers to filter OSPF routes from getting into their respective IP routing tables. This type of filtering injects logic between the SPF algorithm on a router and that same router’s IP routing table. This feature does not change the LSDB flooding process, does not change the LSAs added by ABRs or ASBRs, and does not change the SPF algorithm’s choice of best route. However, when SPF chooses routes to add to the IP routing table, if a router has been configured with a distribute-list in router subcommand, enabling this feature, that router then filters the routes before adding them to that router’s IP routing table. Figure 9-4 shows the general idea. R1 R2 R3 IP Routing Table IP Routing Table IP Routing Table distribute-list in distribute-list in distribute-list in SPF SPF SPF LSDB LSDB LSDB Figure 9-4 OSPF Filtering with Distribute Lists In effect, you could prevent an OSPF route from being added to one or more routers’ routing tables, but without risking causing routing loops, because the intra-area LSDB topology remains intact. By filtering routes from being added to the IP routing table, you From the Library of Alexey Evseenko 356 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide prevent the routers from forwarding packets to the filtered subnets, but presumably that’s the intended goal of route filtering. The mechanics of the distribute-list router subcommand have a few surprises, which are summarized in this list: ■ The command requires either an in or out direction. Only the in direction works for filtering routes as described in this section. ■ The command must refer to either a numbered access control list (ACL), named ACL, prefix list, or route map. Regardless, routes matched with a permit action are allowed into the IP routing table, and routes matched with a deny action are filtered. ■ Optionally, the command can include the interface interface-name-and-number parameters. The router compares these parameters to the route’s outgoing interface. Example 9-3 shows a sample configuration on Router R3 from Figure 9-3. In this case, all filtering listed in Examples 9-1 and 9-2 has been removed, so no routes or LSAs have been filtered. Then, the engineer adds the distribute-list command on R3 to filter the route for 10.16.1.0/24, based on prefix-list filter-1. Example 9-3 R3’s distribute-list to Filter 10.16.1.0/24 ! On Router R3: ip prefix-list filter-1 seq 5 deny 10.16.1.0/24 ip prefix-list filter-1 seq 10 permit 0.0.0.0/0 le 32 ! router ospf 3 distribute-list prefix filter-1 in ! R3# show ip route ospf | include 10.16.1 R3# R3# show ip ospf database | include 10.16.1.0 10.16.1.0 1.1.1.1 1143 0x80000007 0x007F8D 10.16.1.0 2.2.2.2 1538 0x80000007 0x0061A7 Note that the configuration matches only prefix 10.16.1.0/24 with a deny clause and permits all other routes. As a result, OSPF on R3 does not add a route for subnet 10.16.1.0/24 to the IP routing table, as implied by the null output of the show ip route ospf | include 10.16.1 command. The show ip ospf database | include 10.16.1 command lists all LSAs that have 10.16.1 in the text output, showing the two Type 3 LSAs for the subnet. Route Summarization OSPF allows summarization at both ABRs and ASBRs but not on other OSPF routers. The main reason is again that the LSDB must be the same for all routers in a single area. So, if summarization is needed, the summary prefixes should be created at the edge of an area (ABR or ASBR) and flooded throughout that area. However, the idea of From the Library of Alexey Evseenko Chapter 9: Advanced OSPF Concepts 357 summarizing on a router internal to an area, hoping that some routers in the area use the summary route and others in the same area do not, cannot be done with OSPF. Good planning of route summaries can overcome the restriction of performing the summarization only on ABRs and ASBRs. A good OSPF area design includes consideration of future address summaries, and a good OSPF route summarization design considers the ABR locations. Although it is rare to design a large internetwork from scratch, an addressing plan that assigns all or most subnets in an area from one large address block does make address summarization easier. OSPF summarization differs slightly on ABRs versus ASBRs. This section first examines route summarizations on ABRs and then considers ASBRs. Manual Summarization at ABRs The more difficult task with OSPF route summarization occurs when planning the design of IP address blocks and OSPF areas. When the IP addressing plan and OSPF design have been completed, if the subnet numbers inside an area happen to be from the same general range, and none of the subnets in that range exist in other OSPF areas, a reasonable summary route can be created at the ABRs connected to that area. Without first having such a reasonable block of addresses, route summarization might not be a useful option. After a range of subnets has been chosen for summarization, the parameters in the area range command must be planned. This command defines the parameters for the summary route, most notably the origin area from which the subnets exist and the subnet number/ mask that defines the summary route that should be advertised. The generic version of the command is listed next, followed by some notes about the various parameters: area area-id range ip-address mask [cost cost] Key Topic ■ The configured area number refers to the area where the subnets exist; the summary will be advertised into all other areas connected to the ABR. ■ The ABR compares the summary route’s range of addresses with all intra-area OSPF routes, in the origin area, for which the ABR is creating Type 3 LSAs. If at least one subordinate subnet exists (subnets that sit inside the range), the ABR advertises the summary route as a Type 3 LSA. ■ The ABR does not advertise the subordinate subnet’s Type 3 LSAs. ■ The ABR assigns a metric for the summary route’s Type 3 LSA, by default, to match the best metric among all subordinate subnets. ■ The area range command can also explicitly set the cost of the summary. ■ If no subordinate subnets exist, the ABR does not advertise the summary. For example, Figure 9-3 (shown earlier in this chapter) lists three subnets on the right side of the figure, noted as data center subnets 10.16.1.0/24, 10.16.2.0/24, and 10.16.3.0/24. ABR R1 could be configured to summarize these routes as 10.16.0.0/22, which includes From the Library of Alexey Evseenko 358 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide all three subnets. (10.16.0.0/22 implies a range from 10.16.0.0 to 10.16.3.255.) The ABRs (R1 and R2) could be configured to advertise a summary route using the area 0 range 10.16.0.0 255.255.252.0 router subcommand. Behind the scenes, ABR route summarization causes the ABR to no longer advertise the subordinate routes’ Type 3 LSAs, but to instead advertise one Type 3 LSA for the summary prefix. Figure 9-5 shows this concept on ABR R1, assuming that the area 0 range 10.16.0.0 255.255.252.0 router subcommand has been configured. The three Type 3 LSAs that would normally have been advertised are shown above the ABR, and the one Type 3 LSA for the summary route, which replaces the upper LSAs, is shown under the ABR. Type 3 Metric 11 10.16.1.0/24 Type 3 Metric 12 10.16.2.0/24 Type 3 Metric 13 10.16.3.0/24 ABR R1 or area 0 range 10.16.0.0/22 Type 3 Metric 11 10.16.0.0/22 Figure 9-5 OSPF Area Summarization—Consolidating Type 3 LSAs Example 9-4 shows some show command output related to this example. All route filtering in earlier examples has been removed, and both R1 and R2 have configured OSPF to summarize 10.16.0.0/22 with the area 0 range 10.16.0.0 255.255.252.0 router OSPF subcommand. However, in R2’s case, the metric 12 parameter was used. Example 9-4 R1/R2/R3’s Area Summarization on 10.16.0.0/16 ! On Router R1, before the summarization: R1# sh ip route ospf | incl 10.16 O 10.16.2.0/24 [110/12] via 10.10.17.7, 00:00:24, FastEthernet0/0 O 10.16.3.0/24 [110/13] via 10.10.17.7, 00:00:24, FastEthernet0/0 O 10.16.1.0/24 [110/11] via 10.10.17.7, 00:00:34, FastEthernet0/0 ! Next, configuring the summarization: From the Library of Alexey Evseenko router ospf 1 area 0 range 10.16.0.0 255.255.252.0 Chapter 9: Advanced OSPF Concepts 359 ! Next, on R2, configuring the same summary router ospf 2 area 0 range 10.16.0.0 255.255.252.0 cost 12 ! Next, from R3 R3# show ip ospf database summary 10.16.0.0 OSPF Router with ID (3.3.3.3) (Process ID 3) Summary Net Link States (Area 34) Routing Bit Set on this LSA LS age: 124 Options: (No TOS-capability, DC, Upward) LS Type: Summary Links(Network) Link State ID: 10.16.0.0 (summary Network Number) Advertising Router: 1.1.1.1 LS Seq Number: 80000001 Checksum: 0x878F Length: 28 Network Mask: /22 TOS: 0 Metric: 11 LS age: 103 Options: (No TOS-capability, DC, Upward) LS Type: Summary Links(Network) Link State ID: 10.16.0.0 (summary Network Number) Advertising Router: 2.2.2.2 LS Seq Number: 80000001 Checksum: 0x739E Length: 28 Network Mask: /22 TOS: 0 Metric: 12 R3# show ip route 10.16.0.0 255.255.0.0 longer-prefixes ! legend omitted for brevity 10.0.0.0/8 is variably subnetted, 16 subnets, 4 masks O IA 10.16.0.0/22 [110/658] via 10.10.13.1, 00:03:46, Serial0/0/0.1 The example demonstrates the theory of what happens behind the scenes. R3 lists only two Type 3 LSAs related to the 10.16.1.0/24, 10.16.2.0/24, and 10.16.3.0/24 subnets: the Type 3 LSAs created by R1 and R2 for 10.16.0.0/22. However, the output does not denote From the Library of Alexey Evseenko 360 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide that this LSA represents a summarized route. It simply looks like yet another Type 3 LSA. (Any mention of the word “summary” in the output refers to the fact that Type 3 LSAs are called Summary LSAs.) In this case, R3’s path to reach both R1 and R2 ties, but the LSA for R1’s 10.16.0.0/22 summary was injected with metric 11, based on the lowest metric subordinate route on R1, whereas R2’s uses the explicitly configured metric 12. As a result, R3’s best route for 10.16.0.0/22 uses R1, as shown in the route at the end of the example. The first show command in the example shows R1’s metrics for the three subordinate subnets, specifically metrics 11, 12, and 13. As such, R1’s summary for 10.16.0.0/22, as shown in R3’s show ip ospf database summary 10.16.0.0 command, confirms that, by default, R1 gave the summary route’s Type 3 LSA the best metric among the component subnets. Note Although not discussed in depth here, the optional not-advertise option on the area range command tells the ABR to not advertise the Type 3 LSA for the summary route, making it possible to do the equivalent of Type 3 LSA filtering with the area range command. Manual Summarization at ASBRs OSPF defines an ASBR as a router that redistributes routes into OSPF from some other routing sources. When redistributing the routes, the ASBR creates a Type 5 External LSA for each redistributed subnet, listing the subnet number as the LSID and listing the mask as one of the fields in the LSA. The LSA also lists the ASBR’s RID as the advertising router and a cost metric for the route. For the purposes of route summarization, you can think of a Type 5 LSA as working much like a Type 3 LSA, except for routes learned externally. This section describes ASBR route summarization, which has many similarities to summarization by an ABR. If you add the summary-address prefix mask OSPF subcommand, OSPF will then attempt to summarize the external routes by creating a Type 5 LSA for the summary route, and by no longer advertising the Type 5 LSAs for the subordinate subnets. When looking for potential subordinate subnets inside the summary, the ASBR looks at all routes being redistributed into OSPF from all outside route sources, and if any subordinate subnets exist, the ASBR performs the route summarization. Notably, this command works very much like the area range command on ABRs, with the main exception being that the summary-address command cannot explicitly set the metric of the summary route. The list of features is as follows: Key Topic ■ The ASBR compares the summary route’s range of addresses with all routes redistributed into OSPF on that ASBR to find any subordinate subnets (subnets that sit inside the summary route range). If at least one subordinate subnet exists, the ASBR advertises the summary route. ■ The ASBR does not advertise the subordinate subnets. From the Library of Alexey Evseenko Chapter 9: Advanced OSPF Concepts 361 ■ To create the summary, the ASBR actually creates a Type 5 LSA for the summary route. ■ The ASBR assigns the summary route the same metric as the lowest metric route among all subordinate subnets. ■ If no subordinate subnets exist, the ASBR does not advertise the summary. ■ Unlike the area range command, the summary-address command cannot be used to directly set the metric of the summary route. The summary-address subcommand defines the summary route on the ASBR, with similar syntax and parameters as compared to the area range command seen on ABRs. Table 9-2 lists the two commands for comparison and study. Table 9-2 OSPF Route Summarization Commands Key Topic Where Used Command ASBR summary-address {{ip-address mask} | {prefix mask}} [not-advertise] ABR area area-id range ip-address mask [advertise | not-advertise] [cost cost] Default Routes and Stub Areas Enterprises typically use default routes in two different cases: ■ To direct remote-site routers at the edge of the enterprise network to send all packets toward the core of the enterprise, with the core routers knowing all the more-specific routes to enterprise destination addresses ■ To direct traffic on all enterprise routers toward an Internet-facing router so that all traffic destined for the Internet eventually arrives at the enterprise’s Internetconnected routers Engineers could achieve both of these goals by using route summarization with the area range and summary-address commands. For example, consider a case in which the goal is to drive all packets destined for Internet hosts to one of two equal Internet routers for an enterprise, as shown in Figure 9-6. The design shows two ASBRs connected to the Internet. Both ASBRs could learn routes with Border Gateway Protocol (BGP). Rather than redistribute all BGP routes into the enterprise, the ASBRs summarize to the ultimate summary, 0.0.0.0/0. The two OSPF ASBRs flood the Type 5 LSA for a summary route— one from ASBR1 and one from ASBR2—throughout the enterprise. As a result, all OSPF routers choose a default route, with the packets destined for locations in the Internet eventually reaching one of the two ASBRs, which then forwards the packets into the Internet. From the Library of Alexey Evseenko 362 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Area 1 Redistribute BGP Summary Address 0.0.0.0 ASBR1 BGP ISP1 ABR1 Area 0 ABR2 Area 2 Legend: Default Routes ASBR2 BGP ISP2 Summary Address 0.0.0.0 Redistribute BGP Figure 9-6 Using ASBR Route Summarization to Advertise Summary Routes To meet the other design goal for using defaults—to get the routers in an area to use default routing to deliver packets to an ABR—the ABR could use the area range command to flood a default route into a single area. Again in Figure 9-6, if the design called for the routers in area 1 to use a default route to reach other destinations in the enterprise, the ABRs connected to area 1, like ABR1, could use the area 0 range 0.0.0.0 0.0.0.0 command. ABR1 would then advertise a default route into the area, as an LSA Type 3, and not advertise any of the other Type 3 LSAs known from area 0. The routers internal to area 1 would use their default route for packets destined to unknown destination addresses, but the ABRs would have full knowledge of the routes inside the enterprise and know how to forward the packets at that point. Even though you can use the summary-address and area range commands, most engineers use other methods to introduce and control default routes inside an OSPF domain. The first tool, the default-information originate OSPF subcommand, introduces a default route to be flooded throughout the OSPF domain. As a result, it is most useful for default routing to draw packets toward ASBRs connected to external networks. The other tool, stub areas, focuses on the other common use of default routes, controlling when ABRs flood default routes into a given area. This section examines both topics. Domain-Wide Defaults Using the default-information originate Command The OSPF subcommand default-information originate tells OSPF to create a Type 5 LSA (used for external routes) for a default route—0.0.0.0/0—and flood it like any other Type From the Library of Alexey Evseenko Chapter 9: Advanced OSPF Concepts 363 5 LSA. In other words, it tells the router to create and flood information about a default route throughout the OSPF domain. For example, consider a typical single multihomed Internet design, as shown in Figure 9-7. In this case, the enterprise has two Internet-connected routers, and the engineer wants to use default routing inside the enterprise to cause all the enterprise routers to send packets toward either ASBR1 or ASBR2. Area 12 B1 WAN1 Area 0 Core1 OSPF Default Metric 1 Default Route BGP ASBR2 10 Mbps ISP1 I1-1 B2 B3 Area 3 WAN2 Core2 Default Route BGP ASBR1 T/1 I2-1 OSPF Default Metric 30 ISP2 ISP3 Figure 9-7 Single Multihomed Internet Design Using Default Routes The default-information originate command tells the ASBRs to flood a default route into OSPF, but only if the ASBR itself has a default route in its IP routing table. This logic relies on the fact that the ASBRs typically either have a static default route pointing to the connected ISP router, or they learn a default route from the ISP using BGP. (In Figure 9-7, each ISP is advertising a default route.) All the routers then learn a default route, based on the Type 5 LSAs for 0.0.0.0/0 as flooded by the ASBRs. Because a router withdraws its OSPF default route when its own IP route to 0.0.0.0/0 fails, OSPF allows the design in Figure 9-7 to fail over to the other default route. When all is well, both ISP1 and ISP2 advertise a default route to the enterprise using BGP, so both ASBR1 and ASBR2 have a route to 0.0.0.0/0. As shown in the figure, ASBR2 has been configured to advertise its OSPF default with a lower metric (1) than does ASBR1 (metric 30). Therefore, the enterprise routers will forward traffic to the Internet through ASBR2. However, if ISP1 quits advertising that default with BGP, or if BGP fails between ASBR2 and ISP1’s I1-1 router, ASBR2 will withdraw its OSPF default route. The only remaining OSPF default route will be the one that leads to ASBR1, making use of the backup default route. From the Library of Alexey Evseenko 364 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide The full command syntax, as shown here, provides several optional parameters that impact its operation: default-information originate [always] [metric metric-value] [metric-type typevalue] [route-map map-name] The following list summarizes the features of the default-information originate OSPF subcommand: ■ With all default parameters, it injects a default route into OSPF, as an External Type 2 route, using a Type 5 LSA, with metric 1, but only if a default route exists in that router’s routing table. ■ With the always parameter, the default route is advertised even if there is no default route in the router’s routing table. ■ The metric keyword defines the metric listed for the default route (default 1). ■ The metric-type keyword defines whether the LSA is listed as external Type 1 or external Type 2 (default). ■ The decision of when to advertise, and when to withdraw, the default route is based on matching the referenced route-map with a permit action. When configured, OSPF will flood the default route throughout the OSPF routing domain, drawing traffic to each ASBR, as shown earlier in Figure 9-6. Note The type of external OSPF route (Type 1 or Type 2) is explained more fully in Chapter 10. Stubby Areas As mentioned earlier, the two most common reasons to consider using default routes are to drive all Internet-destined traffic toward Internet-connected routers in an enterprise and to drive traffic inside an area toward an ABR in that area. This second design choice allows the routers in an area to use default routes for forwarding packets to ABRs, rather than more specific routes. Using default routes inside an area reduces memory consumption and CPU processing time on routers inside the area, because the routers in that area can have fewer LSAs in their LSDBs. The OSPF stub router feature provides engineers with a very simple way to enable the function of flooding default routes inside an area, with those default routes driving IP packets back toward the ABRs attached to that area. ABRs in stub areas advertise a default route into the stub area. At the same time, the ABR chooses to not advertise external routes (Type 5 LSAs) into the area. Similarly, the ABR chooses to not advertise interarea routes (in Type 3 LSAs) into the area. As a result, all routers in the stub area can still route to the destinations (based on default route information), and the routers require less memory and processing. From the Library of Alexey Evseenko Chapter 9: Advanced OSPF Concepts 365 The following list summarizes these features of stub areas for easier study and review: ■ ABRs create a default route, using a Type 3 LSA, listing subnet 0.0.0.0 and mask 0.0.0.0, and flood that into the stub area. ■ ABRs do not flood Type 5 LSAs into the stub area. ■ ABRs might not flood other Type 3 LSAs into the area. ■ The default route has a metric of 1 unless otherwise configured using the router subcommand area area-num default-cost cost. ■ Routers inside stub areas cannot redistribute external routes into the stubby area, because that would require a Type 5 LSA in the area. ■ All routers in the area must be configured to be stubby; if not, neighbor relationships cannot form between potential neighbors based on this mismatched configuration. Figure 9-8 shows a familiar design in which area 34 will become a stub area. The design shows three external routes and lists three of many internal routes inside area 0. The figure shows ABRs R1 and R2 advertising defaults into area 34. Area 34 Default R3 R1 Default Default Area 0 External 11.11.0.0/16 11.12.0.0/16 11.13.0.0/16 SW1 Data Center 10.16.11.0/24 10.16.12.0/24 10.16.13.0/24 R4 Default R2 SW2 Figure 9-8 Stubby Area Design Figure 9-8 demonstrates the core feature common to all types of stub areas: The ABRs flood a default route into the area. The routers inside the area can then calculate their best default route. Next, the text examines the different types of OSPF areas, before moving on to the details of configuration and verification. Introducing Stubby Area Types Even within the realm of stubby areas, four types of stubby areas exist: stub, totally stubby, not-so-stubby areas (NSSA), and totally NSSA. From the Library of Alexey Evseenko 366 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Two types of stubby areas have the word “totally” as part of the name, and two do not. The differences between those with the word “totally” and those without have to do with whether Type 3 LSAs are flooded into the area. The rules are ■ For all types of stubby areas, the ABR always filters Type 5 (external) LSAs. ■ For totally stubby and totally NSSA areas, the ABR also filters Type 3 LSAs. ■ For stubby and NSSA areas—those without the word “totally” in the name—the ABRs do not filter Type 3 LSAs, advertising Type 3 LSAs as normal. For example, consider the diagram shown in Figure 9-8, with area 34 as simply a stub area. As for all types, the ABRs each advertise a default route into area 34. As for all stubby area types, the ABRs filter all Type 5 LSAs, which means that the three Type 5 LSAs for 11.11.0.0/16, 11.12.0.0/16, and 11.13.0.0/16 would not exist in the LSDBs for area 34. Finally, because the area is not a totally stubby area, the ABRs do create and flood Type 3 LSAs for interarea routes as usual. So, they flood LSAs for the 10.16.11.0/24, 10.16.12.0/24, and 10.16.13.0/24 subnets listed in the figure. Next, consider a similar scenario but with a totally stubby area for area 5, as seen back in Figure 9-3. As for all stubby area types, the ABRs each advertise a default route into area 5. As for all stubby area types, the ABRs filter all Type 5 LSAs, which means that the three Type 5 LSAs for 11.11.0.0/16, 11.12.0.0/16, and 11.13.0.0/16 would not exist in the LSDBs for area 5. The key difference exists in that the ABRs also would not create and flood Type 3 LSAs for interarea routes as usual, so they would not advertise Type 3 LSAs for the 10.16.11.0/24, 10.16.12.0/24, and 10.16.13.0/24 subnets listed in the figure into area 5. The other difference in stubby area types relates to whether the name uses NSSA (NSSA or totally NSSA) or not (stubby, totally stubby). Stubby area types that use the NSSA name can redistribute external routes into the area; stubby area types without NSSA in the name cannot. Configuring and Verifying Stubby Areas Configuring stub and totally stubby areas requires only three commands, but with at least one command on each router, as listed in Table 9-3. Table 9-3 Stub Area Configuration Options Key Topic Action Configuration Steps Stubby Configure area area-id stub on each router in the area. Totally stubby Configure the area area-id stub no-summary command on the ABRs. Configure area area-id stub, without the no-summary keyword, on all other routers in the area. Set the metric of the default route Configure area area-id default-cost metric on an ABR (can differ from ABR to ABR). Default value is 1. From the Library of Alexey Evseenko Chapter 9: Advanced OSPF Concepts 367 Note For totally stubby areas, only the ABRs must have the no-summary keyword on the area area-id stub no-summary command. However, including this keyword on internal routers does not cause a problem. Figure 9-9 shows a more detailed view of area 34 from Figure 9-8. By making area 34 a stub area, ABRs R1 and R2 will not flood Type 3 LSAs into area 34—other than the Type 3 LSAs for the default routes. Example 9-5 shows the configuration on Routers R1, R2, and R3 from Figure 9-9. Area 34 (Stubby) Fa0/0 10.10.34.3/24 S0/0/0.1 13.3 R3 S0/0/0.2 23.3 Fa0/0 10.10.34.4/24 S0/0/0.1 14.4 R4 S0/0/0.2 24.4 S0/0/0.3 13.1 R1 S0/0/0.4 14.1 Figure 9-9 Detailed View of Area 34 Example 9-5 Stub Area Configuration ! On Router R1: router ospf 1 area 34 stub auto-cost reference-bandwidth 1000 ! interface s0/0/0.3 point-to-point ip ospf 1 area 34 ! interface s0/0/0.4 point-to-point S0/0/0.3 23.2 S0/0/0.4 24.2 R2 From the Library of Alexey Evseenko 368 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide ip ospf 1 area 34 ! On Router R2: router ospf 2 area 34 stub auto-cost reference-bandwidth 1000 ! interface s0/0/0.3 point-to-point ip ospf 2 area 34 ! interface s0/0/0.4 point-to-point ip ospf 2 area 34 ! On Router R3: router ospf 3 area 34 stub auto-cost reference-bandwidth 1000 ! interface s0/0/0.1 point-to-point ip ospf 3 area 34 ip ospf 3 cost 500 ! interface s0/0/0.2 point-to-point ip ospf 3 area 34 ! interface fa0/0 ip ospf 3 area 34 With the configuration as shown, both R1 and R2 will inject a default route, represented as a Type 3 LSA, with default metric 1. They will also not flood the Type 5 LSAs into area 34. Example 9-6 confirms these facts, showing the Type 3 LSA for the summary, and the absence of Type 5 LSAs in the output of the show ip ospf database command on Router R3. Example 9-6 Evidence of Type 5 LSAs Existing, Disappearing, and Defaults Appearing ! Before making Area 34 stubby: R3# show ip ospf database | begin AS External Type-5 AS External Link States Link ID 11.11.0.0 12.12.0.0 13.13.0.0 ADV Router Age 7.7.7.7 929 7.7.7.7 845 7.7.7.7 835 Seq# Checksum Tag 0x80000001 0x00016D 0 0x80000001 0x00E784 0 0x80000001 0x00CE9B 0 From the Library of Alexey Evseenko Chapter 9: Advanced OSPF Concepts 369 ! After making area 34 stubby – no output from the next command. R3# show ip ospf database | begin AS External R3# ! The database for area 34 now has two Type 3 LSAs for default routes. R3# show ip ospf database OSPF Router with ID (3.3.3.3) (Process ID 3) Router Link States (Area 34) ! Lines omitted for brevity – skipped to "Summary Net" (Type 3) section Summary Net Link States (Area 34) Link ID ADV Router Age Seq# Checksum 0.0.0.0 1.1.1.1 692 0x80000001 0x0093A6 0.0.0.0 2.2.2.2 686 0x80000001 0x0075C0 10.10.5.0 1.1.1.1 692 0x8000000E 0x00445C 10.10.5.0 2.2.2.2 686 0x8000000F 0x002477 10.10.12.0 1.1.1.1 692 0x8000000E 0x0054AF 10.10.12.0 2.2.2.2 686 0x8000000E 0x0036C9 ! Many Type 3 LSAs omitted for brevity's sake Example 9-6 shows the existence of the Type 5 external LSAs before area 34 became a stubby area, and the disappearance of those same LSAs after it was made a stubby area. The show ip ospf database command then shows two LSAs that list default routes, one learned from RID 1.1.1.1 (R1) and one learned from RID 2.2.2.2 (R2). Example 9-7 continues the verification of how stub areas work with three more commands. Example 9-7 Three External Routes Before and None After Changing to Stubby ! Next, R3 confirms it thinks area 34 is a stub area R3# show ip ospf Routing Process "ospf 3" with ID 3.3.3.3 Start time: 00:00:38.756, Time elapsed: 07:51:19.720 ! lines omitted for brevity Area 34 Number of interfaces in this area is 3 It is a stub area Area has no authentication SPF algorithm last executed 00:11:21.640 ago SPF algorithm executed 18 times Area ranges are From the Library of Alexey Evseenko 370 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Number of LSA 29. Checksum Sum 0x0D3E01 Number of opaque link LSA 0. Checksum Sum 0x000000 Number of DCbitless LSA 0 Number of indication LSA 0 Number of DoNotAge LSA 0 Flood list length 0 ! The next command shows all Type 3 (summary) LSAs of prefix 0.0.0.0 R3# show ip ospf database summary 0.0.0.0 OSPF Router with ID (3.3.3.3) (Process ID 3) Summary Net Link States (Area 34) Routing Bit Set on this LSA LS age: 879 Options: (No TOS-capability, DC, Upward) LS Type: Summary Links(Network) Link State ID: 0.0.0.0 (summary Network Number) Advertising Router: 1.1.1.1 LS Seq Number: 80000001 Checksum: 0x93A6 Length: 28 Network Mask: /0 TOS: 0 Metric: 1 LS age: 873 Options: (No TOS-capability, DC, Upward) LS Type: Summary Links(Network) Link State ID: 0.0.0.0 (summary Network Number) Advertising Router: 2.2.2.2 LS Seq Number: 80000001 Checksum: 0x75C0 Length: 28 Network Mask: /0 TOS: 0 Metric: 1 ! The next command lists statistics of the number of LSAs of each type – ! note a total of 0 Type 5 LSAs, but many Type 3 LSAs R3# show ip ospf database database-summary OSPF Router with ID (3.3.3.3) (Process ID 3) Area 34 database summary LSA Type Count Delete Maxage From the Library of Alexey Evseenko Router 4 0 0 Network 1 0 0 Summary Net 24 0 0 Summary ASBR 0 0 0 Type-7 Ext 0 0 0 Prefixes redistributed in Type-7 0 Opaque Link 0 0 0 Opaque Area 0 0 0 Subtotal 29 0 0 Chapter 9: Advanced OSPF Concepts 371 Process 3 database summary LSA Type Count Delete Maxage Router 4 0 0 Network 1 0 0 Summary Net 24 0 0 Summary ASBR 0 0 0 Type-7 Ext 0 0 0 Opaque Link 0 0 0 Opaque Area 0 0 0 Type-5 Ext 0 0 0 Prefixes redistributed in Type-5 0 Opaque AS 0 0 0 Non-self 28 Total 29 0 0 Following are the three commands in Example 9-7, in order: ■ show ip ospf: Confirms with one (highlighted) line that the router believes the area is a stub area. ■ show ip ospf database summary 0.0.0.0: By definition, this command lists all summary (Type 3) LSAs with a prefix of 0.0.0.0. It lists two such LSAs, created by R1 and R2 (RIDs 1.1.1.1 and 2.2.2.2, respectively), both with metric 1 (the default setting). ■ show ip ospf database database-summary: This command lists statistics about the numbers of and types of LSAs in the database. The counters show 0 Type 5 LSAs, and several Type 3 LSAs—confirming that the area, while stubby, is not totally stubby. Configuring and Verifying Totally Stubby Areas Configuring totally stubby areas requires almost no additional effort as compared with stubby areas. As listed earlier in Table 9-3, the only difference for totally stubby configuration versus stubby configuration is that the ABRs include the no-summary keyword on the area stub command. (no-summary refers to the fact that ABRs in totally stubby areas do not create/flood Type 3 summary LSAs.) From the Library of Alexey Evseenko 372 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Example 9-7 shows another example configuration, this time with area 34 as a totally stubby area. Additionally, the default routes’ metrics have been set so that both R3 and R4 will use R1 as their preferred ABR, by setting R2’s advertised summary to a relatively high metric (500). Example 9-8 just shows the changes to the configuration shown in Example 9-4. Example 9-8 Totally Stubby Area Configuration ! On Router R1: router ospf 1 area 34 stub no-summary auto-cost reference-bandwidth 1000 ! On Router R2: router ospf 2 area 34 stub no-summary area 34 default-cost 500 auto-cost reference-bandwidth 1000 The configuration of a totally stubby area reduces the size of the LSDB in area 34, because the ABRs no longer flood Type 3 LSAs into area 34, as shown in Example 9-9. R3 displays its LSDB, listing only two Summary (Type 3) LSAs—the two default routes advertised by the two ABRs, respectively. No other Type 3 LSAs exist, nor do any external (Type 5) or ASBR summary (Type 4) LSAs. Also, note that the example lists the OSPF routes known to R3. Interestingly, in the topology shown for area 34, R3 learns only three OSPF routes: the two intra-area routes for the subnets between R4 and the two ABRs plus the best default route. The default route has a metric of 501, based on R3’s S0/0/0.1 interface cost plus the cost 1 listed for R1’s Type 3 LSA for the default route. Example 9-9 Confirmation of the Effects of a Totally Stubby Area R3# show ip route Codes: C - connected, S - static, R - RIP, M - mobile, B - BGP D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2 E1 - OSPF external type 1, E2 - OSPF external type 2 i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2 ia - IS-IS inter area, * - candidate default, U - per-user static route o - ODR, P - periodic downloaded static route Gateway of last resort is 10.10.13.1 to network 0.0.0.0 10.0.0.0/8 is variably subnetted, 5 subnets, 2 masks C 10.10.13.0/29 is directly connected, Serial0/0/0.1 O 10.10.14.0/29 [110/657] via 10.10.34.4, 00:57:37, FastEthernet0/0 C 10.10.23.0/29 is directly connected, Serial0/0/0.2 From the Library of Alexey Evseenko O C O*IA Chapter 9: Advanced OSPF Concepts 373 10.10.24.0/29 [110/657] via 10.10.34.4, 00:57:37, FastEthernet0/0 10.10.34.0/24 is directly connected, FastEthernet0/0 0.0.0.0/0 [110/501] via 10.10.13.1, 00:24:35, Serial0/0/0.1 R3# show ip ospf database database-summary OSPF Router with ID (3.3.3.3) (Process ID 3) ! lines omitted for brevity Process 3 database summary LSA Type Count Delete Maxage Router 4 0 0 Network 1 0 0 Summary Net 2 0 0 Summary ASBR 0 0 0 Type-7 Ext 0 0 0 Opaque Link 0 0 0 Opaque Area 0 0 0 Type-5 Ext 0 0 0 Prefixes redistributed in Type-5 0 Opaque AS 0 0 0 Non-self 6 Total 7 0 0 R3# show ip ospf database | begin Summary Summary Net Link States (Area 34) Link ID 0.0.0.0 0.0.0.0 ADV Router 1.1.1.1 2.2.2.2 Age 1407 1506 Seq# Checksum 0x80000003 0x008FA8 0x80000004 0x00FF3E Following are the three commands in Example 9-9, in order: ■ show ip route: It lists a single interarea route—a default route, with destination 0.0.0.0/0. The output also lists this same next-hop information as the gateway of last resort. ■ show ip ospf database database-summary: The statistics still show no external Type 5 LSAs, just as when the area was stubby, but now show only two Type 3 LSAs, whereas before, several existed. ■ show ip ospf database | begin Summary: This command shows the output beginning with the Type 3 Summary LSAs. It lists two default route LSAs: one from R1 and one from R2. Examples 9-7 and 9-9 demonstrate the key differences between stub areas (they do see Type 3 LSAs) and totally stubby areas (which do not see Type 3 LSAs). Next, this section looks at the different types of not-so-stubby areas. From the Library of Alexey Evseenko 374 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide The Not-So-Stubby Area (NSSA) Stub and totally stubby areas do not allow external routes to be injected into a stubby area—a feature that originally caused some problems. The problem is based on the fact that stub areas by definition should never learn a Type 5 LSA, and OSPF injects external routes into OSPF as Type 5 LSAs. These two facts together mean that a stubby area could not normally have an ASBR that was injecting external routes into the stub area. The not-so-stubby area (NSSA) option for stubby areas overcomes the restriction on external routes. The solution itself is simple: Because stubby areas can have no Type 5 LSAs, later OSPF RFCs defined a newer LSA type (Type 7) that serves the same purpose as the Type 5 LSA, but only for external routes in stubby areas. So, an NSSA area can act just like a stub area, except that routers can inject external routes into the area. Figure 9-10 shows an example, with four steps. The same stubby area 34 from the last few figures still exists; it does not matter at this point whether area 34 is totally stubby or simply stubby. 1 EIGRP Area 34 2 redistribute eigrp Area 0 R3 R1 R9 3 Type 7 LSAs SW1 4 Type 5 LSAs R4 R2 SW2 Figure 9-10 External Routes in an NSSA (34) The steps labeled in the figure are as follows: Step 1. ASBR R3 learns routes from some external source of routing information, in this case, EIGRP from R9. Step 2. An engineer configures route redistribution using the redistribute command, taking the routes learned with EIGRP and injecting them into OSPF. Step 3. R3 floods Type 7 LSAs throughout stub area 34. Step 4. ABRs R1 and R2 then create Type 5 LSAs for the subnets listed in the Type 7 LSAs, and flood these Type 5 LSAs into other areas, like area 0. Configuring NSSA works much like the configuration of stubby areas. For totally NSSAs, configure area area-number nssa no-summary instead of area area-number stub no-summary. For normal NSSAs, as with stub areas, omit the no-summary keyword. From the Library of Alexey Evseenko Chapter 9: Advanced OSPF Concepts 375 Additionally, normal NSSAs require that ABRs have the default-information-originate keyword specified, making the command on ABRs area area-number nssa defaultinformation-originate. Example 9-10 shows a sample with the configuration of a totally NSSA 34 from the network represented in the last four figures. Note that as with the area stub command, the area nssa command’s no-summary option is required only on the ABRs. Example 9-10 Totally NSSA Configuration and Verification ! On Router R1: router ospf 1 area 34 nssa no-summary ! On Router R2: router ospf 2 area 34 nssa no-summary area 34 default-cost 500 ! On Router R3: router ospf 3 area 34 nssa ! On Router R4: router ospf 4 area 34 nssa The same verification steps and commands can be used for NSSAs as were shown in the earlier examples for stub areas. In particular, the show ip ospf command states that the area is an NSSA. You can also see Type 7 LSAs in the OSPF LSDB after redistribution has been configured. Table 9-4 summarizes the key points regarding stubby areas. Table 9-4 OSPF Stubby Area Types Key Topic Area Type ABRs Flood Type 5 External LSAs into the Area? ABRs Flood Type 3 Summary LSAs into the Area? Stub No Yes Totally stubby No No NSSA No Yes Totally NSSA No No Allows Redistribution of External LSAs into the Stubby Area? No No Yes Yes From the Library of Alexey Evseenko 376 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Note Both types of totally stubby areas (totally stubby, totally NSSA) are Cisco proprietary. OSPF Version 3 The OSPF discussions thus far in this book focused on OSPF version 2 (OSPFv2). While OSPFv2 is feature-rich and widely deployed, it does have one major limitation in that it does not support the routing of IPv6 networks. Fortunately, OSPF version 3 (OSPFv3) does support IPv6 routing, and it can be configured to also support IPv4 routing. This section discusses two OSPFv3 configuration options: ■ The traditional approach ■ The OSPF Address Family approach The OSPF Address Family configuration approach is somewhat similar to Named EIGRP configuration, where you can have an IPv4 Address Family and an IPv6 Address Family hierarchically configured under the same routing protocol instance. This section begins by discussing some of the similarities and differences between OSPFv2 and OSPFv3. Then, the traditional OSPFv3 configuration is presented, followed by an explanation of the OSPF Address Family approach. OSPFv2 and OSPFv3 Comparison OSPFv3 bears many similarities to OSPFv2. For example, they both use interface cost as their metric; the same network types exist (that is, broadcast, point-to-point nonbroadcast, multiaccess, and virtual links); the same packet types are used; and LSAs behave in much the same way. However, a couple of OSPFv2 LSA types are renamed, and a couple of new LSAs are introduced. The LSA changes are as follows: Key Topic ■ Renamed LSAs: ■ Type 3: The Type 3 LSA is renamed as Interarea prefix LSA for ABRs. As with OSPFv2, this Type 3 LSA advertises one area’s internal networks with another area. This LSA is generated by an area border router (ABR). ■ Type 4: The Type 4 LSA is renamed Interarea prefix LSA for ASBRs. As with OSPFv2, this Type 4 LSA advertises information about how to reach an autonomous system boundary router (ASBR) to routers in a different area than the ASBR. Then, those routers wanting to reach an external network (that is, outside the OSPF autonomous system) use the Type 4 LSAs to determine the best path to reach the ASBR that will get them to a desired external network. From the Library of Alexey Evseenko Chapter 9: Advanced OSPF Concepts 377 ■ New LSAs: ■ Type 8: The Type 8 LSAs, called Link LSAs, only exist on a local link, where they are used by a router to advertise the router’s link-local address to all other routers on the same link. Additionally, the Type 8 LSA provides to routers on that link a listing of all IPv6 addresses associated with the link. OSPFv3 also uses the Type 8 LSA to set option bits for a specific network’s LSA. These bits give OSPFv3 more information about the nature of a network advertisement. As just one example, the NU (no unicast) bit indicates that a network should not be used in OSPF calculations. See RFC 5340 for a complete discussion of the option bits. ■ Type 9: Type 9 LSAs, called Intra-Area Prefix LSAs, can send information about IPv6 networks (including stub networks) attached to a router (similar to the Type 1 LSA for IPv4 networks). Additionally, a Type 9 LSA can send information about transit IPv6 network segments within an area (similar to the Type 2 LSA for IPv4 networks). OSPFv3 Traditional Configuration The traditional approach to OSPFv3 configuration involves creating an OSPF routing process, going into the interfaces that you want to participate in the OSPF process, and instructing those interfaces to be part of that process. The steps required to configure OSPFv3 using the traditional approach are as follows: Key Topic Step 1. Enable IPv6 unicast routing on the router (if it is not already enabled). This can be accomplished with the ipv6 unicast-routing global configuration mode command. Although not required, a best practice is to also enable Cisco Express Forwarding (CEF) for IPv6, using the ipv6 cef command, because CEF enables the router to make more efficient route lookups. Step 2. Start the OSPF process with the ipv6 router ospf process-id command, issued in global configuration mode. Step 3. (Optional) Configure a router ID for the OSPF process with the router-id rid command, where the rid is a 32-bit value, in router configuration mode. This router ID is commonly an IPv4 address of one of the router’s interfaces. If you do not statically configure a router ID, the router attempts to dynamically determine a router ID to use based on currently active IPv4 addresses on the router. However, if you do not set a router ID, and no active IPv4 addresses exist on the router, the OSPF process will fail to start. Step 4. Instruct one or more interfaces to participate in the OSPF routing process by entering the ipv6 ospf process-id area area_number command in interface configuration mode. To illustrate the traditional approach to OSPFv3 configuration, Examples 9-11, 9-12, 9-13, and 9-14 show a sample OSPFv3 configuration for the topology illustrated in Figure 9-11. From the Library of Alexey Evseenko 378 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Fa0/0 2006::1/64 Lo0 1.1.1.1/32 Lo0 2007::1111/64 2.2.2.2/32 Fa0/0 2001::1/64 2007::2222/64 Fa0/1 2002::1/64 SW1 R1 Area 0 Fa0/0 R2 2002::2/64 Area 2 2005S:1:2/0/64 R4 Lo0 SW3 S12/0105::1/64 Frame Relay 4.4.4.4/32 2007::4444/64 PPP S1/0 2003::2/64 Fa0/0 2004::1/64 S1/0 R3 2003::1/64 SW2 Area 1 Lo0 3.3.3.3/32 2007::3333/64 Figure 9-11 Sample IPv6 OSPFv3 Topology with Multiple Areas Example 9-11 Traditional OSPFv3 Configuration—Router R1 Key Topic ! Configuration on Router R1 ipv6 unicast-routing ipv6 cef ! interface Loopback0 ip address 1.1.1.1 255.255.255.255 ipv6 address 2007::1111/64 ipv6 ospf 1 area 0 ! interface FastEthernet0/0 ip address 10.1.1.1 255.255.255.0 ipv6 address 2001::1/64 ipv6 ospf 1 area 0 ! interface FastEthernet0/1 ip address 10.1.2.1 255.255.255.252 ipv6 address 2002::1/64 ipv6 ospf 1 area 0 ! ipv6 router ospf 1 router-id 1.1.1.1 passive-interface FastEthernet0/0 passive-interface Loopback0 From the Library of Alexey Evseenko Chapter 9: Advanced OSPF Concepts 379 Example 9-12 Traditional OSPFv3 Configuration—Router R2 !Configuration on Router R2 ipv6 unicast-routing ipv6 cef ! interface Loopback0 ip address 2.2.2.2 255.255.255.255 ipv6 address 2007::2222/64 ipv6 ospf 1 area 0 ! interface FastEthernet0/0 ip address 10.1.2.2 255.255.255.252 ipv6 address 2002::2/64 ipv6 ospf 1 area 0 ! interface Serial1/0 ip address 10.1.2.5 255.255.255.252 encapsulation ppp ipv6 address 2003::1/64 ipv6 ospf 1 area 1 ! interface Serial1/1 ip address 10.1.2.9 255.255.255.252 encapsulation frame-relay IETF ipv6 address 2005::1/64 ipv6 ospf 1 area 2 frame-relay map ipv6 2005::2 204 broadcast frame-relay map ipv6 FE80::C804:DFF:FE24:0 204 broadcast frame-relay map ip 10.1.2.10 204 broadcast ! ipv6 router ospf 1 router-id 2.2.2.2 passive-interface Loopback0 Example 9-13 Traditional OSPFv3 Configuration—Router R3 !Configuration on Router R3 ipv6 unicast-routing ipv6 cef ! interface Loopback0 ip address 3.3.3.3 255.255.255.255 ipv6 address 2007::3333/64 ipv6 ospf 1 area 1 ! interface FastEthernet0/0 From the Library of Alexey Evseenko 380 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide ip address 10.1.3.1 255.255.255.0 ipv6 address 2004::1/64 ipv6 ospf 1 area 1 ! interface Serial1/0 ip address 10.1.2.6 255.255.255.252 encapsulation ppp ipv6 address 2003::2/64 ipv6 ospf 1 area 1 ! ipv6 router ospf 1 router-id 3.3.3.3 passive-interface FastEthernet0/0 passive-interface Loopback0 Example 9-14 Traditional OSPFv3 Configuration—Router R4 !Configuration on Router R4 ipv6 unicast-routing ipv6 cef ! interface Loopback0 ip address 4.4.4.4 255.255.255.255 ipv6 address 2007::4444/64 ipv6 ospf 1 area 2 ! interface FastEthernet0/0 ip address 10.1.4.1 255.255.255.0 ipv6 address 2006::1/64 ipv6 ospf 1 area 2 ! interface Serial1/0 ip address 10.1.2.10 255.255.255.252 encapsulation frame-relay IETF ipv6 address 2005::2/64 ipv6 ospf 1 area 2 frame-relay map ipv6 2005::1 402 broadcast frame-relay map ipv6 FE80::C802:1FF:FEC0:0 402 broadcast frame-relay map ip 10.1.2.9 402 broadcast ! ipv6 router ospf 1 router-id 4.4.4.4 passive-interface FastEthernet0/0 passive-interface Loopback0 From the Library of Alexey Evseenko Chapter 9: Advanced OSPF Concepts 381 In each of the four preceding examples, notice that an OSPF routing process was started with the ipv6 router ospf process-id command, and a router ID was associated with each routing process using the router-id rid command. Additionally, under router configuration mode, a passive-interface interface-id command was issued for each interface not connecting to another OSPF-speaking router. This prevents unnecessarily sending OSPF messages out of those interfaces. These examples illustrate how an interface is made to participate in an OSPFv3 routing process. Specifically, you enter interface configuration mode and enter the ipv6 ospf process-id area area_number command. Note Routers R2 and R4 have a series of frame-relay map commands. This is because these configurations are for IPv6 over Frame Relay, an NBMA network. Interestingly, on some NBMA networks, you need to statically configure the mapping of IPv6 addresses to Layer 2 circuit identifiers (for example, Data-Link Connection Identifiers [DLCI] in Frame Relay networks). Verification can be performed using the same commands you used to verify OSPFv2 configurations, except ip is replaced with ipv6. For example, instead of issuing the show ip ospf interface brief command, as you would with OSPFv2 to get a brief listing of OSPF-speaking interfaces, you would issue the show ipv6 ospf interface brief command for OSPFv3. The following examples provide sample output from a collection of verification commands. Example 9-15 shows sample output from the show ipv6 ospf interface brief command, issued on Router R2. The output from this command indicates that four interfaces on Router R2 are participating in the OSPFv3 routing process, along with the area membership for each interface. Additionally, the interface costs are listed and the number of neighbors (if any) residing off of each interface is listed. Example 9-15 Viewing Interfaces Participating in an OSPFv3 Process R2# show ipv6 ospf interface brief Interface PID Area Intf ID Lo0 1 0 8 Fa0/0 1 0 2 Se1/0 1 1 3 Se1/1 1 2 4 Cost State Nbrs F/C 1 LOOP 0/0 1 BDR 1/1 64 P2P 1/1 64 DR 0/0 In Example 9-16, the show ipv6 ospf neighbor command is used to create a listing of OSPFv3 neighbors. Interestingly, while Routers R1 (1.1.1.1) and R3 (3.3.3.3) are neighbors, Router R2 is not a neighbor. From the Library of Alexey Evseenko 382 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Example 9-16 Viewing OSPFv3 Neighbors R2# show ipv6 ospf neighbor OSPFv3 Router with ID (2.2.2.2) (Process ID 1) Neighbor ID 1.1.1.1 3.3.3.3 Pri State 1 FULL/DR 0 FULL/ - Dead Time 00:00:36 00:00:30 Interface ID 3 3 Interface FastEthernet0/0 Serial1/0 Before reading on, pause for a moment and consider what might be happening to prevent this neighborship from forming. Recall that a nonbroadcast multiaccess (NBMA) network, as the name suggests, does not support broadcasts (or multicasts). Therefore, routers belonging to an NBMA network do not dynamically discover one another. Instead, you need to statically configure a neighbor on at least one of the routers on the NBMA network. To resolve the specific issue seen in Example 9-16, an ipv6 ospf neighbor neighbor_ ipv6_address command is given on Router R2, pointing to Router R4’s link-local address for the Frame Relay link interconnecting Routers R2 and R4. This command is shown in Example 9-17, along with a verification that Router R4 then appears as Router R2’s neighbor. Example 9-17 Statically Configuring a Neighbor on an NBMA Network R2# conf term R2(config)# interface s 1/1 R2(config-if)# ipv6 ospf neighbor FE80::C804:DFF:FE24:0 R2(config-if)# end R2# show ipv6 ospf neigh OSPFv3 Router with ID (2.2.2.2) (Process ID 1) Neighbor ID 1.1.1.1 3.3.3.3 4.4.4.4 Pri State 1 FULL/DR 0 FULL/ 1 FULL/DR Dead Time 00:00:35 00:00:32 00:01:42 Interface ID 3 3 3 Interface FastEthernet0/0 Serial1/0 Serial1/1 As a final OSPFv3 verification command, consider the output of the show ipv6 ospf database command issued on Router R1, as seen in Example 9-18. Example 9-18 Viewing the Contents of the OSPFv3 Link-State Database R1# show ipv6 ospf database OSPFv3 Router with ID (1.1.1.1) (Process ID 1) Router Link States (Area 0) From the Library of Alexey Evseenko ADV Router 1.1.1.1 2.2.2.2 Age 1490 1491 Chapter 9: Advanced OSPF Concepts 383 Seq# Fragment ID Link count Bits 0x80000002 0 1 None 0x80000001 0 1 B Net Link States (Area 0) ADV Router 1.1.1.1 Age 1490 Seq# Link ID 0x80000001 3 Rtr count 2 Inter Area Prefix Link States (Area 0) ADV Router 2.2.2.2 2.2.2.2 2.2.2.2 2.2.2.2 2.2.2.2 2.2.2.2 Age 1482 1482 1342 1259 147 147 Seq# Prefix 0x80000001 2003::/64 0x80000001 2005::/64 0x80000001 2007::3333/128 0x80000001 2004::/64 0x80000001 2007::4444/128 0x80000001 2006::/64 Link (Type-8) Link States (Area 0) ADV Router 1.1.1.1 2.2.2.2 1.1.1.1 Age 1855 1491 1876 Seq# Link ID 0x80000001 3 0x80000001 2 0x80000001 2 Interface Fa0/1 Fa0/1 Fa0/0 Intra Area Prefix Link States (Area 0) ADV Router 1.1.1.1 1.1.1.1 2.2.2.2 Age 1490 1490 1224 Seq# Link ID 0x80000004 0 0x80000001 3072 0x80000001 0 Ref-lstype Ref-LSID 0x2001 0 0x2002 3 0x2001 0 In the output shown in Example 9-18, Type 1 LSAs show up as Router Link States, just as they did with OSPFv2. Also like OSPFv3, Type 2 LSAs show up as Net Link States. However, the Type 3 LSAs have been renamed from Summary Net Link States to InterArea Prefix Link States. Also, as described earlier in this chapter, OSPFv3 introduces a couple of new LSA types, both of which are visible in this output. Specifically, OSPFv3 introduced Type 8 LSAs (which appear as Link (Type-8) Link States in the output) and Type 9 LSAs (which appear as Intra-Area Prefix Link States). For details about what these new LSA types do, refer to the “OSPFv2 and OSPFv3 Comparison” section, earlier in this chapter. From the Library of Alexey Evseenko 384 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide OSPFv3 Address Family Configuration Somewhat similar to Named EIGRP, the OSPFv3 Address Family configuration approach lets you support the routing of both IPv4 and IPv6 under a single OSPF process. With such a configuration, there is a single link-state database containing information for both IPv4 and IPv6 networks. The steps to configure OSPFv3 using the Address Family approach are as follows: Key Topic Step 1. Step 2. Start the OSPFv3 routing process with the router ospfv3 process-id command. (Optional) Configure a router ID with the router-id rid command. Step 3. Create an Address Family for IPv4 and/or IPv6 with the address-family {ipv4 | ipv6} unicast command. Step 4. Enter interface configuration mode for the interface(s) that you want to participate in the OSPF process, and enter the ospfv3 process-id {ipv4 | ipv6} area area_number command. Note Even though the OSPFv3 Address Family configuration approach supports both IPv4 and/or IPv6 networks, it will not peer with a router using an OSPFv2 configuration. Notice that the topology in Figure 9-12 is configured with both IPv4 and IPv6 addresses, and it is configured with OSPFv3. Examples 9-19, 9-20, 9-21, and 9-22 show the OSPFv3 configuration for each router, to support the routing of both IPv4 and IPv6 networks. Fa0/0 10.1.4.1/24 2006::1/64 Lo0 1.1.1.1/32 Lo0 Fa0/0 10.1.1.1/24 2001::1/64 2007::1111/64 2.2.2.2/32 Fa0/1 2007::2222/64 10.1.2.1/30 2002::1/64 Area120.12.20S.01150/:0/:320/64 R4 Lo0 SW3 S11/012.010.25.:9:1/3/604 4.4.4.4/32 Frame 2007::4444/64 Relay S1/0 PPP 10.1.2.6/30 2003::2/64 Fa0/0 10.1.3.1/24 2004::1/64 SW1 R1 Fa0/0 R2 S1/0 R3 10.1.2.2/30 10.1.2.5/30 SW2 Area 0 2002::2/64 2003::1/64 Area 1 Lo0 3.3.3.3/32 2007::3333/64 Figure 9-12 Sample IPv4 and IPv6 OSPFv3 Address Family Topology with Multiple Areas From the Library of Alexey Evseenko Chapter 9: Advanced OSPF Concepts 385 Example 9-19 OSPFv3 Address Family Configuration on Router R1 Key Topic ipv6 unicast-routing ipv6 cef ! interface Loopback0 ip address 1.1.1.1 255.255.255.255 ipv6 address 2007::1111/64 ospfv3 1 ipv6 area 0 ospfv3 1 ipv4 area 0 ! interface FastEthernet0/0 ip address 10.1.1.1 255.255.255.0 ipv6 address 2001::1/64 ospfv3 1 ipv6 area 0 ospfv3 1 ipv4 area 0 ! interface FastEthernet0/1 ip address 10.1.2.1 255.255.255.252 ipv6 address 2002::1/64 ospfv3 1 ipv6 area 0 ospfv3 1 ipv4 area 0 ! router ospfv3 1 router-id 1.1.1.1 ! address-family ipv4 unicast passive-interface FastEthernet0/0 passive-interface Loopback0 exit-address-family ! address-family ipv6 unicast passive-interface FastEthernet0/0 passive-interface Loopback0 maximum-paths 32 Example 9-20 OSPFv3 Address Family Configuration on Router R2 ipv6 unicast-routing ipv6 cef ! interface Loopback0 ip address 2.2.2.2 255.255.255.255 ipv6 address 2007::2222/64 ospfv3 1 ipv6 area 0 ospfv3 1 ipv4 area 0 ! From the Library of Alexey Evseenko 386 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide interface FastEthernet0/0 ip address 10.1.2.2 255.255.255.252 ipv6 address 2002::2/64 ospfv3 1 ipv6 area 0 ospfv3 1 ipv4 area 0 ! interface Serial1/0 ip address 10.1.2.5 255.255.255.252 encapsulation ppp ipv6 address 2003::1/64 ospfv3 1 ipv6 area 1 ospfv3 1 ipv4 area 1 ! interface Serial1/1 ip address 10.1.2.9 255.255.255.252 encapsulation frame-relay IETF ipv6 address 2005::1/64 ospfv3 neighbor FE80::C800:AFF:FE20:0 ospfv3 1 neighbor FE80::C800:AFF:FE20:0 ospfv3 1 ipv4 area 2 ospfv3 1 ipv6 area 2 frame-relay map ipv6 FE80::C800:AFF:FE20:0 204 broadcast frame-relay map ip 10.1.2.10 204 broadcast frame-relay map ipv6 2005::2 204 broadcast ! router ospfv3 1 router-id 2.2.2.2 ! address-family ipv4 unicast passive-interface Loopback0 exit-address-family ! address-family ipv6 unicast passive-interface Loopback0 maximum-paths 32 area 2 stub no-summary exit-address-family Example 9-21 OSPFv3 Address Family Configuration on Router R3 ipv6 unicast-routing ipv6 cef ! interface Loopback0 ip address 4.4.4.4 255.255.255.255 ipv6 address 2007::4444/64 From the Library of Alexey Evseenko Chapter 9: Advanced OSPF Concepts 387 ospfv3 1 ipv6 area 2 ospfv3 1 ipv4 area 2 ! interface FastEthernet0/0 ip address 10.1.4.1 255.255.255.0 ipv6 address 2006::1/64 ospfv3 1 ipv4 area 2 ospfv3 1 ipv6 area 2 ! interface Serial1/0 ip address 10.1.2.10 255.255.255.252 encapsulation frame-relay IETF ipv6 address 2005::2/64 ospfv3 1 neighbor FE80::C803:AFF:FEB8:0 ospfv3 1 ipv4 area 2 ospfv3 1 ipv6 area 2 frame-relay map ipv6 FE80::C803:AFF:FEB8:0 402 broadcast frame-relay map ip 10.1.2.9 402 broadcast frame-relay map ipv6 2005::1 402 broadcast ! router ospfv3 1 router-id 4.4.4.4 ! address-family ipv4 unicast passive-interface FastEthernet0/0 passive-interface Loopback0 exit-address-family ! address-family ipv6 unicast passive-interface FastEthernet0/0 passive-interface Loopback0 area 2 stub no-summary exit-address-family Example 9-22 OSPFv3 Address Family Configuration on Router R4 ipv6 unicast-routing ipv6 cef ! interface Loopback0 ip address 3.3.3.3 255.255.255.255 ipv6 address 2007::3333/64 ospfv3 1 ipv4 area 1 ospfv3 1 ipv6 area 1 ! interface FastEthernet0/0 From the Library of Alexey Evseenko 388 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide ip address 10.1.3.1 255.255.255.0 ipv6 address 2004::1/64 ospfv3 1 ipv6 area 1 ospfv3 1 ipv4 area 1 ! interface Serial1/0 ip address 10.1.2.6 255.255.255.252 encapsulation ppp ipv6 address 2003::2/64 ospfv3 1 ipv6 area 1 ospfv3 1 ipv4 area 1 ! router ospfv3 1 router-id 3.3.3.3 ! address-family ipv4 unicast passive-interface FastEthernet0/0 passive-interface Loopback0 exit-address-family ! address-family ipv6 unicast passive-interface FastEthernet0/0 passive-interface Loopback0 area 2 stub no-summary exit-address-family In addition to the OSPFv3 configuration steps given earlier, these examples have a few optional features configured. For example, each router has one or more passive interfaces specified. Interestingly, even though the passive-interface interface_identifier command appears under Address Family configuration mode for both IPv4 and IPv6, those commands were entered under router configuration mode. The commands were then automatically copied down to the various Address Families configured under the router process. Also, the maximum-paths 32 command is entered under the IPv6 Address Family on Routers R1 and R2, illustrating that OSPFv3 allows you to load-balance across as many as 32 equal-cost paths. Additionally, notice that Routers R2 and R4 have area 2 configured as a totally stubby area, with the area 2 stub no-summary command. This option dramatically reduces the number of OSPFv3 routes that appear on Router R4, as illustrated in Example 9-23. This example contrasts the multiple OSPFv3 routes on Router R1 (which has all its interfaces residing in area 0) and the single summary OSPFv3 route on Router R4 (which has all its interfaces residing in area 2). From the Library of Alexey Evseenko Chapter 9: Advanced OSPF Concepts 389 Example 9-23 Verifying the Effect of a Totally Stubby Area Configuration !OSPFv3 Routes on R1 R1# show ip route ospfv3 Codes: L - local, C - connected, S - static, R - RIP, M - mobile, B - BGP D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2 E1 - OSPF external type 1, E2 - OSPF external type 2 i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2 ia - IS-IS inter area, * - candidate default, U - per-user static route o - ODR, P - periodic downloaded static route, H - NHRP, l - LISP + - replicated route, % - next hop override Gateway of last resort is not set 2.0.0.0/32 is subnetted, 1 subnets O 2.2.2.2 [110/1] via 10.1.2.2, 01:20:19, FastEthernet0/1 3.0.0.0/32 is subnetted, 1 subnets O IA 3.3.3.3 [110/65] via 10.1.2.2, 01:14:36, FastEthernet0/1 4.0.0.0/32 is subnetted, 1 subnets O IA 4.4.4.4 [110/65] via 10.1.2.2, 00:33:00, FastEthernet0/1 10.0.0.0/8 is variably subnetted, 8 subnets, 3 masks O IA 10.1.2.4/30 [110/65] via 10.1.2.2, 01:20:19, FastEthernet0/1 O IA 10.1.2.8/30 [110/65] via 10.1.2.2, 01:20:19, FastEthernet0/1 O IA 10.1.3.0/24 [110/66] via 10.1.2.2, 01:14:26, FastEthernet0/1 O IA 10.1.4.0/24 [110/66] via 10.1.2.2, 00:33:00, FastEthernet0/1 !OSPFv3 Routes on R4 R4# show ipv6 route ospf IPv6 Routing Table - default - 8 entries Codes: C - Connected, L - Local, S - Static, U - Per-user Static route B - BGP, R - RIP, H - NHRP, I1 - ISIS L1 I2 - ISIS L2, IA - ISIS interarea, IS - ISIS summary, D - EIGRP EX - EIGRP external, ND - ND Default, NDp - ND Prefix, DCE - Destination NDr - Redirect, O - OSPF Intra, OI - OSPF Inter, OE1 - OSPF ext 1 OE2 - OSPF ext 2, ON1 - OSPF NSSA ext 1, ON2 - OSPF NSSA ext 2, l - LISP OI ::/0 [110/65] via FE80::C803:AFF:FEB8:0, Serial1/0 Next, consider a few OSPFv3 verification commands. Example 9-24 shows output from the show ospfv3 neighbor command. Notice that one section of the output is for the IPv4 Address Family, and the other section is for the IPv6 Address Family. From the Library of Alexey Evseenko 390 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Example 9-24 Sample Output from the show ospfv3 neighbor Command R1# show ospfv3 neighbor OSPFv3 1 address-family ipv4 (router-id 1.1.1.1) Neighbor ID 2.2.2.2 Pri State 1 FULL/BDR Dead Time Interface ID 00:00:35 2 Interface FastEthernet0/1 OSPFv3 1 address-family ipv6 (router-id 1.1.1.1) Neighbor ID 2.2.2.2 Pri State 1 FULL/BDR Dead Time Interface ID 00:00:38 2 Interface FastEthernet0/1 Example 9-25 shows output from the show ospfv3 interface brief command. Again, a portion of the output is for the IPv4 Address Family, and another portion is for the IPv6 Address Family. Example 9-25 Sample Output from the show ospfv3 interface brief Command R1# show ospfv3 interface brief Interface PID Area Lo0 1 0 Fa0/0 1 0 Fa0/1 1 0 Lo0 1 0 Fa0/0 1 0 Fa0/1 1 0 AF ipv4 ipv4 ipv4 ipv6 ipv6 ipv6 Cost State Nbrs F/C 1 LOOP 0/0 1 DR 0/0 1 DR 1/1 1 LOOP 0/0 1 DR 0/0 1 DR 1/1 Example 9-26 provides sample output from the show ospfv3 database command. Note that OSPFv3’s single link-state database contains information for both IPv4 and IPv6 networks. Example 9-26 Sample Output from the show ospfv3 database Command R1# show ospfv3 database OSPFv3 1 address-family ipv4 (router-id 1.1.1.1) Router Link States (Area 0) ADV Router Age 1.1.1.1 677 2.2.2.2 917 Seq# Fragment ID Link count Bits 0x80000010 0 1 None 0x8000000E 0 1 B Net Link States (Area 0) ADV Router Age Seq# Link ID Rtr count From the Library of Alexey Evseenko 1.1.1.1 677 0x8000000D 3 Chapter 9: Advanced OSPF Concepts 391 2 Inter Area Prefix Link States (Area 0) ADV Router 2.2.2.2 2.2.2.2 2.2.2.2 2.2.2.2 2.2.2.2 2.2.2.2 Age 917 917 408 408 1920 1920 Seq# Prefix 0x8000000D 10.1.2.4/30 0x8000000D 10.1.2.8/30 0x8000000D 3.3.3.3/32 0x8000000D 10.1.3.0/24 0x8000000B 4.4.4.4/32 0x8000000B 10.1.4.0/24 ...OUTPUT OMITTED... OSPFv3 1 address-family ipv6 (router-id 1.1.1.1) Router Link States (Area 0) ADV Router Age 1.1.1.1 853 2.2.2.2 792 Seq# Fragment ID Link count Bits 0x80000010 0 1 None 0x8000000E 0 1 B Net Link States (Area 0) ADV Router Age 1.1.1.1 853 Seq# Link ID 0x8000000D 3 Rtr count 2 Inter Area Prefix Link States (Area 0) ADV Router 2.2.2.2 2.2.2.2 2.2.2.2 2.2.2.2 2.2.2.2 2.2.2.2 Age 545 282 282 1048 1048 1048 Seq# Prefix 0x8000000D 2003::/64 0x8000000D 2007::3333/128 0x8000000D 2004::/64 0x8000000B 2007::4444/128 0x8000000B 2006::/64 0x8000000B 2005::/64 ...OUTPUT OMITTED... Note Even though the preceding commands used a series of show ospfv3 commands, you can still use the more traditional show ipv6 ospf commands to verify your OSPFv3 Address Family configuration. From the Library of Alexey Evseenko 392 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Exam Preparation Tasks Planning Practice The CCNP ROUTE exam expects test takers to review design documents, create implementation plans, and create verification plans. This section provides some exercises that can help you to take a step back from the minute details of the topics in this chapter so that you can think about the same technical topics from the planning perspective. For each planning practice table, simply complete the table. Note that any numbers in parentheses represent the number of options listed for each item in the solutions in Appendix F, “Completed Planning Practice Tables.” Design Review Table Table 9-5 lists several design goals related to this chapter. If these design goals were listed in a design document, and you had to take that document and develop an implementation plan, what implementation options come to mind? For any configuration items, a general description can be used, without concern about the specific parameters. Table 9-5 Design Review Design Goal Possible Implementation Choices Covered in This Chapter When using OSPF, prevent the routers in sites for one division of the company from knowing IP routes for subnets in another division. (3) The design shows an enterprise that uses only OSPF. It lists a goal of keeping the LSDBs and routing tables in each area small. (3) The design lists a goal of extremely small LSDBs and IP routing tables on branch office routers. Which stub area types work best? (2) The design calls for the flooding of a domain-wide default route to draw traffic toward Internet-connected routers. The design requires the routing of both IPv4 and IPv6 networks. (2) From the Library of Alexey Evseenko Chapter 9: Advanced OSPF Concepts 393 Implementation Plan Peer Review Table Table 9-6 shows a list of questions that others might ask, or that you might think about, during a peer review of another network engineer’s implementation plan. Complete the table by answering the questions. Table 9-6 Notable Questions from This Chapter to Consider During an Implementation Plan Peer Review Question The plan shows a design with area 0, with different ABRs connecting area 0 to areas 1, 2, and 3. The configurations show Type 3 LSA filtering into the nonbackbone areas but not in the opposite direction. Could this configuration filter subnets in area 1 from being seen in area 2? Answer The design shows the configuration of Type 3 LSA filtering on an internal router in area 1. Could the filter have any effect? The plan shows the configuration of the area range command on an ABR. What is the metric for the summary route, and in what conditions will the ABR advertise the summary? The plan shows the configuration of the area 1 stub command for an area mostly located on the west coast of the United States. The company just bought another company whose sites are also on the west coast. What issues exist if you add links from the acquired company into area 1? The plan shows the configuration of the default-information originate always command on the one router to which Internet links connect. What happens to the default route when the Internet link fails, and what happens to packets destined for the Internet during this time? The plan calls for the routing of both IPv4 and IPv6 networks. What new, or renamed, LSA types might appear in an area’s link-state database? From the Library of Alexey Evseenko 394 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Create an Implementation Plan Table To practice skills useful when creating your own OSPF implementation plan, list in Table 9-7 configuration commands related to the configuration of the following features. You might want to record your answers outside the book, and set a goal to complete this table (and others like it) from memory during your final reviews before taking the exam. Table 9-7 Implementation Plan Configuration Memory Drill Feature Filter Type 3 LSAs from being sent into an area. Configuration Commands/Notes Filter the OSPF routes calculated on one router from being added to that one router’s routing table. Configure route summarization on ABRs. Configure route summarization on ASBRs. Configure the OSPF domain-wide advertisement of a default route. Configure stubby or totally stubby areas. Configure NSSAs or totally NSSAs. Start an OSPFv3 process, using the traditional configuration approach. Instruct an interface to participate in an OSPFv3 area, using the traditional configuration approach. Start an OSPFv3 process, using the Address Family configuration approach. Instruct an interface to participate in an OSPFv3 area, using the Address Family configuration approach. Choose Commands for a Verification Plan Table To practice skills useful when creating your own OSPF verification plan, list in Table 98 all commands that supply the requested information. You might want to record your answers outside the book, and set a goal to complete this table (and others like it) from memory during your final reviews before taking the exam. From the Library of Alexey Evseenko Chapter 9: Advanced OSPF Concepts 395 Table 9-8 Verification Plan Memory Drill Information Needed Display all IP routes for subnets in a range, regardless of prefix length. Display the contents of an IP prefix list. Display details of all Type 3 LSAs known to a router. Display details of all Type 5 external LSAs known to a router. Display the metric advertised in a summary route created by the area range command. Command(s) Display the metric advertised in a summary route created by the summary-address command. Discover whether a router resides in a stubby area, and if so, which kind. Confirm stubby area concepts by looking at the numbers of Type 3 and Type 5 LSAs known to a router. List the interfaces participating in a traditional OSPFv3 configuration. Display neighbors in a traditional OSPFv3 configuration. Display the contents of a router’s linkstate database using a traditional OSPFv3 configuration. List the interfaces participating in an IPv4 and/or IPv6 OSPFv3 routing process configured with the OSPFv3 Address Family configuration approach. Display IPv4 and/or IPv6 neighbors configured with the OSPFv3 Address Family configuration approach. Display the contents of a router’s link-state database, containing entries for IPv4 and/or IPv6 networks, using the OSPFv3 Address Family configuration approach. Note Some of the entries in this table may not have been specifically mentioned in this chapter but are listed in this table for review and reference. From the Library of Alexey Evseenko 396 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Review All the Key Topics Review the most important topics from inside the chapter, noted with the Key Topic icon in the outer margin of the page. Table 9-9 lists a reference of these key topics and the page numbers on which each is found. Table 9-9 Key Topics for Chapter 9 Key Topic Key Topic Element Description List Explanations of the features of the area range command List Explanations of the features of the summary- address command Table 9-2 OSPF Route Summarization Commands Table 9-3 Stub Area Configuration Options Table 9-4 OSPF Stubby Area Types List Renamed and new LSAs for OSPFv3 List Steps to configure OSPFv3 using the traditional approach Example 9-11 Traditional OSPFv3 Configuration—Router R1 List Steps to configure OSPFv3 using the Address Family configuration approach Example 9-19 OSPFv3 Address Family Configuration on Router R1 Page Number 357 360 361 366 375 376 377 378 384 385 Complete the Tables and Lists from Memory Print a copy of Appendix D, “Memory Tables,” (found on the CD) or at least the section for this chapter, and complete the tables and lists from memory. Appendix E, “Memory Tables Answer Key,” also on the CD, includes completed tables and lists to check your work. Define Key Terms Define the following key terms from this chapter, and check your answers in the glossary. Type 3 LSA filtering, stub area, totally stubby area, not-so-stubby area, Type 5 external LSA, OSPFv3, OSPFv3 Address Family From the Library of Alexey Evseenko This page intentionally left blank From the Library of Alexey Evseenko This chapter covers the following subjects: ■ Route Redistribution Basics: This section dis- cusses the reasons why designers might choose to use route redistribution, and how routing protocols redistribute routes from the IP routing table. ■ Redistribution in EIGRP: This section discusses the mechanics of how Cisco IOS redistributes routes from other sources into EIGRP. ■ Redistribution in OSPF: This section discusses the mechanics of how Cisco IOS redistributes routes from other sources into OSPF. ■ Redistribution with Route Maps and Distribution Lists: This section focuses on the functions available using route maps and distribute lists on the same router that performs redistribution into either EIGRP or OSPF. ■ Issues with Multiple Redistribution Points: This section examines the domain loop problem that can occur when multiple routers redistribute routes between the same two routing domains. This section also examines various solutions, including the setting of large metrics, setting the administrative distance, and using route tags. From the Library of Alexey Evseenko CHAPTER 10 Route Redistribution This chapter examines how routers can exchange routes between routing protocols through route redistribution. Specifically, this chapter begins by discussing the mechanics of what happens when the routes are redistributed. Then the discussion shifts to filtering and summarizing routes when redistributing, along with typical issues and solutions when multiple routers redistribute the same routes. This chapter examines how routers can exchange routes between routing protocols through route redistribution. Specifically, this chapter begins by discussing the mechanics of what happens when the routes are redistributed. Then the discussion shifts to filtering and summarizing routes when redistributing, along with typical issues and solutions when multiple routers redistribute the same routes. This chapter then looks at the methods by which a router can manipulate the routes being redistributed, beyond the settings of the metrics. This manipulation includes the filtering of routes and the setting of other values that can be associated with a route during the redistribution process. Next, this chapter examines a variety of design issues that occur when multiple redistribution points exist between routing domains. Many designs use multiple redistribution points for redundancy and even for load sharing. This redundancy creates some additional complexity. (This complexity has long been a favorite topic for the CCIE R/S Lab.) This chapter also shows methods of dealing with the design issues, including the manipulation of metrics, administrative distance, and route tags. “Do I Know This Already?” Quiz The “Do I Know This Already?” quiz allows you to assess whether you should read the entire chapter. If you miss no more than two of these 16 self-assessment questions, you might want to move ahead to the “Exam Preparation Tasks” section. Table 10-1 lists the major headings in this chapter and the “Do I Know This Already?” quiz questions covering the material in those headings so that you can assess your knowledge of these specific areas. The answers to the “Do I Know This Already?” quiz appear in Appendix A. From the Library of Alexey Evseenko 400 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Table 10-1 “Do I Know This Already?” Foundation Topics Section-to-Question Mapping Foundation Topics Section Route Redistribution Basics Questions 1–2 Redistribution into EIGRP Redistribution into OSPF Redistribution with route maps and distribute lists 3–5 6–8 9–12 Issues with multiple redistribution points 13–16 1. Which of the following answers is the least likely reason for an engineer to choose to use route redistribution? a. To exchange routes between merged companies b. To give separate control over routing to different parts of one company c. To support multiple router vendors d. To knit together an OSPF area if the area becomes discontiguous 2. For a router to successfully redistribute routes between OSPF and EIGRP, which of the following are true? (Choose two.) a. The router must have one routing protocol configured, but configuration for both routing protocols is not necessary. b. The router must have at least one working link connected to each routing domain. c. The redistribute command must be configured under EIGRP to send the routes to OSPF. d. The redistribute command should be configured under OSPF to take routes from EIGRP into OSPF. 3. Process EIGRP 1 is redistributing routes from process OSPF 2. Which of the following methods can be used to set the metrics of the redistributed routes? (Choose two.) a. Let the metrics default. b. Set the metric components using the redistribute command’s metric keyword. c. Set the metric components using the default-metric subcommand under router configuration mode. d. Set the integer (composite) metric using the redistribute command’s metric keyword. From the Library of Alexey Evseenko Chapter 10: Route Redistribution 401 4. Examine the following excerpt from the show ip eigrp topology 10.2.2.0/24 command on Router R1. Which answer can be verified as definitely true based on this output? External data: Originating router is 10.1.1.1 AS number of route is 1 External protocol is OSPF, external metric is 64 Administrator tag is 0 (0x00000000) a. R1 is the router that redistributed the route. b. R1’s metric to reach subnet 10.2.2.0/24 is 64. c. The route was redistributed on a router that has a router ospf 1 command configured. d. R1 is redistributing a route to prefix 10.2.2.0/24 into OSPF. 5. Router R1 has a connected route for 10.1.1.0/24 off interface Fa0/0. Interface Fa0/0 has been enabled for OSPF because of a router ospf 1 and network 10.1.1.0 0.0.0.255 area 0 command. R1 also has EIGRP configured, with the redistribute ospf 1 metric 1000 100 10 1 1500 command configured under EIGRP. Which of the following is true? a. R1 will not redistribute 10.1.1.0/24 into EIGRP, because R1 knows it as a con- nected route and not as an OSPF route. b. For any OSPF routes redistributed into EIGRP, the metric components include a value equivalent to 1 Mbps of bandwidth. c. For any OSPF routes redistributed into EIGRP, the metric components include a value equivalent to 100 microseconds of delay. d. No subnets of network 10.1.1.0 will be redistributed because of the omission of the subnets parameter. 6. Process OSPF 1 is redistributing routes from process OSPF 2. Which of the follow- ing methods can be used to set the metrics of the redistributed routes? (Choose two.) a. Let the metrics default. b. Use each redistributed route’s OSPF metric using the redistribute command’s metric transparent keywords. c. Set the metric using the default-metric subcommand under router configuration mode. d. Redistribution is not allowed between two OSPF processes. From the Library of Alexey Evseenko 402 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide 7. Examine the following excerpt from the show ip ospf database asbr-summary command on Router R1 (RID 1.1.1.1). Which answer can be verified as definitely true based on this output? LS Type: Summary Links (AS Boundary Router) Link State ID: 9.9.9.9 (AS Boundary Router address) Advertising Router: 3.3.3.3 LS Seq Number: 8000000D Checksum: 0xE43A Length: 28 Network Mask: /0 TOS: 0 Metric: 100 a. The output describes the contents of a Type 5 LSA. b. 3.3.3.3 identifies a router as being the router performing redistribution. c. R1’s metric for its best route to reach the router with RID 9.9.9.9 is 100. d. The router with RID 3.3.3.3’s metric for its best route to reach the router with RID 9.9.9.9 is 100. 8. Router R1 sits inside OSPF area 1. Router R2 redistributes an E1 route into OSPF for prefix 2.2.2.0/24, with external metric 20. Router R22 redistributes an E2 route for the same prefix/length, external metric 10. Under what conditions will R1 choose as its best route the route through R22? a. R1 will always choose the route through R22. b. As long as R1’s best internal OSPF cost to reach R22 is less than 10. c. As long as R1’s best internal OSPF cost to reach R22 is less than 20. d. R1 will never choose the route through R22 if the E1 route through R2 is avail- able. 9. Router R1 has been configured with the redistribute ospf 1 route-map fred com- mand under router eigrp 1. The route map named fred needs to be configured to match routes to determine which routes are redistributed into EIGRP. Which of the following answers lists an item that cannot be matched by route map fred? a. Subnet number b. Next-hop router IP address of the route c. Whether the route is an E1 or E2 route d. The route’s tag e. The number of router hops between the router and the subnet From the Library of Alexey Evseenko Chapter 10: Route Redistribution 403 10. Router R1 refers to route map fred when redistributing from EIGRP into OSPF. The entire route map is listed next. Which of the following answers must be true based on the configuration as shown? route-map fred deny 10 match ip address one route-map fred deny 20 match ip address two route-map fred permit 100 a. The third route map clause will allow any routes not already filtered by the first two clauses. b. Routes permitted by ACL “two” will be redistributed. c. Routes denied by ACL “one” will be redistributed. d. All routes will be filtered. 11. On Router R1, process EIGRP 1 is redistributing routes from process OSPF 2, calling route map fred with the redistribute ospf 2 route-map fred command. R1 has learned intra-area routes for 10.1.1.0/24 and 10.1.2.0/24 in part because of the Type 2 LSAs known for each subnet. The route map filters route 10.1.1.0/24 and allows 10.1.2.0/24 through. Which of the following commands on Router R1 list subnet 10.1.1.0/24? (Choose two.) a. show ip route b. show ip eigrp topology c. show ip ospf database d. show ip eigrp topology 10.1.1.0/24 12. Router R1 is redistributing between two OSPF processes. Given the configuration shown, which includes all commands in the route map named fred, which of the following answers is true regarding the redistribution into OSPF process 1? router ospf 1 redistribute ospf 2 match external 2 route-map fred ! route-map fred permit 10 match ip address 1 set metric-type type-1 a. No routes are redistributed because a route cannot be both E1 and E2. b. Only OSPF E2 routes in the OSPF 2 domain will be considered for redistribution. c. Inside the OSPF 2 domain, any formerly E2 routes will become E1 routes. d. Routes permitted by ACL 1 will be redistributed, regardless of whether the routes are E1 or E2 routes. From the Library of Alexey Evseenko 404 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide 13. Which of the following is not true regarding Cisco IOS default settings for administrative distance? a. EIGRP internal: 90 b. OSPF external: 110 c. EIGRP external: 90 d. RIP: 120 e. OSPF internal: 110 14. A network includes a RIPv2 domain, an EIGRP domain, and an OSPF domain. Each pair of routing domains has multiple routers redistributing routes between the pair of domains. The design requires that the redistribution configuration avoid matching based on prefix/length because of the trouble in maintaining such configurations. Which of the following tools can be used in all three routing domains to attempt to prevent domain loops? (This book uses the term domain loop to refer to the long routes that might be chosen for routes when redistribution exists—for example, a route might forward packets from the EIGRP domain, to the OSPF domain, back to EIGRP, and then to subnet X in the RIP domain.) a. Setting route tags b. Setting the default administrative distance differently for internal and external routes c. Setting administrative distance differently per route d. Setting metrics much higher for all external routes than for all internal routes 15. A coworker is developing an implementation plan for a design that uses OSPF 2 and RIPv2 routing domains, with two routers redistributing between the two domains. The coworker asks your help in choosing how to prevent domain loops by setting administrative distance. Assuming that all other related settings use defaults, which of the following would solve the domain loop problem? a. The distance ospf intra-area 80 inter-area 80 OSPF subcommand b. The distance ospf external 80 OSPF subcommand c. The distance ospf intra-area 180 inter-area 180 OSPF subcommand d. The distance ospf external 180 OSPF subcommand 16. Router R1 sets a route tag for subnet 10.1.1.0/24 when redistributing from OSPF into EIGRP. Which of the following units is assigned to the route tag? a. Kilobits/second b. Tens-of-microseconds c. Cost d. Hop count e. No units assigned From the Library of Alexey Evseenko Foundation Topics Chapter 10: Route Redistribution 405 Route Redistribution Basics Most internetworks use a single interior gateway protocol (IGP) to advertise and learn IP routes. However, in some cases, more than one routing protocol exists inside a single enterprise. Also, in some cases, the routes learned with an IGP must then be advertised with Border Gateway Protocol (BGP), and vice versa. In such cases, engineers often need to take routing information learned by one routing protocol and advertise those routes into the other routing protocol—a function provided by the Cisco IOS route redistribution feature. This section examines the basics of route redistribution. The Need for Route Redistribution The potential need for route redistribution exists when a route learned through one source of routing information, most typically one routing protocol, needs to be distributed into a second routing protocol domain. For example, two companies might merge, with one company using Enhanced Interior Gateway Routing Protocol (EIGRP) and the other using Open Shortest Path First (OSPF). The engineers could choose to immediately migrate away from OSPF to instead use EIGRP exclusively, but that migration would take time and potentially cause outages. Route redistribution allows those engineers to connect a couple of routers to both routing domains, and exchange routes between the two routing domains, with a minimal amount of configuration and with little disruption to the existing networks. Figure 10-1 shows just such a case, with R1 performing redistribution by using its knowledge of subnet 1 from the EIGRP domain and advertising a route for subnet 1 into the OSPF domain. Note that the opposite should also occur, with the OSPF domain’s subnet 2 being redistributed into the EIGRP domain. Company 1 Company 2 EIGRP Subnet1 Subnet 1 EIGRP1 redistribute R1 OSPF Subnet1 Subnet 2 R2 OSPF2 Figure 10-1 Typical Use of Redistribution From the Library of Alexey Evseenko 406 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide The main technical reason for needing redistribution is straightforward: An internetwork uses more than one routing protocol, and the routes need to be exchanged between those routing domains, at least temporarily. The business reasons vary widely but include the following: ■ Mergers when different IGPs are used. ■ Mergers when the same IGP is used. ■ Momentum (The enterprise has been using multiple routing protocols for a long time.) ■ Different company divisions are under separate control for business or political reasons. ■ Connections between partners. ■ Between IGPs and BGP when BGP is used between large segments of a multinational company. ■ Layer 3 WAN (Multiprotocol Label Switching [MPLS]). The list begins with two entries for mergers just to make the point that even if both merging companies use the same IGP, redistribution can still be useful. Even if both companies use EIGRP, they probably use a different autonomous system number (ASN) in their EIGRP configuration (with the router eigrp asn command). In such a case, to have all routers exchange routing information with EIGRP, all the former company’s routers would need to migrate to use the same ASN as the first company. Such a migration might be simple, but it still requires disruptive configuration changes in a potentially large number of routers. Redistribution could be used until a migration could be completed. Although useful as an interim solution, many permanent designs use redistribution as well. For example, it could be that a company has used different routing protocols (or different instances of the same routing protocol) in different divisions of a company. The network engineering groups can remain autonomous, and manage their own routing protocol domains, using redistribution to exchange routes at a few key connecting points between the divisions. Similarly, partner companies have separate engineering staffs, and want autonomy for managing routing, but also need to exchange routes for key subnets to allow the partnership’s key applications to function. Figure 10-2 depicts both of these cases. The last two cases in the previous list each relate to BGP in some way. First, some large corporations actually use BGP internal to the company’s internetwork, redistributing routes from IGPs. Each large autonomous division of the company can design and configure its respective routing protocol instance, redistribute into BGP, and then redistribute out of BGP into other divisions. Also, when an enterprise uses an MPLS Virtual Private Network (VPN) service, the MPLS provider’s provider edge (PE) router typically redistributes customer routes with BGP inside the MPLS provider’s MPLS network. Figure 10-3 shows samples of both these cases. In each of these cases, a given prefix/length (subnet/mask) is typically distributed into BGP at one location, advertised over a BGP domain, and redistributed back into some IGP. From the Library of Alexey Evseenko Chapter 10: Route Redistribution 407 Routing Domain 1 Division 1 Division 2 redistribute Routing Domain 2 redistribute Routing Domain 1 Manufacturer redistribute Supplier Routing Domain 2 redistribute Figure 10-2 Permanent Uses for Route Redistribution Division 1 EIGRP 1 R1 redistribute Large Company Division 2 Using BGP BGP R2 OSPF Internally redistribute redistribute R3 Division 3 EIGRP 2 Company 1 Site 1 CE1 EIGRP 1 PE1 redistribute MPLS BGP PE2 redistribute Company 1 Site 2 CE2 EIGRP 1 Figure 10-3 Using Redistribution to Pass Routes Using BGP From the Library of Alexey Evseenko 408 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Redistribution Concepts and Processes Route redistribution requires at least one router to do the following: Key Topic ■ Use at least one working physical link with each routing domain. ■ A working routing protocol configuration for each routing domain. ■ Additional redistribution configuration for each routing protocol, specifically the redistribute command, which tells the routing protocol to take the routes learned by another source of routing information and to then advertise those routes. The first two steps do not require any new knowledge or commands, but the third step represents the core of the redistribution logic and requires some additional background information. To appreciate the third step, Figure 10-4 shows an example router, RD1, which has met the first two requirements. RD1 uses EIGRP on the left and OSPF on the right, and has learned some routes with each routing protocol (Steps 1 and 2). However, no redistribution has yet been configured. EIGRP 1 OSPF Subnet 1 Subnet 2 Subnet 3 RD1 Subnet 11 Subnet 12 Subnet 13 EIGRP 1 Neighbor Table EIGRP 1 Topology Table: Subnet 1 Subnet 2 Subnet 3 IP Routing Table D Subnet 1 D Subnet 2 D Subnet 3 O Subnet 11 O Subnet 12 O Subnet 13 OSPF 2 Neighbor Table OSPF 2 Topology Table: Subnet 11 Subnet 12 Subnet 13 Figure 10-4 Routing Protocol Tables on a Router Doing Redistribution The goal for redistribution in this case is to have EIGRP advertise subnets 11, 12, and 13, which exist inside the OSPF domain, and have OSPF advertise subnets 1, 2, and 3, which exist inside the EIGRP domain. To do that, EIGRP must put topology information about subnets 11, 12, and 13 into its EIGRP topology table, and OSPF must put topology From the Library of Alexey Evseenko Chapter 10: Route Redistribution 409 information about subnets 1, 2, and 3 into its topology table. However, OSPF’s topology table has a lot of different information in it compared to EIGRP’s topology table. OSPF has link-state advertisements (LSA) and EIGRP does not. EIGRP lists the components of the composite metric and the neighbor’s reported distance (RD)—but OSPF does not. In short, EIGRP and OSPF differ significantly in the contents of their topology tables. Because the details of various routing protocols’ topology tables differ, the redistribution process does not use the topology tables when redistributing routes. Instead, redistribution uses the one table that both routing protocols understand: the IP routing table. Specifically, the Cisco IOS redistribute command takes routes from the IP routing table and passes those routes to a routing protocol for redistribution. The redistribute command, configured inside a routing protocol configuration mode, redistributes routes into that routing protocol from some other source. Figure 10-5 spells it out with an example, which focuses on the internal logic of Router RD1 as shown in Figure 10-4. EIGRP 1 Topology Table: Subnet 11 Subnet 12 Subnet 13 OSPF 2 Topology Table: Subnet 1 Subnet 2 Subnet 3 router eigrp 1 redistribute ospf 2 IP Routing Table D Subnet 1 D Subnet 2 D Subnet 3 O Subnet 11 O Subnet 12 O Subnet 13 router ospf 2 redistribute eigrp 1 Figure 10-5 Mutual Redistribution Between OSPF and EIGRP on Router RD1 Starting on the left of the figure, RD1’s EIGRP 1 process configuration lists the redistribute ospf 2 command. This command tells RD1 to look in the IP routing table, take all OSPF routes added to the IP routing table by the OSPF 2 process on RD1, and put those routes into EIGRP’s topology table. Conversely, the redistribute eigrp 1 command configured on the OSPF process tells RD1 to take IP routes from the IP routing table, if learned by EIGRP process 1, and add those routes to OSPF 2’s topology table. The process works as shown in Figure 10-5, but the figure leaves out some important details regarding the type of routes and the metrics used. For EIGRP, the EIGRP topology table needs more than the integer metric value held by the IP routing table—it needs values for the components of the EIGRP composite metric. EIGRP can use default settings that define the metric components for all routes redistributed into EIGRP, or the engineer can set the metric components in a variety of ways, as covered in several locations later in this chapter. Like EIGRP, OSPF treats the redistributed routes as external routes. OSPF creates an LSA to represent each redistributed subnet—normally a Type 5 LSA, but when redistributed into a not-so-stubby area (NSSA), the router instead creates a Type 7 LSA. In both cases, OSPF needs an integer metric to assign to the external route’s LSA. The redistribution From the Library of Alexey Evseenko 410 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide configuration should include the OSPF cost setting, which might or might not match the metric listed for the route in the redistributing router’s IP routing table. The last concept, before moving on to the configuration options, is that the redistribute command tells the router to take not only routes learned by the source routing protocol but also connected routes on interfaces enabled with that routing protocol—including passive interfaces. Example 10-1, later in this chapter, demonstrates this concept. Redistribution into EIGRP This section looks at the specifics of how EIGRP performs redistribution—that is, how EIGRP takes routes from other routing sources, such as OSPF, and advertises them into EIGRP. In real life, engineers often use both route filtering and route summarization at the redistribution point on a router. However, for the sake of making the underlying concepts clear, this portion of the chapter focuses on the mechanics of redistribution, without filtering, or summarization, or any other changes to the redistributed routes. This chapter later looks at the interesting options for manipulating routes at the redistribution point. This section begins with a couple of short discussions of reference information. The first topic summarizes the parameters of the main configuration command, the EIGRP redistribute command. Next, the baseline configuration used in the upcoming samples is listed, including all EIGRP and OSPF configuration, but no redistribution configuration. With those details listed for reference, the rest of this section examines the configuration of redistribution into EIGRP. EIGRP redistribute Command Reference First, for reference, the following lines show the generic syntax of the redistribute command when used as a router eigrp subcommand. Note that the syntax differs slightly depending on the routing protocol into which routes will be redistributed. Following that, Table 10-2 lists the options on the command with a brief description. redistribute protocol [process-id | as-number] [metric bw delay reliability load mtu ] [match {internal | nssa-external | external 1 | external 2}] [tag tag-value] [route-map name] Table 10-2 Parameters of the EIGRP redistribute Command Key Topic Option Description protocol The source of routing information. Includes bgp, connected, eigrp, isis, mobile, ospf, static and rip. process-id, as-number If redistributing a routing protocol that uses a process ID or ASN on the router global config command, use this parameter to refer to that process or ASN value. metric A keyword after which follows the four metric components (bandwidth, delay, reliability, link load), plus the MTU associated with the route. From the Library of Alexey Evseenko Option match tag route-map Chapter 10: Route Redistribution 411 Description If redistributing from OSPF, this keyword lets you match internal OSPF routes, external (by type), and NSSA external routes, essentially filtering which routes are redistributed. Assigns a unitless integer value to the routes redistributed by this command—tags that can be later matched by other routers using a route map. Applies the logic in the referenced route map to filter routes, set metrics, and set route tags. Baseline Configuration for EIGRP Redistribution Examples The best method to see the results of redistribution is to use examples, so this section explains the sample internetwork used in the upcoming EIGRP redistribution examples. Figure 10-6 shows the sample internetwork. In this case, the EIGRP domain on the left uses subnets of Class B network 172.30.0.0, and the OSPF domain on the right uses subnets of Class B network 172.16.0.0. Note that all OSPF subnets reside in area 0 in this example internetwork, although that is not a requirement. EIGRP OSPF Subnet 172.30.6.0/23 Fa0/1 7.7/23 Area 0 Subnet 172.16.8.0/25 Fa0/1 8.8/25 R7 Fa0/0 27.7/23 S0/0 17.2/30 Subnet 172.30.26.0/23 Fa0/0 27.2/23 R2 Fa0/1 2.2/23 S0/0/1 12.2/30 S0/1/1 17.1/30 S0/0/1 18.1/30 RD1 S0/0/0 S0/1/0 12.1/30 14.1/30 S0/0 18.2/30 R8 Fa0/0 48.8/25 Subnet 172.16.48.0/25 S0/0/0 14.2/30 Fa0/0 48.4/25 R4 Fa0/1 4.4/25 Subnet 172.30.2.0/23 Subnet 172.16.4.0/25 All addresses begin 172.30 All addresses begin 172.16 Figure 10-6 Sample Internetwork Used for Redistribution Examples From the Library of Alexey Evseenko 412 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide The internetwork uses a single router (RD1) to perform redistribution, just to avoid some interesting issues that occur when multiple routers redistribute the same routes (issues that are discussed later in this chapter). Example 10-1 shows the configuration on RD1, listing the IP addresses of the four active serial interfaces shown in Figure 10-6, plus the complete but basic EIGRP and OSPF configuration—but without any redistribution configured yet. Example 10-1 Configuration on Router RD1 Before Adding Redistribution Configuration interface Serial0/0/0 ip address 172.30.12.1 255.255.255.252 clock rate 1536000 ! interface Serial0/0/1 ip address 172.16.18.1 255.255.255.252 clock rate 1536000 ! interface Serial0/1/0 ip address 172.16.14.1 255.255.255.252 clock rate 1536000 ! interface Serial0/1/1 ip address 172.30.17.1 255.255.255.252 clock rate 1536000 ! router eigrp 1 network 172.30.0.0 no auto-summary ! router ospf 2 router-id 1.1.1.1 network 172.16.0.0 0.0.255.255 area 0 Configuring EIGRP Redistribution with Default Metric Components For the internetwork of Figure 10-6, a reasonable design goal would be to redistribute EIGRP routes into OSPF, and OSPF routes into EIGRP. This section examines the case of redistributing the routes into EIGRP from OSPF. First, consider the EIGRP redistribute command. For those unfamiliar with the command, the direction of redistribution might not be obvious. A better command name might have been “take-routes-from,” because the first parameter after the command tells Cisco IOS from where to get the routes. For example, consider the configuration in Example 10-2, which was added to RD1’s existing configuration in Example 10-1. The configuration uses only required parameters; From the Library of Alexey Evseenko Chapter 10: Route Redistribution 413 namely, a reference to the source from which routes should be redistributed. Because the configuration places this command in EIGRP configuration mode, the command tells Cisco IOS to redistribute the routes into EIGRP 1, from OSPF 2 in this case. Example 10-2 Minimal Configuration for Redistribution from OSPF into EIGRP RD1# configure terminal Enter configuration commands, one per line. End with CNTL/Z. RD1(config)# router eigrp 1 RD1(config-router)# redistribute ospf 2 RD1(config-router)# end Cisco IOS does accept the configuration. Unfortunately, Cisco IOS does not actually redistribute routes from OSPF into EIGRP in this case. EIGRP does not have a default setting for the metric components to use when redistributing into EIGRP from OSPF. To confirm these results, examine the output shown in Example 10-3, which lists show command output from RD1 when configured as shown in the previous example. Note that RD1’s EIGRP topology table lists only routes for Class B network 172.30.0.0, which all sit inside the EIGRP domain. None of the routes from Class B network 172.16.0.0, which exist inside the OSPF domain, have been added to RD1’s EIGRP topology table. Example 10-3 Redistribution Did Not Work on RD1 RD1# show ip eigrp topology IP-EIGRP Topology Table for AS(1)/ID(172.30.17.1) Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply, r - reply Status, s - sia Status P 172.30.17.0/30, 1 successors, FD is 2169856 via Connected, Serial0/1/1 P 172.30.26.0/23, 2 successors, FD is 2172416 via 172.30.12.2 (2172416/28160), Serial0/0/0 via 172.30.17.2 (2172416/28160), Serial0/1/1 P 172.30.2.0/23, 1 successors, FD is 2172416 via 172.30.12.2 (2172416/28160), Serial0/0/0 via 172.30.17.2 (2174976/30720), Serial0/1/1 P 172.30.6.0/23, 1 successors, FD is 2172416 via 172.30.17.2 (2172416/28160), Serial0/1/1 via 172.30.12.2 (2174976/30720), Serial0/0/0 P 172.30.12.0/30, 1 successors, FD is 2169856 via Connected, Serial0/0/0 To complete the configuration of redistribution into EIGRP, Router RD1 needs to set the metric values. EIGRP can set the metrics for redistributed routes in three ways, as summarized in Table 10-3. From the Library of Alexey Evseenko 414 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Table 10-3 Methods of Setting EIGRP Metrics When Redistributing into EIGRP Key Topic Function Command Setting the default for all redistribute commands The default-metric bw delay reliability load mtu EIGRP subcommand. Setting the component metrics applied to all routes redistributed by a single redistribute command The metric bw delay reliability load mtu parameters on the redistribute command. Setting different component metrics to different Use the route-map parameter on the routes from a single route source redistribute command, matching routes and setting metric components. Note EIGRP does have a default metric when redistributing from another EIGRP process, in which case it takes the metric from the source of the routing information. In all other cases, the metric must be set using one of the methods in Table 10-3. If the metrics do not matter to the design, which is likely when only a single redistribution point exists as in Figure 10-6, either of the first two methods listed in Table 10-3 is reasonable. The first method, using the default-metric command in EIGRP configuration mode, sets the metric for all routes redistributed into EIGRP, unless set by one of the other methods. Alternatively, the second method, which uses additional parameters on the redistribute command, sets the metric for all routes redistributed because of that one redistribute command. Finally, if the redistribute command also refers to a route map, the route map can use the set metric command to set the metric components for routes matched by the route map clause, overriding the metric settings in the default-metric command or with the metric keyword on the redistribute command. Example 10-4 shows the addition of the default-metric 1000 33 255 1 1500 command to RD1’s configuration. This command sets the bandwidth to 1000 (kbps), the delay to 33 (tens-of-microseconds, or 330 microseconds), the reliability to 255 (a value in the range 1–255, where 255 is best), the load to 1 (a value in the range 1–255, where 1 is best), and the maximum transmission unit (MTU) to 1500. Note that even though EIGRP ignores the last three parameters by default when calculating integer metrics, you still must configure these settings for the commands to be accepted. Example 10-4 Redistributed Routes in RD1 RD1# configure terminal Enter configuration commands, one per line. End with CNTL/Z. RD1(config)# router eigrp 1 RD1(config-router)# default-metric 1000 33 255 1 1500 RD1(config-router)# end Because this example uses a single redistribute command for the EIGRP 1 process, you could have used the redistribute ospf 2 metric 1000 33 255 1 1500 command and ignored the default-metric command to achieve the same goal. From the Library of Alexey Evseenko Chapter 10: Route Redistribution 415 Verifying EIGRP Redistribution As shown earlier in Figure 10-5, redistribution takes routes from the routing table and places the correct information for those subnets into the redistributing router’s topology table. The redistributing router then advertises the routes from its topology table as it would for other routes. To verify that redistribution works, Example 10-5 shows the proof that RD1 indeed created entries in its EIGRP topology table for the five subnets in the OSPF domain. Example 10-5 Verifying That RD1 Added EIGRP Topology Data for Five OSPF Subnets RD1# show ip eigrp topology IP-EIGRP Topology Table for AS(1)/ID(172.30.17.1) Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply, r - reply Status, s - sia Status ! Note – all lines for class B network 172.30.0.0 have been omitted for brevity P 172.16.48.0/25, 1 successors, FD is 2568448 via Redistributed (2568448/0) P 172.16.18.0/30, 1 successors, FD is 2568448 via Redistributed (2568448/0) P 172.16.14.0/30, 1 successors, FD is 2568448 via Redistributed (2568448/0) P 172.16.8.0/25, 1 successors, FD is 2568448 via Redistributed (2568448/0) P 172.16.4.0/25, 1 successors, FD is 2568448 via Redistributed (2568448/0) RD1# show ip eigrp topology 172.16.48.0/25 IP-EIGRP (AS 1): Topology entry for 172.16.48.0/25 State is Passive, Query origin flag is 1, 1 Successor(s), FD is 2568448 Routing Descriptor Blocks: 172.16.18.2, from Redistributed, Send flag is 0x0 Composite metric is (2568448/0), Route is External Vector metric: Minimum bandwidth is 1000 Kbit Total delay is 330 microseconds Reliability is 255/255 Load is 1/255 Minimum MTU is 1500 Hop count is 0 External data: Originating router is 172.30.17.1 (this system) AS number of route is 2 External protocol is OSPF, external metric is 65 Administrator tag is 0 (0x00000000) From the Library of Alexey Evseenko 416 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Key Topic The show command output lists several interesting facts: ■ On Router RD1, which performed the redistribution, the EIGRP topology table lists the outgoing interface as “via redistributed.” ■ All the redistributed routes have the same feasible distance (FD) calculation (2568448), because all use the same component metrics per the configured defaultmetric command. ■ RD1’s two connected subnets in the OSPF 2 domain—subnets 172.16.14.0/30 and 172.16.18.0/30—were also redistributed, even though these routes are connected routes in RD1’s routing table. ■ The output of the show ip eigrp topology 172.16.48.0/25 command confirms that the component metrics match the values configured on the default-metric command. ■ The bottom of the output of the show ip eigrp topology 172.16.48.0/25 command lists information about the external source of the route, including the routing source (OSPF) and that source’s metric for the route (65). It also lists the phrase “(this system),” meaning that the router on which the command was issued (RD1 in this case) redistributed the route. The third item in the list—the fact that RD1 redistributed some connected routes—bears further consideration. The redistribute ospf 2 command tells EIGRP to redistribute routes learned by the OSPF 2 process. However, it also tells the router to redistribute connected routes for interfaces on which process OSPF 2 has been enabled. Back in Example 10-1, the configuration on RD1 lists a network 172.16.0.0 0.0.255.255 area 0 command, enabling OSPF 2 on RD1’s S0/0/1 and S0/1/0 interfaces. As such, the redistribution process also redistributed those routes. Stated more generally, when the redistribute command refers to another IGP as the routing source, it tells the router to redistribute the following: ■ All routes in the routing table learned by that routing protocol ■ All connected routes of interfaces on which that routing protocol is enabled Although Example 10-5 shows the evidence that Router RD1 added the topology data to its EIGRP topology database, it did not show any routes. Example 10-6 shows the IP routing tables on both RD1 and Router R2, a router internal to the EIGRP domain. R2’s routes forward the packets toward the redistributing router, which in turn has routes from the OSPF domain with which to forward the packet to the destination subnet. Example 10-6 Verification of IP Routes on RD1 and R2 ! First, on RD1 RD1# show ip route 172.16.0.0 Routing entry for 172.16.0.0/16, 5 known subnets Attached (2 connections) Variably subnetted with 2 masks From the Library of Alexey Evseenko Chapter 10: Route Redistribution 417 Redistributing via eigrp 1 O 172.16.48.0/25 [110/65] via 172.16.18.2, 00:36:25, Serial0/0/1 [110/65] via 172.16.14.2, 00:36:25, Serial0/1/0 C 172.16.18.0/30 is directly connected, Serial0/0/1 C 172.16.14.0/30 is directly connected, Serial0/1/0 O 172.16.8.0/25 [110/65] via 172.16.18.2, 00:36:25, Serial0/0/1 O 172.16.4.0/25 [110/65] via 172.16.14.2, 00:36:25, Serial0/1/0 ! Next, on Router R2 R2# show ip route Codes: C - connected, S - static, R - RIP, M - mobile, B - BGP D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2 E1 - OSPF external type 1, E2 - OSPF external type 2 i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2 ia - IS-IS inter area, * - candidate default, U - per-user static route o - ODR, P - periodic downloaded static route Gateway of last resort is not set 172.16.0.0/16 is variably subnetted, 5 subnets, 2 masks D EX 172.16.48.0/25 [170/3080448] via 172.30.12.1, 00:25:15, Serial0/0/1 D EX 172.16.18.0/30 [170/3080448] via 172.30.12.1, 00:25:15, Serial0/0/1 D EX 172.16.14.0/30 [170/3080448] via 172.30.12.1, 00:25:15, Serial0/0/1 D EX 172.16.8.0/25 [170/3080448] via 172.30.12.1, 00:25:15, Serial0/0/1 D EX 172.16.4.0/25 [170/3080448] via 172.30.12.1, 00:25:15, Serial0/0/1 172.30.0.0/16 is variably subnetted, 5 subnets, 2 masks D 172.30.17.0/30 [90/2172416] via 172.30.27.7, 00:25:15, FastEthernet0/0 C 172.30.26.0/23 is directly connected, FastEthernet0/0 C 172.30.2.0/23 is directly connected, FastEthernet0/1 D 172.30.6.0/23 [90/30720] via 172.30.27.7, 00:25:15, FastEthernet0/0 C 172.30.12.0/30 is directly connected, Serial0/0/1 Beginning with the output for R2, in the second half of the example, R2 knows routes for all five subnets in Class B network 172.16.0.0, listing all as external EIGRP routes. The routes all use R2’s link connected to RD1. Also, note that the administrative distance (AD) is set to 170, rather than the usual 90 for EIGRP routes. EIGRP defaults to use AD 90 for internal routes and AD 170 for external routes. RD1 has routes for all routes in the OSPF domain as well, but as either connected or OSPF-learned routes. Redistribution into OSPF As you might expect, OSPF redistribution has several similarities and differences as compared to redistribution into EIGRP. Unlike EIGRP, OSPF does have useful default metrics From the Library of Alexey Evseenko 418 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide for redistributed routes, but OSPF does use the same general methods to configure metrics for redistributed routes. Like EIGRP, OSPF flags redistributed routes as being external. Unlike EIGRP, OSPF creates LSAs to represent each external route, and OSPF must then apply some much different logic than EIGRP to calculate the best route to each external subnet. This section examines the OSPF redistribution process and configuration. It also discusses background on three OSPF LSA Types—Types 4, 5, and 7—all created to help OSPF distribute information so that routers can calculate the best route to each external subnet. OSPF redistribute Command Reference First, for reference, the following lines show the generic syntax of the redistribute command when used as a router ospf subcommand. Note that the syntax differs slightly depending on the routing protocol into which routes will be redistributed. Following that, Table 10-4 lists the options on the command with a brief description. redistribute protocol [process-id | as-number] [metric metric-value] [metric-type type-value] [match {internal | external 1 | external 2 | nssa-external}] [tag tagvalue] [route-map map-tag] [subnets] Table 10-4 Parameters on the OSPF redistribute Command Key Topic Option Description protocol The source of routing information. Includes bgp, connected, eigrp, isis, mobile, ospf, static, and rip. process-id, as-number If redistributing a routing protocol that uses a process ID or AS number on the router global config command, use this parameter to refer to that process ID or ASN value. metric Defines the cost metric assigned to routes redistributed by this command, unless overridden by a referenced route map. metric-type {1 | 2} Defines the external metric type for the routes redistributed by this command: 1 (E1 routes) or 2 (E2 routes). match If redistributing from another OSPF process, this keyword lets you match internal OSPF routes, external OSPF routes (either E1 or E2), and NSSA external routes, essentially filtering which routes are redistributed. tag Assigns a unitless integer value to the routes redistributed by this command—a tag that can be later matched by other routers using a route map. route-map Applies the logic in the referenced route map to filter routes, set metrics, and set route tags. subnets Redistribute subnets of classful networks. Without this parameter, only routes for classful networks are redistributed. (This behavior is unique to the OSPF redistribute command.) From the Library of Alexey Evseenko Chapter 10: Route Redistribution 419 Configuring OSPF Redistribution with Minimal Parameters The redistribute subcommand under router ospf has many optional settings. To better appreciate some of these settings, this section first examines the results when using all defaults, using as few parameters as possible. Following the discussion of the behavior with defaults, the next examples add the parameters that complete the redistribution configuration. Redistribution into OSPF uses the following defaults: Key Topic ■ When taking from BGP, use a default metric of 1. ■ When taking from another OSPF process, take the source route’s metric. ■ When taking from all other sources, use a default metric of 20. ■ Create a Type 5 LSA for each redistributed route (external) if not inside an NSSA; create a Type 7 LSA if inside an NSSA. ■ Use external metric type 2. ■ Redistribute only routes of classful (Class A, B, and C) networks, and not routes for subnets. To demonstrate OSPF redistribution, this section uses an example that uses the same internetwork shown in Figure 10-6, including the baseline configuration shown in Example 10-1, and the EIGRP redistribution configuration shown in Examples 10-2 and 10-4. Essentially, the upcoming OSPF examples begin with Router RD1 including all the configurations seen in all the earlier examples in this chapter. According to those examples, OSPF has been correctly configured on the routers on the right side of Figure 10-6, EIGRP has been configured on the left, and the configuration of redistribution of OSPF routes into EIGRP has been completed. However, no redistribution into OSPF has yet been configured. For perspective, before showing the redistribution into OSPF, Example 10-7 reviews the OSPF configuration, along with show commands listing RD1’s IP routing table entries and its OSPF LSDB. Example 10-7 Router RD1 Routing Protocol Configuration, Before Redistribution into OSPF RD1# show run ! lines omitted for brevity router eigrp 1 redistribute ospf 2 network 172.30.0.0 default-metric 1000 33 255 1 1500 no auto-summary ! router ospf 2 router-id 1.1.1.1 From the Library of Alexey Evseenko 420 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide log-adjacency-changes network 172.16.0.0 0.0.255.255 area 0 RD1# show ip route 172.30.0.0 Routing entry for 172.30.0.0/16, 5 known subnets Attached (2 connections) Variably subnetted with 2 masks Redistributing via eigrp 1 C 172.30.17.0/30 is directly connected, Serial0/1/1 D 172.30.26.0/23 [90/2172416] via 172.30.17.2, 01:08:50, Serial0/1/1 [90/2172416] via 172.30.12.2, 01:08:50, Serial0/0/0 D 172.30.2.0/23 [90/2172416] via 172.30.12.2, 01:08:50, Serial0/0/0 D 172.30.6.0/23 [90/2172416] via 172.30.17.2, 01:08:50, Serial0/1/1 C 172.30.12.0/30 is directly connected, Serial0/0/0 RD1# show ip ospf database OSPF Router with ID (1.1.1.1) (Process ID 2) Router Link States (Area 0) Link ID 1.1.1.1 4.4.4.4 8.8.8.8 ADV Router 1.1.1.1 4.4.4.4 8.8.8.8 Age 1425 1442 1466 Seq# Checksum Link count 0x80000007 0x007622 4 0x8000000D 0x00B1E9 4 0x80000006 0x00640E 4 Net Link States (Area 0) Link ID 172.16.48.4 ADV Router 4.4.4.4 Age 1442 Seq# Checksum 0x80000004 0x007E07 ! The following occurs on OSPF internal router R4 R4# show ip route 172.30.0.0 % Network not in table The output in Example 10-7 shows several important points relative to the upcoming redistribution configuration. First, by design, the EIGRP domain contains subnets of network 172.30.0.0. Router RD1 knows routes for five subnets in this range. RD1 has four LSAs: three Type 1 Router LSAs (one each for Routers RD1, R4, and R8) plus one Type 2 network LSA (because only one subnet, 172.16.48.0/25, has elected a DR). Because the design for this internetwork puts all OSPF routers in area 0, no Type 3 summary LSAs exist in RD1’s LSDB. Also, because no routers have redistributed external routes into OSPF yet, no Type 5 external nor Type 7 NSSA external routes are listed. By adding the redistribute eigrp 1 command in OSPF configuration mode, OSPF tries to redistribute routes from EIGRP—but with no success. The reason is that by omitting the From the Library of Alexey Evseenko Chapter 10: Route Redistribution 421 subnets parameter, OSPF will only redistribute routes for entire classful subnets, and only if such a route is listed in the IP routing table. Example 10-8 shows the results. Example 10-8 Redistributing into OSPF from EIGRP 1, All Default Settings RD1# configure terminal Enter configuration commands, one per line. End with CNTL/Z. RD1(config)# router ospf 2 RD1(config-router)# redistribute eigrp 1 % Only classful networks will be redistributed RD1(config-router)# end RD1# RD1# show ip ospf database OSPF Router with ID (1.1.1.1) (Process ID 2) Router Link States (Area 0) Link ID 1.1.1.1 4.4.4.4 8.8.8.8 ADV Router 1.1.1.1 4.4.4.4 8.8.8.8 Age 6 1782 1806 Seq# Checksum Link count 0x80000008 0x007A1B 4 0x8000000D 0x00B1E9 4 0x80000006 0x00640E 4 Net Link States (Area 0) Link ID 172.16.48.4 ADV Router 4.4.4.4 Age 1782 Seq# Checksum 0x80000004 0x007E07 Cisco IOS even mentions that only classful routes will be redistributed. As seen in Example 10-7, no route exists for the exact Class B network prefix of 172.30.0.0/16, and by default, OSPF does not redistribute any subnets inside that range, as noted in the informational message in Example 10-8. So, the OSPF database on Router RD1 remains unchanged. By changing the configuration to use the redistribute eigrp 1 subnets command, OSPF indeed redistributes the routes, as shown in Example 10-9. Example 10-9 Redistributing from EIGRP into OSPF, with Subnets RD1# configure terminal Enter configuration commands, one per line. End with CNTL/Z. RD1(config)# router ospf 2 RD1(config-router)# redistribute eigrp 1 subnets RD1(config-router)# end RD1# May 12 12:49:48.735: %SYS-5-CONFIG_I: Configured from console by console RD1# show ip ospf database From the Library of Alexey Evseenko 422 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide ! omitting the Type 1 and 2 LSA output for brevity Type-5 AS External Link States Link ID ADV Router Age 172.30.2.0 1.1.1.1 3 172.30.6.0 1.1.1.1 3 172.30.12.0 1.1.1.1 3 172.30.17.0 1.1.1.1 3 172.30.26.0 1.1.1.1 3 Seq# Checksum Tag 0x80000001 0x008050 0 0x80000001 0x005478 0 0x80000001 0x0005C3 0 0x80000001 0x00CDF5 0 0x80000001 0x007741 0 ! The following occurs on router R4 R4# show ip route 172.30.0.0 Routing entry for 172.30.0.0/16, 5 known subnets Variably subnetted with 2 masks O E2 O E2 O E2 O E2 O E2 172.30.17.0/30 [110/20] via 172.16.14.1, 00:01:10, Serial0/0/0 172.30.26.0/23 [110/20] via 172.16.14.1, 00:01:11, Serial0/0/0 172.30.2.0/23 [110/20] via 172.16.14.1, 00:01:11, Serial0/0/0 172.30.6.0/23 [110/20] via 172.16.14.1, 00:01:11, Serial0/0/0 172.30.12.0/30 [110/20] via 172.16.14.1, 00:01:11, Serial0/0/0 After adding the subnets option, Router RD1 redistributes the five routes from the EIGRP domain. Of particular interest: ■ If you look back to Example 10-7’s show ip route command output from Router RD1, you see three EIGRP-learned routes, plus two connected routes, inside the EIGRP domain. Example 10-9’s two show commands confirm that OSPF redistributes the three EIGRP-learned routes, plus the two connected subnets on which EIGRP is enabled (172.30.12.0/30 and 172.30.17.0/30). ■ The show ip ospf database command in Example 10-9 lists R1 (RID 1.1.1.1) as the advertising router of the five new Type 5 LSAs, because RD1 (with RID 1.1.1.1) created each Type 5 LSA. ■ Per OSPF internal Router R4’s show ip route 172.30.0.0 command at the end of Example 10-9, the external metric type is indeed E2, meaning external Type 2. ■ Per that same command on Router R4, the metric for each route is 20. The reasoning is that the default metric is 20 when redistributing from EIGRP into OSPF, and with an E2 route, internal OSPF costs are not added to the cost of the route. That last point regarding the external route type requires a little more discussion. OSPF defines external routes as either an external Type 1 (E1) or external Type 2 (E2) route. By default, the OSPF redistribute command creates Type 2 routes, noting this external route type in the Type 5 LSA. The difference between the two lies in how OSPF calculates the metrics for E1 and E2 routes. From the Library of Alexey Evseenko Chapter 10: Route Redistribution 423 The next section completes the discussion of how OSPF can set the metrics when redistributing routes—or more specifically, the metric as listed in the Type 5 LSA created for that subnet. Following that, the text takes a detailed look at how OSPF calculates the best route for E2 routes. Later, the section “Redistributing into OSPF as E1 Routes” discusses the same subject, but for E1 routes. Setting OSPF Metrics on Redistributed Routes As mentioned earlier, no matter the source of the redistributed route, OSPF has a default metric to use. However, OSPF can set the metrics for redistributed routes using the same options used for EIGRP. Table 10-5 summarizes the defaults and metric setting options for redistribution into OSPF. Table 10-5 Summary of Metric Values When Redistributing into OSPF Key Topic Function Command or Metric Values Default if no metric configuration exists Cost 1 for routes learned from BGP. If redistributed from another OSPF process, use the source route’s OSPF cost. Cost 20 for all other route sources. Setting the default for all redistribute commands The default-metric cost OSPF subcommand. Setting the metric for one route source The metric cost parameters on the redistribute command. Setting different metrics for routes learned from a single source Use the route-map parameter on the redistribute command. LSAs and Metrics for External Type 2 Routes To appreciate how OSPF calculates the possible routes for each E2 route, you need to take a moment to think about the Type 5 LSA in more detail. First, by definition, the router that performs the redistribution into OSPF becomes an autonomous system border router (ASBR), because it injects external routes into OSPF. For each such route, that ASBR creates a Type 5 LSA for that subnet. The Type 5 LSA includes the following fields: ■ LSID (Link-state ID): The subnet number ■ Mask: The subnet mask ■ Advertising Router: The RID of the ASBR injecting the route ■ Metric: The metric as set by the ASBR ■ External Metric Type: The external metric type, either 1 or 2 From the Library of Alexey Evseenko 424 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide When created, the ASBR floods the Type 5 LSA throughout the area. Then, if any area border routers (ABR) exist, the ABRs flood the Type 5 LSAs into any normal (nonstubby) areas (note that ABRs cannot forward Type 5 LSAs into any type of stubby area, instead relying on default routes). Figure 10-7 shows a sample flooding of the Type 5 LSA for EIGRP subnet 172.30.27.0/23 as an E2 route. EIGRP OSPF R7 R8 172.30.26.0/23 R2 RID 1.1.1.1 RD1 Fa0/0 R3 S0/0/0 35.3 S0/0/0 Fa0/0 14.2 48.4 R4 S0/0/1 45.4 Fa0/1 4.4 S0/0 35.5 S0/0/0 45.5 R5 Area 1 Figure 10-7 Flooding of Type 5 LSAs When flooded, OSPF has little work to do to calculate the metric for an E2 route, because by definition, the E2 route’s metric is simply the metric listed in the Type 5 LSA. In other words, the OSPF routers do not add any internal OSPF cost to the metric for an E2 route. Because routers ignore internal cost when calculating E2 external route metrics, whenever an alternative route can be calculated, the metrics tie. For example, in Figure 10-7, Router R4 has two possible physical routes to ASBR RD1—one directly to RD1 and one through R8. The cost for both routes to external subnet 172.30.26.0/23 will be 20, because that is the cost that RD1 assigned to the route (actually, the Type 5 LSA) when redistributing the route. To avoid loops, OSPF routers use a tiebreaker system to allow a router to choose a best external route. The logic differs slightly depending on whether the router in question resides in the same area as the ASBR (intra-area) or in a different area (interarea), as discussed in the next two sections. From the Library of Alexey Evseenko Chapter 10: Route Redistribution 425 Determining the Next Hop for Type 2 External Routes—Intra-area When a router finds multiple routes for the same E2 destination subnet, it chooses the best route based on the lowest cost to reach any ASBR(s) that advertised the lowest E2 metric. For example, if five ASBRs all advertised the same subnet as an E2 route, and two ASBRs advertised a metric of 10, and the other three advertised a metric of 20, either of the first two ASBRs could be used. Then, the router calculates its lowest-cost route to reach the ASBR and uses the next-hop IP address and outgoing interface listed in that route. The following list spells out the mechanics of the calculation used to break the tie when multiple equal-cost E2 routes exist for a particular subnet: Key Topic Step 1. Step 2. Find the advertising ASBR(s) as listed in the Type 5 LSA(s) for Type 5 LSAs. Calculate the lowest-cost route to reach any of the ASBR(s) based on the intra-area LSDB topology. Step 3. Use the outgoing interface and next hop based on the best route to reach the ASBR (as chosen at Step 2). Step 4. The route’s metric is unchanged—it is still simply the value listed in the Type 5 LSA. For example, use Router R4 in Figure 10-7 as an example and the E2 route for 172.30.26.0/23. Before using these four steps, R4 calculated two possible routes for 172.16.26.0/23: an E2 route directly to RD1 and another route through R8. Both routes use metric 20 in this case so the routes tie. Because of the tie, R4 proceeds with the following steps: Step 1. R4 looks in the Type 5 LSA and sees RID 1.1.1.1 (RD1) is the advertising ASBR. Step 2. R4 then looks at its area 0 LSDB entries, including the Type 1 LSA for RID 1.1.1.1, and calculates all possible area 0 routes to reach 1.1.1.1. Step 3. R4’s best route to reach RID 1.1.1.1 happens to be through its S0/0/0 interface, to next-hop RD1 (172.16.14.1), so R4’s route to 172.16.26.0/23 uses these details. Step 4. The route lists metric 20, as listed in the Type 5 LSA. Figure 10-8 shows the interface costs that Router R4 will use, based on its LSDB, to calculate the cost for two possible routes to reach ASBR RD1. Again using subnet 172.30.26.0/23 as an example, RD1 first looks at the Type 5 external LSA and sees RID 1.1.1.1 as the advertising ASBR. R4 then calculates the costs based on its intra-area LSDB—but we can perform the equivalent by adding the interface costs seen in Figure 10-8. Example 10-10 lists the external Type 5 LSAs, highlighting subnet 172.30.26.0/23 and the interface costs on both R4 and R8, as seen in the figure. From the Library of Alexey Evseenko 426 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide S0/0 Cost 64 R8 ASBR RD1 Cost 65 S0/0/0 Cost 64 Cost 1 Fa0/0 R4 Cost 64 Figure 10-8 R4’s Cost to Reach ASBR RD1 Example 10-10 Verifying OSPF External Routes—Intra-area R4# show ip ospf database | begin Ext Type-5 AS External Link States Link ID ADV Router Age 172.30.2.0 1.1.1.1 189 172.30.6.0 1.1.1.1 189 172.30.12.0 1.1.1.1 189 172.30.17.0 1.1.1.1 189 172.30.26.0 1.1.1.1 189 Seq# Checksum Tag 0x80000002 0x007E51 0 0x80000002 0x005279 0 0x80000002 0x0003C4 0 0x80000002 0x00CBF6 0 0x80000002 0x007542 0 R4# show ip ospf database external 172.30.26.0 OSPF Router with ID (4.4.4.4) (Process ID 4) Type-5 AS External Link States Routing Bit Set on this LSA LS age: 175 Options: (No TOS-capability, DC) LS Type: AS External Link Link State ID: 172.30.26.0 (External Network Number ) Advertising Router: 1.1.1.1 LS Seq Number: 80000001 Checksum: 0x7741 Length: 36 Network Mask: /23 Metric Type: 2 (Larger than any link state path) From the Library of Alexey Evseenko TOS: 0 Metric: 20 Forward Address: 0.0.0.0 External Route Tag: 0 Chapter 10: Route Redistribution 427 R4# show ip ospf interface brief Interface PID Area Se0/0/0 4 0 Fa0/1 4 0 Fa0/0 4 0 Se0/0/1 4 1 IP Address/Mask 172.16.14.2/30 172.16.4.4/25 172.16.48.4/25 172.16.45.4/25 Cost State Nbrs F/C 64 P2P 1/1 1 DR 0/0 1 DR 1/1 64 P2P 1/1 ! Next output occurs on R8 R8# show ip ospf interface brief Interface PID Area Fa0/1 8 0 Se0/0 8 0 Fa0/0 8 0 IP Address/Mask 172.16.8.8/25 172.16.18.2/30 172.16.48.8/25 Cost State Nbrs F/C 1 DR 0/0 64 P2P 1/1 1 BDR 1/1 Determining the Next Hop for Type 2 External Routes—Interarea When a router exists in a different area than the ASBR, the issues remain the same, but the tiebreaker calculation of choosing the least-cost route to reach the ASBR changes. If a router finds multiple routes to reach a single E2 subnet, some or all might tie based on metric, because the metric is based solely on the external cost as defined by the ASBR. (If multiple ASBRs redistribute routes for the same prefix, each ASBR can assign a different metric.) A router then chooses the best route based on the least-cost route to reach an ASBR that has advertised the lowest E2 cost for the subnet. When the ASBR is in a different area, the calculation of the cost to reach the ASBR requires more information, and even an additional LSA type, as compared with the intraarea calculation. To calculate its best route to reach the ASBR, a router in another area adds the cost to reach an ABR between the areas, plus that ABR’s cost to reach the ASBR. To make more sense of that concept, Figure 10-9 shows a portion of Figure 10-7, with costs highlighted, assuming that the OSPF reference bandwidth is also using default settings. R5 has two possible routes shown in Figure 10-9 to reach ASBR RD1. On the left, the path through R3 has a total cost of 65. To the right, the router through ABR R4 has a total cost of 128. R5 then chooses the route through R3 as the best route based on the least cost to reach the ASBR. From the Library of Alexey Evseenko 428 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Area 0 RD1 Cost 1 Fa0/0 R3 Cost Cost 65 128 Cost 64 S0/0/0 R4 Cost 64 S0/0 Cost 64 S0/1 R5 Area 1 Figure 10-9 R5’s Cost to Reach ASBR RD1 For humans, when you have a figure and know all costs, the calculation of the costs of the two routes is simple. However, for routers, the calculation occurs in two parts: Step 1. Calculate the cost to reach the ABR, based on the local area’s topology database. Step 2. Add the cost from the ABR to the ASBR, as listed in a Type 4 LSA. ABRs create this new type of LSA—the Type 4 Summary ASBR LSA—to support the logic mentioned at Step 2. The Type 4 ASBR LSA lists the RID of the ASBR, and the RID of the ABR that created and flooded the Type 4 LSA. Most importantly, the Type 4 LSA lists that ABR’s cost to reach the ASBR. In effect, the LSA makes an announcement like this: “I am ABR X. I can reach ASBR Y, and my cost to reach that ASBR is Z.” In short, it allows the second part of the computation. ABRs create Type 4 LSAs in reaction to receiving an external LSA from some ASBR. When an ABR forwards a Type 5 LSA into an area, the ABR looks at the RID of the ASBR that created the Type 5 LSA. The ABR then creates a Type 4 LSA listing that ASBR, and the cost to reach that ASBR, flooding that Type 4 LSA into the neighboring areas. For example, using Figure 10-9 again, R3 would create and flood a Type 4 Summary ASBR LSA into area 1. R3’s Type 4 LSA lists ASBR 1.1.1.1 (RD1), ABR 3.3.3.3 (itself), and cost 1 (R3’s cost to reach 1.1.1.1). Similarly, in that same example, ABR R4 would create another Type 4 ASBR Summary LSA. This LSA also lists ASBR 1.1.1.1 (RD1), but with advertising ABR 4.4.4.4 (R4), and lists cost 64 (R4’s cost to reach 1.1.1.1). From the Library of Alexey Evseenko Chapter 10: Route Redistribution 429 R5, internal to area 1, then calculates the cost for each competing route by adding R5’s intra-area cost to reach the respective ABRs (Step 1 in the previous list) to the cost listed in the corresponding Type 4 LSAs (Step 2 in the previous list). When R5 calculates two possible routes to reach external subnet 172.30.26.0/23, R5 finds routes both have a metric of 20, so R5 tries to break the tie by looking at the cost to reach the ASBR over each route. To do so, R5 examines each route, adding its intra-area cost to reach the ABR to the ABR’s cost to reach the ASBR (as listed in the Type 4 LSA). In this case, R5 finds that the route through R3 has the lower cost (65), so R5 uses outgoing interface S0/0 for its route to 172.30.26.0/23. Example 10-11 lists the show command output that demonstrates the same example. Again focusing on R5’s route for 172.30.26.0/23, the example first shows R5’s LSDB, beginning with the Summary ASBR LSAs. More discussion follows the example. Example 10-11 Redistributing from EIGRP into OSPF, with Subnets R5# show ip ospf database | begin ASB Summary ASB Link States (Area 1) Link ID 1.1.1.1 1.1.1.1 ADV Router 3.3.3.3 4.4.4.4 Age 956 1044 Seq# Checksum 0x8000000D 0x00E43A 0x8000000B 0x00439A Type-5 AS External Link States Link ID 172.30.2.0 172.30.6.0 172.30.12.0 172.30.17.0 172.30.26.0 ADV Router 1.1.1.1 1.1.1.1 1.1.1.1 1.1.1.1 1.1.1.1 Age 1185 1185 1185 1185 1185 Seq# Checksum Tag 0x8000000B 0x006C5A 0 0x8000000B 0x004082 0 0x8000000B 0x00F0CD 0 0x8000000B 0x00B9FF 0 0x8000000B 0x00634B 0 R5# show ip ospf database asbr-summary OSPF Router with ID (5.5.5.5) (Process ID 5) Summary ASB Link States (Area 1) Routing Bit Set on this LSA LS age: 984 Options: (No TOS-capability, DC, Upward) LS Type: Summary Links(AS Boundary Router) Link State ID: 1.1.1.1 (AS Boundary Router address) Advertising Router: 3.3.3.3 LS Seq Number: 8000000D Checksum: 0xE43A Length: 28 From the Library of Alexey Evseenko 430 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Network Mask: /0 TOS: 0 Metric: 1 LS age: 1072 Options: (No TOS-capability, DC, Upward) LS Type: Summary Links(AS Boundary Router) Link State ID: 1.1.1.1 (AS Boundary Router address) Advertising Router: 4.4.4.4 LS Seq Number: 8000000B Checksum: 0x439A Length: 28 Network Mask: /0 TOS: 0 Metric: 64 R5# show ip ospf border-routers OSPF Process 5 internal Routing Table Codes: i - Intra-area route, I - Inter-area route i 4.4.4.4 [64] via 172.16.45.4, Serial0/1, ABR, Area 1, SPF 6 I 1.1.1.1 [65] via 172.16.35.3, Serial0/0, ASBR, Area 1, SPF 6 i 3.3.3.3 [64] via 172.16.35.3, Serial0/0, ABR, Area 1, SPF 6 R5# show ip route 172.30.0.0 Routing entry for 172.30.0.0/16, 5 known subnets Variably subnetted with 2 masks O E2 O E2 O E2 O E2 O E2 172.30.17.0/30 [110/20] via 172.16.35.3, 05:48:42, Serial0/0 172.30.26.0/23 [110/20] via 172.16.35.3, 05:48:42, Serial0/0 172.30.2.0/23 [110/20] via 172.16.35.3, 05:48:42, Serial0/0 172.30.6.0/23 [110/20] via 172.16.35.3, 05:48:42, Serial0/0 172.30.12.0/30 [110/20] via 172.16.35.3, 05:48:42, Serial0/0 The show ip ospf database | begin ASB command’s output lists two Type 4 LSAs. (The command itself lists the summary of R5’s OSPF LSDB, beginning with the section that lists Type 4 LSAs.) Both Type 4 LSAs list ASBR RD1’s RID of 1.1.1.1 as the LSID, but they each list different advertising routers: 3.3.3.3 (R3) and 4.4.4.4 (R4). In that same command, the output lists five Type 5 LSAs for the five subnets in the EIGRP domain, each with advertising Router 1.1.1.1 (RD1). The next command, show ip ospf database asbr-summary, lists the same two Type 4 LSAs seen in the previous command, but in detail. The first lists ASBR 1.1.1.1 (RD1), with ABR 3.3.3.3 (R3) and a cost of 1. The second lists ASBR 1.1.1.1, but with ABR 4.4.4.4 (R4) and a cost of 64. The costs list the respective ABR’s cost to reach ASBR 1.1.1.1. The third command, show ip ospf border-routers, lists a line for every ABR and ASBR known to the local router. It lists whether the router is inside the same area or in another area, the RID of the ABR or ASBR, and this router’s best route to reach each ABR and From the Library of Alexey Evseenko Chapter 10: Route Redistribution 431 ASBR. This command essentially shows the answer to the question “Which route to ASBR 1.1.1.1 is best?” Finally, the last command lists R5’s IP route for 172.30.26.0, with the same next-hop and outgoing interface information as seen in the entry for RID 1.1.1.1 in the output of the show ip ospf border-routers command. Redistributing into OSPF as E1 Routes OSPF’s external metric type feature gives engineers a design tool for influencing the choice of best route. E2 routes work well when the design needs to choose the best route based on the external metric—in other words, the metric as perceived outside the OSPF domain. E2 routes ignore the internal OSPF cost (except when breaking ties for best route). Therefore, when OSPF compares two E2 routes for the same subnet, that first choice to pick the lowest-metric route is based on the external metric only. OSPF routers calculate the metrics of E1 routes by adding the internal cost to reach the ASBR to the external cost defined on the redistributing ASBR. As a result, an engineer can influence the choice of routes based on the combination of the external and internal OSPF cost simply by redistributing a route as an E1 route instead of as an E2 route. To take advantage of this feature, the redistribute command simply needs to set the metric type. Example 10-12 shows the simple change to the redistribution configuration on RD1 (as shown earlier in Example 10-9) to make all routes redistributed from EIGRP into OSPF be E1 routes. The example also lists output from R4 demonstrating the metric, which is based on the (default) external metric (20) plus R4’s best internal metric to reach ASBR 1.1.1.1 (64). Example 10-12 Redistributing from EIGRP into OSPF, with Subnets RD1# conf t Enter configuration commands, one per line. End with CNTL/Z. RD1(config)# router ospf 2 RD1(config-router)# redistribute eigrp 1 subnets metric-type 1 RD1(config-router)# end RD1# ! Moving to router R4 R4# show ip route 172.30.0.0 Routing entry for 172.30.0.0/16, 5 known subnets Variably subnetted with 2 masks O E1 O E1 O E1 O E1 O E1 172.30.17.0/30 [110/84] via 172.16.14.1, 00:00:06, Serial0/0/0 172.30.26.0/23 [110/84] via 172.16.14.1, 00:00:06, Serial0/0/0 172.30.2.0/23 [110/84] via 172.16.14.1, 00:00:06, Serial0/0/0 172.30.6.0/23 [110/84] via 172.16.14.1, 00:00:06, Serial0/0/0 172.30.12.0/30 [110/84] via 172.16.14.1, 00:00:06, Serial0/0/0 From the Library of Alexey Evseenko 432 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide R4# show ip ospf border-routers OSPF Process 4 internal Routing Table Codes: i - Intra-area route, I - Inter-area route i 1.1.1.1 [64] via 172.16.14.1, Serial0/0/0, ASBR, Area 0, SPF 16 i 3.3.3.3 [65] via 172.16.14.1, Serial0/0/0, ABR, Area 0, SPF 16 i 3.3.3.3 [128] via 172.16.45.5, Serial0/0/1, ABR, Area 1, SPF 8 Key Topic Note that for routers in a different area than the ASBR, the calculation of metric follows the same general logic used when breaking ties for E2 routes. Generally, the computation adds three items: ■ The best intra-area cost to reach the ABR (per that area’s LSDB) ■ The cost from that ABR to the ASBR (per Type 4 LSA) ■ The external cost for the route (per Type 5 LSA) For example, Figure 10-9 shows that R5’s best cost to reach ASBR RD1 was out S0/0, to R3 next, with a cost of 65. Adding the external cost of 20, R5’s best route will have a metric of 85. R5 calculates that cost by adding the following: ■ The intra-area cost to ABR R3 (64), by analyzing the area 1 LSDB entries ■ R3’s cost to reach ASBR 1.1.1.1, as listed in its Type 4 LSA (1) ■ The external cost as listed in the Type 5 LSA (20) A Brief Comparison of E1 and E2 Routes OSPF defines two types of external routes to give network designers two slightly different tools with which to calculate the best route to reach a destination external to OSPF. For E1 routes, both the external cost and internal OSPF cost matter to the choice of best route. For E2 routes, only the external cost matters to the choice of best route (unless a tie needs to be broken). The benefits of the different external route types apply mostly to when multiple ASBRs advertise the same subnet. For example, imagine two ASBRs, ASBR1 and ASBR2, between OSPF and another routing domain. If the goal is to always send traffic through ASBR1, you could use E2 routes and set the metric for ASBR1’s redistributed routes to a lower metric than ASBR2. Because routers ignore the internal metrics when calculating the E2 metrics, every router chooses ASBR1 as the better ASBR. Conversely, if the goal were to load-balance the traffic, and make each router pick the closest ASBR, both ASBRs could set the same metric on their redistributed routes, but make the routes Type E1. As a result, routers closer to each ASBR choose best routes based on the lower OSPF internal costs. Also, note that for a given prefix/length, OSPF always prefers an E1 route over an E2 route. From the Library of Alexey Evseenko Chapter 10: Route Redistribution 433 External Routes in NSSAs Routes can be redistributed into OSPF on any OSPF router, with a few exceptions. The router can be internal to area 0, like Router RD1 in the many examples earlier in this chapter. It can also be an ABR connected to several areas. It can be a router internal to a nonbackbone area as well. Of the four types of stubby areas, two do not allow redistribution into the area, and two do allow redistribution—even though none of the stubby area types allow Type 5 LSAs. OSPF does not allow routers in stubby and totally stubby areas to inject external routes. However, routers in not-so-stubby areas—NSSAs—can redistribute routes, while still holding to the restriction of having no Type 5 LSAs. OSPF supports the injection of external routes into NSSAs by defining the Type 7 AS External LSA. This LSA type essentially replaces the Type 5 LSA’s role, but only inside the NSSA. Figure 10-10 shows a conceptual view. Other Routing Domain Subnet 1 1 ASBR redistribute 2 NSSA Area 1 Type 7 LSA 3 T7 T5 ABR1 Type 5 LSA R1 Area 0 4 Type 5 T5 LSA ABR2 R2 Normal Area 2 Figure 10-10 Process of Adding and Converting Type 7 LSAs Following the steps in the figure: Step 1. The ASBR attached to NSSA area 1 redistributes a route for subnet 1, creating a Type 7 LSA. Step 2. The ASBR floods the Type 7 LSA throughout NSSA area 1. Step 3. ABR1 converts the Type 7 LSA to a Type 5 LSA when forwarding into other areas (area 0 in this case). Step 4. ABR2, connected to another normal area, forwards the Type 5 LSA for subnet 1 into normal area 2. Example 10-13 demonstrates the concept using area 1 from Figures 10-7 and 10-9. Area 1 has been converted to be an NSSA. R5 has been configured to redistribute connected routes. This feature allows a router to inject connected routes into a routing domain without having to enable the routing protocol on the corresponding interfaces. In this case, From the Library of Alexey Evseenko 434 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide R5 will redistribute subnet 10.1.1.0/24, a connected route added by R5 using interface Loopback0. Example 10-13 Redistributing from EIGRP into OSPF, with Subnets ! R5's new configuration here: interface loopback0 ip address 10.1.1.1 255.255.255.0 router ospf 5 area 1 nssa redistribute connected subnets R5# show ip ospf database | begin Type-7 Type-7 AS External Link States (Area 1) Link ID 10.1.1.0 ADV Router Age 5.5.5.5 26 Seq# Checksum Tag 0x80000001 0x00E0A6 0 R5# show ip ospf database nssa-external OSPF Router with ID (5.5.5.5) (Process ID 5) Type-7 AS External Link States (Area 1) LS age: 69 Options: (No TOS-capability, Type 7/5 translation, DC) LS Type: AS External Link Link State ID: 10.1.1.0 (External Network Number ) Advertising Router: 5.5.5.5 LS Seq Number: 80000001 Checksum: 0xE0A6 Length: 36 Network Mask: /24 Metric Type: 2 (Larger than any link state path) TOS: 0 Metric: 20 Forward Address: 172.16.45.5 External Route Tag: 0 ! Moving to router R8 R8# show ip ospf database | begin Type-7 R8# show ip ospf database | begin External Type-5 AS External Link States Link ID 10.1.1.0 ADV Router Age Seq# Checksum Tag 4.4.4.4 263 0x80000001 0x009302 0 From the Library of Alexey Evseenko Chapter 10: Route Redistribution 435 172.30.2.0 1.1.1.1 172.30.6.0 1.1.1.1 172.30.12.0 1.1.1.1 172.30.17.0 1.1.1.1 172.30.26.0 1.1.1.1 1655 1655 1655 1655 1655 0x8000000E 0x00665D 0 0x8000000E 0x003A85 0 0x8000000E 0x00EAD0 0 0x8000000E 0x00B303 0 0x8000000E 0x005D4E 0 The example begins with configuration on R5, followed by show commands on both Router R5 and R8. In particular, the show ip ospf database | begin Type-7 command on R5 skips output until the heading for Type 7 LSAs, listing one such LSA. The LSA lists the subnet number (10.1.1.0) as the LSID and the ASBR’s RID (5.5.5.5, or R5). The next command provides output from the show ip ospf database nssa-external command on R5, which shows the details in the Type 7 LSA, including the LSA cost of 20—the same default used when injecting routes as Type 5 LSAs. The second half of the output, on Router R8, starts with another show ip ospf database | begin Type-7 command—the same command seen earlier in the example on R5. The null output in this command confirms that R8 has no Type 7 LSAs. However, the final command in the example confirms that R8 does have a Type 5 external LSA for subnet 10.1.1.0, with a listing of R4 (4.4.4.4) as the advertising router. This LSA does not list R5’s RID of 5.5.5.5 as the advertising router, because R5 did not create this Type 5 LSA. Instead, R4 created this Type 5 LSA when R4 reacted to learning the Type 7 LSA inside area 1. Finally, Example 10-14 shows a few interesting items about the IP routing table with NSSAs. Routers inside the NSSA use a different code in the output of show ip route to denote NSSA external routes as compared with normal external routes. The example shows R4’s IP routing table, which lists an N2 route. This means that it is external Type 2, but inside an NSSA, and using a Type 7 AS external LSA. The second part of the example shows R8’s route for the same subnet. Because R8 is inside a non-NSSA, R8 knows of subnet 10.1.1.0/24 because of a Type 5 LSA, so R8 lists the route as an E2 route. Example 10-14 Redistributing from EIGRP into OSPF, with Subnets ! R4's output here: R4# show ip route Codes: C - connected, S - static, R - RIP, M - mobile, B - BGP D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2 E1 - OSPF external type 1, E2 - OSPF external type 2 i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2 ia - IS-IS inter area, * - candidate default, U - per-user static route o - ODR, P - periodic downloaded static route Gateway of last resort is not set ! lines omitted for brevity 10.0.0.0/24 is subnetted, 1 subnets From the Library of Alexey Evseenko 436 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide O N2 10.1.1.0 [110/20] via 172.16.45.5, 00:10:54, Serial0/0/1 ! R8, in area 0, next R8# show ip route | begin 10.0.0.0 10.0.0.0/24 is subnetted, 1 subnets O E2 10.1.1.0 [110/20] via 172.16.48.4, 00:10:24, FastEthernet0/0 Redistribution with Route Maps and Distribute Lists In some cases, a redistribution design calls for all routes to be redistributed, all with the same metric and all with the same external route type (if applicable). However, in other cases, the metrics might need to be set differently for different routes. Additionally, some designs require that only a subset of the routes should be redistributed, for example, when only a few key subnets need to be exposed for connections from a partner. And with routing protocols that have different types of external routes, such as OSPF and IS-IS, the design might or might not allow all redistributed routes to be of the same external route type. All these features require a tool by which Cisco IOS can identify the routes that need to be treated differently, whether given different metrics, filtered, or assigned a different external route type. Cisco IOS provides such a feature by allowing a reference to a route map from the redistribute command. Specifically, the route map can perform the following: Key Topic ■ Identify the subset of the routes to filter or change based on the route’s prefix/ length, plus many other factors. ■ Make filtering choices about which routes are redistributed and which are not. ■ Set the metric to different values based on information matchable by the route map. ■ Set the type of external route for different redistributed routes, for example, OSPF Type 1 for some routes and Type 2 for others. ■ Set a route tag, a unitless integer value that can later be matched with a route map at another redistribution point. This section examines the mechanics of using the route-map option of the redistribute command to filter routes and set the metrics, along with a few other small features. Overview of Using Route Maps with Redistribution The redistribute command has two mechanisms that allow filtering of routes: ■ The match {internal | external 1 | external 2 | nssa-external} parameters ■ The route-map map-name option From the Library of Alexey Evseenko Chapter 10: Route Redistribution 437 Of these two options, the first applies only when redistributing from OSPF, and matches routes solely based on the types of routes listed here. However, the route map referenced by the redistribute command has many options for identifying routes by matching various facts about the route. To identify the routes, route maps use the match subcommand. The match command can refer to ACLs and prefix lists to match anything matchable by those tools, plus match other facts more directly. Table 10-6 lists the match command options that matter when using route maps for IGP redistribution. Table 10-6 match Command Options for Redistribution Key Topic match Command Description match interface interface-type interface- Looks at outgoing interface of routes number [... interface-type interface-number] * match ip address {[access-list-number | Examines route destination prefix and access-list-name] | prefix-list prefix-list-name} prefix length * match ip next-hop {access-list-number | access-list-name} Examines route’s next-hop address * match ip route-source {access-list-number | Matches advertising router’s IP address access-list-name} match metric metric-value [+- deviation] Matches route’s metric, or a range (plus/minus the configured deviation) match route-type {internal | external [type–1 | Matches route type type–2] | level–1 | level–2} match tag tag-value [...tag-value] Matches the route tag, which requires that another router has earlier set the tag * Can reference multiple numbered and named ACLs with a single match command. A route map referenced by the redistribute command always attempts to filter routes. If the route map matches a particular route with a particular route-map clause, and the action in that clause is permit, the route is redistributed. However, if the first route-map clause matched by a route has a deny action, the route is filtered—in other words, not redistributed. Additionally, for routes not filtered by the route map, the route map can set other values (like the route’s metric) using the aptly named set command. Table 10-7 lists the various route map set subcommands that can be used to set the values used for routes redistributed into IGPs. From the Library of Alexey Evseenko 438 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Table 10-7 set Command Options for Redistribution into IGPs Key Topic set Command Description set metric metric-value Sets the route’s metric for OSPF, RIP, and IS-IS set metric bandwidth delay reliability loading mtu Sets an EIGRP route’s metric values set metric-type {type–1 | type–2} Sets type of route for OSPF set tag tag-value Sets the unitless tag value in a route Filtering Redistributed Routes with Route Maps As usual, the best way to understand the configuration, and the methods to verify the results, is to use an example. In this case, the same internetwork seen earlier in this chapter is used, but with some more routes added. Figure 10-11 shows some of the details of the internetwork. EIGRP 1 Domain OSPF Domain 0.0/23 8.0/25 R7 17.0/30 18.0/30 R8 26.0/23 RD1 12.0/30 R2 14.0/30 48.0/25 R4 2.0/23 4.0/25 .101.0/24 .102.0/25 .103.0/26 .104.0/27 .105.0/28 .106.0/29 .107.0/30 Area 0 Area 3 All addresses begin 172.30 All addresses begin 172.16 Figure 10-11 Sample Internetwork Used for Redistribution Route Map Examples From the Library of Alexey Evseenko Chapter 10: Route Redistribution 439 The internetwork has been preconfigured with mainly defaults, as follows: ■ EIGRP works on the left side of Figure 10-11. ■ OSPF works on the right side. ■ Mutual redistribution has been configured on Router RD1, with no filtering. ■ All routes use these metric settings: EIGRP (1500 10 255 1 1500), OSPF (20). Example 10-15 shows the routing protocol configuration on Router RD1 at the beginning of the example. Example 10-15 Initial Configuration—Mutual Redistribution, No Filtering RD1# show run ! lines omitted for brevity router eigrp 1 redistribute ospf 2 network 172.30.0.0 default-metric 1500 10 255 1 1500 auto-summary ! router ospf 2 router-id 1.1.1.1 log-adjacency-changes redistribute eigrp 1 subnets network 172.16.0.0 0.0.255.255 area 0 Configuring Route Filtering with Redistribution The configuration shown in Example 10-15 shows mutual redistribution with no filtering. The next example extends that same configuration to now use a route map that should filter routes being redistributed from OSPF process 2 into EIGRP AS 1. Any routes not mentioned in Table 10-8, but shown in Figure 10-11, should be redistributed. Table 10-8 Parameters Used in Route-Filtering Example Prefixes 172.16.101.0/24 Action deny 172.16.102.0/25 172.16.103.0/26 permit 172.16.104.0/27 172.16.105.0/28 172.16.106.0/29 deny 172.16.107.0/30 permit From the Library of Alexey Evseenko 440 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide The route map simply needs to match the routes to be filtered with a route-map clause that has a deny action and match the routes to not be filtered with a clause that has a permit action. Example 10-16 shows two such potential solutions, with route map names option1 and option2. The general style of the two options, both of which work, is as follows: ■ option1: Begin with a match of the routes to be filtered, using extended IP ACLs, with a deny action so that the routes are filtered. Then use a permit clause with no match command, matching and allowing through all remaining routes. ■ option2: Begin with a match of the routes to be allowed, matching with prefix lists, with a permit action. Then use the implicit deny all at the end of the route map to filter unwanted routes. Example 10-16 Redistribution Filtering Configuration Example ! This ACL matches subnet 172.16.101.0, with mask 255.255.255.0 ip access-list extended match-101 permit ip host 172.16.101.0 host 255.255.255.0 ! This ACL matches subnets 172.16.104.0 and 172.16.105.0, with masks ! 255.255.255.224 and 255.255.255.240, respectively. ip access-list extended match-104-105 permit ip host 172.16.104.0 host 255.255.255.224 permit ip host 172.16.105.0 host 255.255.255.240 ! ! This prefix list matches the five subnets in area 0 ip prefix-list match-area0-permit seq 5 permit 172.16.14.0/30 ip prefix-list match-area0-permit seq 10 permit 172.16.18.0/30 ip prefix-list match-area0-permit seq 15 permit 172.16.8.0/25 ip prefix-list match-area0-permit seq 20 permit 172.16.4.0/25 ip prefix-list match-area0-permit seq 25 permit 172.16.48.0/25 ! ! This prefix list matches the two sets of two area 3 subnets that will ! be permitted to be redistributed ip prefix-list match-area3-permit seq 5 permit 172.16.102.0/23 ge 25 le 26 ip prefix-list match-area3-permit seq 10 permit 172.16.106.0/23 ge 29 le 30 ! The first alternative route-map: route-map option1 deny 10 match ip address match-101 ! route-map option1 deny 20 match ip address match-104-105 ! route-map option1 permit 100 From the Library of Alexey Evseenko Chapter 10: Route Redistribution 441 ! The second alternative route-map: route-map option2 permit 10 match ip address prefix-list match-area3-permit ! route-map option2 permit 20 match ip address prefix-list match-area0-permit ! Finally, the configuration shows the enablement of option 1. router eigrp 1 redistribute ospf 2 route-map option1 Route map option1 takes the approach of denying the redistribution of some routes and then allowing the rest through. The last clause in this route map, with sequence number 100, does not have a match command, meaning that it will match any and all routes. The permit action on this last clause overrides the implied deny all at the end of the route map. The ACLs referenced by route map option1 show some particularly interesting features for matching routes. With an extended ACL, Cisco IOS compares the source IP address parameter to the subnet address of the route and the destination IP address to the subnet mask of the route. For example, the permit ip host 172.16.101.0 host 255.255.255.0 command matches the specific route for subnet 172.16.101.0, specifically with mask 255.255.255.0. Route map option2 takes the opposite approach compared to option1, for no other reason than to just show an alternative. It uses two different prefix lists to match the routes—one for subnets in area 0, all of which are redistributed, and another for subnets in area 3 that should be allowed through the redistribution process. Alternatively, all routes could have been matched with a single prefix list, with a single permit clause in the option2 route map. Finally, the very end of the example shows the syntax of the redistribute command, with route map option1 enabled. Verifying Redistribution Filtering Operations The redistribution process takes routes from the IP routing table of a router and adds the appropriate entries to the destination routing protocol’s topology table. The filtering process prevents some of the routes from being added to the topology table, so an examination of the destination routing protocol’s topology table shows whether the filtering worked correctly. Additionally, the routing tables of other routers in the destination routing domain can be checked. A good redistribution verification plan should check that the correct routes are filtered and confirm that no extra routes are filtered. In a production environment, that work might be laborious. With the example shown in Figure 10-11 and Example 10-16, verification takes a little less time because of the relatively small number of routes and the fact that the subnets in the OSPF domain all begin with 172.16. From the Library of Alexey Evseenko 442 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Example 10-17 shows an abbreviated version of the EIGRP topology table on Router RD1. The show ip route 172.16.0.0 command lists the 12 OSPF subnets that currently exist in the OSPF domain (as shown in Figure 10-11). The show ip eigrp topology | include 172[.]16 command lists only routes that include text “172.16,” listing only nine subnets—and omitting the three subnets that should have been filtered, which confirms that the filtering worked. Note The brackets in the show ip eigrp topology | include 172[.]16 command tell Cisco IOS to treat the period as a literal, searching for the text “172.16” in the command output, instead of treating the period as a wildcard in a Cisco IOS regular expression. Example 10-17 Verifying Redistribution Filtering RD1# show ip route 172.16.0.0 Routing entry for 172.16.0.0/16, 12 known subnets Attached (2 connections) Variably subnetted with 7 masks Redistributing via eigrp 1 O C C O O O IA O IA O IA O IA O IA O IA O IA 172.16.48.0/25 [110/65] via 172.16.18.2, 03:25:56, Serial0/0/1 [110/65] via 172.16.14.2, 03:24:09, Serial0/1/0 172.16.18.0/30 is directly connected, Serial0/0/1 172.16.14.0/30 is directly connected, Serial0/1/0 172.16.8.0/25 [110/65] via 172.16.18.2, 03:25:56, Serial0/0/1 172.16.4.0/25 [110/65] via 172.16.14.2, 03:24:49, Serial0/1/0 172.16.104.0/27 [110/65] via 172.16.14.2, 03:24:44, Serial0/1/0 172.16.105.0/28 [110/65] via 172.16.14.2, 03:24:44, Serial0/1/0 172.16.106.0/29 [110/65] via 172.16.14.2, 03:24:44, Serial0/1/0 172.16.107.0/30 [110/65] via 172.16.14.2, 03:24:44, Serial0/1/0 172.16.101.0/24 [110/65] via 172.16.14.2, 03:24:44, Serial0/1/0 172.16.102.0/25 [110/65] via 172.16.14.2, 03:24:44, Serial0/1/0 172.16.103.0/26 [110/65] via 172.16.14.2, 03:24:44, Serial0/1/0 RD1# show ip eigrp topology | include 172[.]16 P 172.16.48.0/25, 1 successors, FD is 1709056 P 172.16.18.0/30, 1 successors, FD is 1709056 P 172.16.14.0/30, 1 successors, FD is 1709056 P 172.16.8.0/25, 1 successors, FD is 1709056 P 172.16.4.0/25, 1 successors, FD is 1709056 P 172.16.106.0/29, 1 successors, FD is 1709056 P 172.16.107.0/30, 1 successors, FD is 1709056 P 172.16.102.0/25, 1 successors, FD is 1709056 P 172.16.103.0/26, 1 successors, FD is 1709056 From the Library of Alexey Evseenko Chapter 10: Route Redistribution 443 Besides examining the topology tables on the router doing the redistribution, a show ip route command on other routers inside the EIGRP domain, like R2, could be used to confirm the presence and absence of the routes according to the plan. However, the routing table on the redistributing router will list the routes as learned from the original routing domain. Any ACLs or prefix lists used to match packets can also be used as a gauge to tell whether the correct statements matched routes. The show ip access-list [number | name] and show ip prefix-list detail [name] commands list counters that increment each time Cisco IOS matches a route for redistribution. Particularly when first using the ACL or prefix list, these commands can confirm which statements have been matched. The counters do increment each time the router considers whether to redistribute a route. Specifically, when a route fails, and the redistributing router removes the route from the routing table and then later adds the route to the routing table again, the counters for matching the ACL or prefix list will increment. Example 10-18 shows an example of each command and the appropriate counters. Example 10-18 Verifying Redistribution Filtering RD1# show access-list Extended IP access list match-101 10 permit ip host 172.16.101.0 host 255.255.255.0 (1 match) Extended IP access list match-104-105 10 permit ip host 172.16.104.0 host 255.255.255.224 (1 match) 20 permit ip host 172.16.105.0 host 255.255.255.240 (1 match) RD1# show ip prefix-list detail match-area0-permit ip prefix-list match-area0-permit: count: 5, range entries: 0, sequences: 5 - 25, refcount: 3 seq 5 permit 172.16.14.0/30 (hit count: 6, refcount: 1) seq 10 permit 172.16.18.0/30 (hit count: 5, refcount: 1) seq 15 permit 172.16.8.0/25 (hit count: 4, refcount: 2) seq 20 permit 172.16.4.0/25 (hit count: 3, refcount: 3) seq 25 permit 172.16.48.0/25 (hit count: 2, refcount: 2) Setting Metrics When Redistributing Setting a different metric for different redistributed routes requires only a minor amount of additional configuration. The redistributing router still needs a route map and still needs to match the routes. Additionally, to set the metric for routes matched by a particular clause, the route map needs the set metric route map subcommand. When redistributing into EIGRP, this command has five parameters (bandwidth, delay, reliability, load, and MTU). When redistributing into OSPF or Routing Information Protocol (RIP), a single integer metric is used. Configuring the Metric Settings Continuing with the same internetwork shown in Figure 10-11, and with the same filtering goals summarized earlier in Table 10-8, Table 10-9 further defines the goals from From the Library of Alexey Evseenko 444 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide redistribution from OSPF into EIGRP in this internetwork. The same routes will be filtered, but now the metrics of the allowed routes will be set differently as listed in the table. Table 10-9 Parameters Used in Metric and Tag Setting Example Prefix 172.16.101.0 Action deny Metric (Bandwidth, Delay, Reliability, Load, MTU) — 172.16.102.0 172.16.103.0 permit 1000 44 255 1 1500 172.16.104.0 172.16.105.0 deny — 172.16.106.0 172.16.107.0 All others permit permit 100 4444 255 1 1500 1500 10 255 1 1500 The requirements in Table 10-9 list three different sets of metrics for the redistributed routes. To implement this design, the route map needs at least three clauses: one for each set of routes for which the metric should differ. The example route maps listed earlier in Example 10-16 do not happen to separate the three groups of allowed routes into different route-map clauses, so a new route map will be used. Example 10-19 shows the new configuration. Note that it does make use of one of the old IP prefix lists; namely, matcharea0-permit. Example 10-19 Route Map to Set Metrics According to Table 10-9 ! First, two new prefix lists are added – one to match subnets 102 and 103, ! and another to match subnets 106 and 107. ip prefix-list match-102-103 seq 5 permit 172.16.102.0/23 ge 25 le 26 ! ip prefix-list match-106-107 seq 5 permit 172.16.106.0/23 ge 29 le 30 ! The following is a repeat of the prefix list that matches the five routes ! in area 0 ip prefix-list match-area0-permit seq 5 permit 172.16.14.0/30 ip prefix-list match-area0-permit seq 10 permit 172.16.18.0/30 ip prefix-list match-area0-permit seq 15 permit 172.16.8.0/25 ip prefix-list match-area0-permit seq 20 permit 172.16.4.0/25 ip prefix-list match-area0-permit seq 25 permit 172.16.48.0/25 ! A new route map to filter and set metrics, with three clauses From the Library of Alexey Evseenko route-map set-metric permit 10 match ip address prefix-list match-area0-permit ! route-map set-metric permit 20 match ip address prefix-list match-102-103 set metric 1000 44 255 1 1500 ! route-map set-metric permit 30 match ip address prefix-list match-106-107 set metric 100 4444 255 1 1500 Chapter 10: Route Redistribution 445 ! router eigrp 1 default-metric 1500 10 255 1 1500 redistribute ospf 2 route-map set-metric The new route map has three explicitly configured clauses, two of which explicitly set the metric values using the set metric command. However, the first clause (sequence number 10), which matches routes for the five subnets inside area 0, does not use a set metric command to set the metric. Instead, because this route map clause omits the set metric command, routes that match this clause use the metric keyword on the redistribute command, or if not listed, the metrics as defined by the default-metric EIGRP subcommand. In this case, because the redistribute command does not list a metric keyword, routes matched by this clause (sequence number 10) use the metric values listed in the default-metric command. Verifying the Metric Settings Verifying the metrics again requires an examination of the EIGRP topology table. In this case, Example 10-20 displays a couple of views of RD1’s EIGRP topology table, focusing on routes to 172.16.102.0/25 and 172.16.106.0/29. The configuration in the previous Example 10-19 set the metrics to different values, and next the output in Example 10-20 shows the differences. Example 10-20 Verifying Metrics as Set During Redistribution RD1# show ip eigrp topology 172.16.102.0/25 IP-EIGRP (AS 1): Topology entry for 172.16.102.0/25 State is Passive, Query origin flag is 1, 1 Successor(s), FD is 1709056 Routing Descriptor Blocks: 172.16.14.2, from Redistributed, Send flag is 0x0 Composite metric is (2571264/0), Route is External Vector metric: Minimum bandwidth is 1000 Kbit Total delay is 440 microseconds Reliability is 255/255 Load is 1/255 From the Library of Alexey Evseenko 446 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Minimum MTU is 1500 Hop count is 0 External data: Originating router is 172.30.17.1 (this system) AS number of route is 2 External protocol is OSPF, external metric is 65 Administrator tag is 0 (0x00000000) RD1# show ip eigrp topology 172.16.104.0/25 % IP-EIGRP (AS 1): Route not in topology table RD1# show ip eigrp topo 172.16.106.0/29 IP-EIGRP (AS 1): Topology entry for 172.16.106.0/29 State is Passive, Query origin flag is 1, 1 Successor(s), FD is 1709056 Routing Descriptor Blocks: 172.16.14.2, from Redistributed, Send flag is 0x0 Composite metric is (26737664/0), Route is External Vector metric: Minimum bandwidth is 100 Kbit Total delay is 44440 microseconds Reliability is 255/255 Load is 1/255 Minimum MTU is 1500 Hop count is 0 External data: Originating router is 172.30.17.1 (this system) AS number of route is 2 External protocol is OSPF, external metric is 65 Administrator tag is 0 (0x00000000) ! RD1# show ip prefix-list detail match-102-103 ip prefix-list match-102-103: count: 1, range entries: 1, sequences: 5 - 5, refcount: 2 seq 5 permit 172.16.102.0/23 ge 25 le 26 (hit count: 14, refcount: 1) Although you could use variations of the show ip route command to verify the new metrics, because the redistribution process sets the EIGRP component metrics, the show ip eigrp topology command displays much more useful verification information. Setting the External Route Type When redistributing into OSPF, Cisco IOS automatically sets the external route type to external Type 2 (E2). However, the type can be configured as E1 or E2 by using the set metric-type {type-1 | type-2} route map subcommand. When a redistribute OSPF subcommand references such a route map, the routes matched by the route map clause with the set metric-type command will be designated as that external type in the Type 5 LSA created for that subnet. From the Library of Alexey Evseenko Chapter 10: Route Redistribution 447 Note that the redistribute command also allows the match {internal | external 1 | external 2 | nssa-external} parameters, but these parameters do not set the type or route. Instead, these parameters match existing routes as part of the process of deciding which routes to redistribute. Redistribution Filtering with the distribute-list Command Using a route map as referenced on the redistribute command provides many features. You can filter routes, assign different metrics for different routes, and assign external route types. You can even assign route tags as discussed later in the section “Preventing Domain Loops by Filtering on Route Tag Using Distribute Lists.” However, if the plan calls for route filtering only when redistributing, but none of the other functions supplied by a route map are needed, and you can match all the routes with a single ACL or prefix list, Cisco IOS supports a second style of route filtering configuration using the distribute-list command. The distribute-list command can be configured to refer to the routing process from which routes are redistributed and cause the router to filter routes taken from that process. To do so, the command must use the out direction, and it must refer to the routing process from which routes are redistributed. For example, distribute-list 1 out ospf 2, configured under an EIGRP process, tells EIGRP to apply ACL 1 to routes redistributed from the OSPF 2 process. For another example, under an OSPF process, the distributelist prefix fred out eigrp 1 command tells OSPF to apply IP prefix list fred to routes redistributed from the EIGRP 1 process. Finally, one note about internals of how this command works. The filtering takes place as the routes are redistributed. As a result, routes filtered by the distribute-list command prevent the routes from being added to the topology table of the destination routing protocol. So, the same verification commands seen in earlier examples, with a focus on the topology tables, can be used to show whether the filtering worked. Also, the counters in the show ip access-list and show ip prefix-list detail command output also increment to show whether the filtering worked. Issues with Multiple Redistribution Points The use of a single router to redistribute routes means that a single failure could cause hosts in different routing domains to fail. The redistributing router could simply fail, or interfaces or links on that router could fail. To avoid that single point of failure, many redistribution designs call for a minimum of two routers performing redistribution, particularly in cases where the redistribution function will be somewhat permanent. The existence of two or more redistribution points between the same two routing domains introduces some complexity and caveats. The issues revolve around the concept that a route in one domain can be advertised into another domain, and then back into the original routing domain. Figure 10-12 shows one of the issues when using multiple redistribution points. In this case, the arrowed lines show the best route from a router in domain 2 to reach a subnet also in domain 2. However, the route actually passes through domain 1. From the Library of Alexey Evseenko 448 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Routing Domain 1 Routing Domain 2 RD1 R2 R1 RD2 Subnet X Figure 10-12 Domain Loop Figure 10-12 shows the long route that goes from R2, through RD1, to R1, and back into routing domain 2 through RD2. This long route occurs because of the routing advertisements that flow in the opposite direction: advertised by RD2 into routing domain 1 and then by RD1 back into routing domain 2. The problem occurs when the twice-redistributed route for subnet X is redistributed back into the original domain with a relatively low metric. The twice-redistributed route then has a better metric than the route that was advertised only internal to that routing domain. This section examines how to prevent this “domain loop” problem when using multiple redistribution points. Interestingly, this problem does not occur, at least with default settings, when EIGRP is one of the two routing protocols. So this section begins with examples of RIP and OSPF redistribution, showing how to prevent this domain-looping problem and then showing why EIGRP accomplishes this same feat with default settings. Note I know of no industry-standard name for the problem shown in Figure 10-12. For the duration of this chapter, I refer to it simply as the domain loop problem. Preventing Routing Domain Loops with Higher Metrics One easy method of preventing the domain loop problem is to assign purposefully high metric values when redistributing routes. For example, consider the case shown in Figure 10-13, with a RIP domain on the left and OSPF on the right. In this case, the two routers doing the redistribution (RD1 and RD2) assign an OSPF metric of 500 when redistributing routes into OSPF and a metric value of 5 when redistributing routes into RIP. From the Library of Alexey Evseenko RIP R7 R2 metric 500 RD1 metric 5 metric 500 RD2 metric 5 Chapter 10: Route Redistribution 449 OSPF R8 R4 Figure 10-13 Defeating Domain Loops by Using Very Large Metrics First, focus on routes inside the RIP domain. This design prevents the domain loop problem—routes that send packets from the RIP domain, into OSPF, and back again—if the normal intra-domain RIP routes never exceed a hop count of 4. Then, all routes redistributed from RIP into OSPF, and then back into RIP, will at least have a metric of 5. As a result, the route advertisements that looped back into the RIP domain will always have less desirable metrics than the RIP advertisements from within the RIP domain. The same concept applies to OSPF. For routes completely internal to the OSPF domain, if the highest cost is 499, the redistribution of external routes with a metric of 500 prevents the domain loop. For example, a subnet that exists in the OSPF domain could be advertised into RIP by RD1 and then re-advertised by RD2 back into the OSPF domain—but with a metric value that begins at 500. Again, assuming that all the normal OSPF routes that were not reintroduced as external routes have a cost of less than 500, the domain loop problem is defeated. Note that OSPF actually defeats the domain loop problem without using the higher metrics. OSPF always prefers internal routes over E1 routes, and E1 routes over E2 routes, before even considering the metrics. Preventing Routing Domain Loops with Administrative Distance Each router associates an administrative distance (AD) with every route it considers to be added to the routing table. When a router must consider multiple routes from different sources for the exact same prefix/length, the first item considered by the router is not the metric, but rather the AD. The lower the AD, the better the route. Note that the AD is a local setting on a router and cannot be advertised to neighboring routers. Each routing source has a default AD according to Cisco IOS. In some cases, a given routing source has different defaults for different types of routes inside that routing From the Library of Alexey Evseenko 450 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide source. For example, EIGRP has different AD values for EIGRP internal routes (AD 90) and EIGRP external routes (AD 170). Table 10-10 lists the default settings. Table 10-10 Default Administrative Distances Key Topic Route Type Administrative Distance Connected 0 Static 1 EIGRP summary route 5 eBGP 20 EIGRP (internal) 90 IGRP 100 OSPF 110 IS-IS 115 RIP 120 On-Demand Routing (ODR) 160 EIGRP (external) 170 iBGP 200 Unreachable 255 EIGRP Default AD Defeats Loop from EIGRP to OSPF to EIGRP The default AD settings for EIGRP take care of the domain loop problem when redistributing between EIGRP and OSPF. First, consider an EIGRP and OSPF domain with two redistribution points (Routers RD1 and RD2), as shown in Figure 10-14. The figure shows a general idea of route advertisements for subnet X, which exists in the EIGRP domain. (Note: To reduce clutter, the figure shows only route advertisements that affect Router RD2’s logic; the same issue exists on both redistributing routers.) Router RD2 hears about a route for subnet X as an internal EIGRP route (default AD 90) on the left. RD2 also hears about the subnet as an external OSPF route on the right (default AD 110). As a result, RD2 will do a couple of things that are important to this discussion: ■ RD2 considers the internal EIGRP route as the best route, because of the lower AD, and places that route in its own IP routing table. ■ RD2 does not redistribute a route for subnet X from OSPF back to EIGRP, because RD2 does not have an OSPF route for subnet X. From the Library of Alexey Evseenko Key Topic EIGRP Subnet X Internal EIGRP Subnet X RD1 OSPF Subnet X External OSPF Chapter 10: Route Redistribution 451 Subnet X Internal EIGRP RD2 Subnet X External OSPF Route from Left: AD 90 Route from Right: AD 110 Figure 10-14 Subnet X: Internal EIGRP, External OSPF, on Router RD2 The second point is particularly important but easily missed. Remember that routers use the IP routing table as the basis for route redistribution. Both RD1 and RD2 redistribute routes in both directions between both domains. However, a route must be in the routing table before it can be redistributed. Because RD2’s route for subnet X will list its EIGRP route, RD2’s redistribution from OSPF into EIGRP will not redistribute a route for subnet X. Because RD2 will not advertise a route for subnet X from OSPF back into EIGRP, the domain loop has been prevented. EIGRP Default AD Defeats Loop from OSPF to EIGRP to OSPF The reverse case—routes taken from OSPF, advertised into EIGRP, and then advertised back into OSPF—is the more interesting possible domain loop case. However, the default EIGRP AD settings still defeat the domain loop issue. Figure 10-15 shows an example similar to Figure 10-14, but this time with subnet Y in the OSPF domain. As before, the focus of the figure is on the routing advertisements that reach Router RD2, with other details omitted to reduce clutter. EIGRP OSPF Subnet X Subnet Y external EIGRP RD1 Subnet Y internal OSPF Subnet Y Subnet Y external EIGRP RD2 Subnet Y internal OSPF Route Y from Left: Route Y from Right: AD 170 AD 110 Figure 10-15 IDS and IPS Operational Differences From the Library of Alexey Evseenko 452 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide In this case, Router RD2 hears about a route for subnet Y as an external EIGRP route (default AD 170) and as an internal OSPF route (default AD 110). As a result, RD2 chooses the OSPF internal route as the best route and adds that to RD2’s routing table. Because RD2 does not have an EIGRP route for subnet Y, RD2 will not redistribute a route for subnet Y from EIGRP into OSPF, again defeating the domain loop problem. Setting AD per Route Source for Internal and External Routes The reason that the default EIGRP AD settings work well can be summarized generically as follows: For each of the two routing protocols, the AD used for internal routes for one routing protocol is better than the AD used for external routes by the other routing protocol. When comparing EIGRP’s and OSPF’s defaults, both of the generic criteria are met: ■ EIGRP internal AD 90 < OSPF external AD 110 ■ OSPF internal AD 110 < EIGRP external AD 170 Likewise, when redistributing between EIGRP and RIP: ■ EIGRP internal AD 90 < RIP external AD 120 ■ RIP internal AD 120 < EIGRP external AD 170 Note RIP does not have a concept of internal and external routes. The preceding references refer to internal routes as routes that exist inside the RIP domain and external as routes that exist outside the RIP domain. When redistributing between OSPF and RIP, the default AD settings do not defeat the domain loop problem. However, Cisco IOS supports the definition of different AD settings for all routing protocols. With EIGRP, the internal and external AD settings can be overridden, although the defaults work well for the prevention of domain loops. OSPF can be configured to use a different AD for external routes, intra-area routes, and interarea routes. RIP, which does not have a concept of internal and external routes, can only be set with a single AD value. Table 10-11 shows the router subcommands to set the AD values, per route category. Table 10-11 Setting AD Values with the distance Command Routing Protocol RIP EIGRP OSPF Command distance ad-value distance eigrp internal-ad external-ad distance ospf {external ad-value} {intra-area ad-value} {inter-area ad-value} From the Library of Alexey Evseenko Chapter 10: Route Redistribution 453 To defeat the OSPF-RIP domain loop problem by setting AD, just configure the AD for OSPF external routes using the distance ospf external ad-value command in OSPF configuration mode. The actual AD value does not matter much, but it should be higher than RIP’s AD on that same router. For example, the distance ospf external 130 command in OSPF configuration mode results in the following, assuming that all other AD values are set to their defaults: ■ RIP internal AD 120 < OSPF external AD 130 ■ OSPF internal AD 110 < RIP external AD 120 Domain Loop Problems with More Than Two Routing Domains With only two routing domains, the solutions seen so far—setting higher metrics and AD values—can deal with domain loop problems. However, with three or more routing domains, setting metrics and AD values does not always solve the domain loop problem. Specifically, problems can occur when three or more routing domains connect in sequence, as shown in Figure 10-16. Such a situation might exist in the real world where a large company has multiple mergers and acquisitions with smaller companies (running a variety of routing protocols). OSPF EIGRP RIP RD1 2 R9 1 172.20.0.0/16 4 RD2 3 R4 Legend: Route Redistribution Resulting Route Figure 10-16 Inefficient Routing with Looped Routing Advertisements The steps noted in the figure are as follows: Step 1. Router R9 advertises a route for network 172.20.0.0/16 from the RIP domain into the EIGRP domain, where the route is treated with (default) AD 170 as an external route. From the Library of Alexey Evseenko 454 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Step 2. Router RD1 redistributes this EIGRP external route into OSPF, where it is treated as an E2 route, AD 110, by default. Step 3. Router RD2 uses the AD 110 E2 route, rather than the AD 170 EIGRP external route, as its best route for 172.20.0.0/16. As a result, RD2 can then redistribute that OSPF route back into EIGRP as an external route. Step 4. Router R4 learns of two external routes for 172.20.0.0/16, and the routes tie based on AD (170). R4 might have a better EIGRP metric through RD2, depending on the metrics used at redistribution, preferring this long route through the OSPF domain as shown. This is just one example case for such problems, but the problem exists, because the obviously better route and the longer domain loop route are both external routes. The two competing routes tie on AD as a result. In the earlier cases, with only two routing domains, this problem does not occur. Several solutions exist for such problems. None of the solutions require a lot of extra configuration, other than that some of the solutions require ACLs or prefix lists that match the prefixes from the various routing domains. The next three sections address each option, namely, using per-route AD settings, filtering routes based on prefix/length, and using route tags. Using Per-Route Administrative Distance Settings As seen in Table 10-11, you can use the distance router subcommand to set the AD value per routing protocol, per type (internal and external). The distance command also supports another syntax in which the router sets the AD for individual routes based on the following criteria: ■ The router that advertised the routing information ■ Optionally, for the prefixes/lengths of the routes as matched by a referenced ACL The syntax of the command in this case is distance distance ip-adv-router wc-mask [acl-number-or-name] In this command, the required parameters match the neighboring router that advertises a route. The router with the distance command configured compares the advertising router’s IP address to the range of addresses implied by the ip-adv-router and wc-mask parameters of the command, as if these were parameters in an ACL. For routes advertised by a matching neighbor, that router then applies the AD listed in the command. Optionally, the distance command can also refer to an ACL. If included, that router compares the ACL to the prefix/length of each route learned from any matched neighbors and uses the listed AD only for routes permitted by the ACL. For example, consider the problem shown in Figure 10-16. Assuming that the design calls for all hosts to have reachability to 172.20.0.0/16, the route must be redistributed by R9 into the EIGRP domain. For the best availability, this route should be redistributed from From the Library of Alexey Evseenko Chapter 10: Route Redistribution 455 EIGRP into OSPF at both redistribution points (RD1 and RD2). The unfortunate longroute choice by Router R4 in the figure occurs at what is listed as Step 3 in that figure, with Router RD2 using AD to determine that its external OSPF route for 172.20.0.0/16 (AD 110) is better than its EIGRP external route (AD 170) for that same prefix. One solution would be to cause RD2 to use a higher AD—specifically higher than the 170 AD used for EIGRP external routes—for prefix 172.20.0.0/16 as learned with OSPF. A distance command on RD2 could solve the problem. Upcoming Examples 10-21 and 10-22, plus Figure 10-17, demonstrate both the domain loop problem in this same case, along with the solution. First, Figure 10-17 shows a more detailed topology for reference. Then, Example 10-21 shows the relevant configuration and a few related show commands on Router RD2 before using the distance command to prevent the problem. This example shows Router R4 using the longer path through the OSPF domain on the left. Finally, Example 10-22 shows the configuration of the distance command and resulting solution. OSPF EIGRP Fa0/1 7.7/23 R7 Fa0/0 27.7/23 S0/0 17.2/30 S0/1/1 17.1/30 S0/0/1 18.1/30 S0/0 18.2/30 Fa0/1 8.8/25 R8 Fa0/0 48.8/25 Fa0/0 27.2/23 S0/0/1 12.2/30 RD1 S0/0/0 12.1/30 S0/1/0 14.1/30 S0/0/0 Fa0/0 14.2/30 48.4/25 R2 Fa0/1 2.2/23 S0/0/0 23.2/30 R4 S0/0/1 34.2/30 Fa0/1 4.4/25 S0/0/1 23.1/30 RD2 S0/0/0 34.1/30 172.20.0.0/16 R9 RIP Figure 10-17 Detailed View of Internetwork Example 10-21 Long Route from RD2, into OSPF, for 172.20.0.0/16 ! The following is the routing protocol configuration on RD2 router eigrp 1 redistribute ospf 2 metric 1000 200 255 1 1500 network 172.16.0.0 no auto-summary From the Library of Alexey Evseenko 456 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide ! router ospf 2 router-id 3.3.3.3 log-adjacency-changes redistribute eigrp 1 subnets network 172.30.0.0 0.0.255.255 area 0 ! Next, the long route for 172.20.0.0/16 is listed. This route goes from ! RD2 back into the OSPF domain; interface S0/0/1 connects to router R2. RD2# show ip route | include 172.20.0.0 O E2 172.20.0.0/16 [110/20] via 172.30.23.2, 00:06:57, Serial0/0/1 ! Next, the source of this routing information is listed under the ! text "Known via". RD2's current route is learned by OSPF. RD2# show ip route 172.20.0.0 Routing entry for 172.20.0.0/16 Known via "ospf 2", distance 110, metric 20, type extern 2, forward metric 128 Redistributing via eigrp 1 Advertised by eigrp 1 metric 1000 200 255 1 1500 Last update from 172.30.23.2 on Serial0/0/1, 00:07:04 ago Routing Descriptor Blocks: * 172.30.23.2, from 1.1.1.1, 00:07:04 ago, via Serial0/0/1 Route metric is 20, traffic share count is 1 ! RD2 does know a working (successor) route for the same prefix, ! but prefers the lower-AD route (110) through OSPF. RD2#show ip eigrp topology | section 172.20.0.0 P 172.20.0.0/16, 1 successors, FD is 2611200 via Redistributed (2611200/0) The comments inside Example 10-21 detail the current state, with the longer route, as shown in Figure 10-16. Most importantly, note the “Known via...” text in the output of the show ip route 172.20.0.0 command. This output specifically states the source of the route that is currently in the routing table. Next, Example 10-22 shows the configuration on RD2 to solve this problem by setting RD2’s AD for that specific route and additional show commands. Example 10-22 Configuring Per-Route AD on Router RD2 RD2# conf t Enter configuration commands, one per line. End with CNTL/Z. RD2(config)# router ospf 2 RD2(config-router)# distance 171 1.1.1.1 0.0.0.0 match-172-20 RD2(config-router)# ip access-list standard match-172-20 RD2(config-std-nacl)# permit host 172.20.0.0 From the Library of Alexey Evseenko RD2(config-std-nacl)# end RD2# Chapter 10: Route Redistribution 457 ! Now the best route for 172.20.0.0 is known from EIGRP 1. RD2# show ip route 172.20.0.0 Routing entry for 172.20.0.0/16 Known via "eigrp 1", distance 170, metric 3635200, type external Redistributing via ospf 2, eigrp 1 Advertised by ospf 2 subnets Last update from 172.16.34.2 on Serial0/0/0, 00:08:01 ago ! lines omitted for brevity ! The next command lists the matching logic of the distance command. RD2# show ip protocols | section ospf Routing Protocol is "ospf 2" Outgoing update filter list for all interfaces is not set Incoming update filter list for all interfaces is not set Router ID 172.30.23.1 It is an autonomous system boundary router Redistributing External Routes from, eigrp 1, includes subnets in redistribution Number of areas in this router is 1. 1 normal 0 stub 0 nssa Maximum path: 4 Routing for Networks: 172.30.0.0 0.0.255.255 area 0 Reference bandwidth unit is 100 mbps Routing Information Sources: Gateway Distance Last Update 1.1.1.1 171 00:00:35 2.2.2.2 110 00:00:35 7.7.7.7 110 00:00:35 Distance: (default is 110) Address Wild mask Distance List 1.1.1.1 0.0.0.0 171 match-172-20 Redistributing: ospf 2, eigrp 1 The configuration, although short, has one possibly counterintuitive twist. The IP address of the neighboring router, referenced in the distance command in OSPF configuration mode, will be compared to the OSPF RID of the OSPF router that owns the LSA. In this case, Router RD1 creates the Type 5 LSA for 172.20.0.0, and RD1’s RID happens to be 1.1.1.1. RD2’s distance 171 1.1.1.1 0.0.0.0 match-172-20 command tells OSPF to look for LSAs owned by exactly RID 1.1.1.1, and if the prefix is permitted by the match-172-20 ACL, apply AD 171 to this route. The show ip route 172.20.0.0 command verifies that Router RD1 now prefers its AD 170 EIGRP route for 172.20.0.0/16. The highlighted portions of this command now refer to routing source EIGRP 1, with the outgoing interface of S0/0/0, which connects RD2 into From the Library of Alexey Evseenko 458 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide the EIGRP domain. Because RD2 no longer has an OSPF route for 172.20.0.0/16, RD2 will not redistribute such an OSPF route back into EIGRP, defeating the domain loop problem. Note A complete solution requires all redistributing routers to perform this kind of configuration, for all such routes from the third routing domain. Although this example shows the OSPF version of the distance command, one notable difference exists between the OSPF version and the RIP and EIGRP distance commands. When used as a RIP or EIGRP subcommand, the distance command matches the interface IP address of the neighboring router that advertises the route. Preventing Domain Loops by Filtering on Subnet While Redistributing The next tool prevents domain loops by filtering the routes based on prefix. Figure 10-18 shows the idea from a redistribution design perspective. OSPF EIGRP RIP 2 3 3 RD1 4 2 R9 172.20.0.0/16 1 RD2 4 Figure 10-18 Preventing Domain Loops with Route Filtering Following are the steps as listed in the figure: Step 1. Router R9 advertises a route for network 172.20.0.0/16 from the RIP domain into the EIGRP domain. Step 2. Routers RD1 and RD2 both redistribute this EIGRP external route into OSPF. Step 3. Both RD1 and RD2 flood the route advertisement for the OSPF external route throughout the OSPF domain. Step 4. Both RD1 and RD2 apply a route map to their redistribution from OSPF into EIGRP, filtering routes with prefix 172.20.0.0. From the Library of Alexey Evseenko Chapter 10: Route Redistribution 459 The configuration itself uses the same methods and commands as included earlier in the section “Filtering Redistributed Routes with Route Maps.” Interestingly, this design does prevent the long routes, as shown earlier in Figure 10-16, but it does leave the possibility of a long route on a redistributing router. For example, if using all default AD settings, RD2 still learns an OSPF (default AD 110) route for 172.20.0.0 from RD1, so it might choose as best route the OSPF route through RD1. Setting the AD for OSPF external routes to something larger than EIGRP’s external AD of 170 would prevent this particular problem as well. Preventing Domain Loops by Filtering on Route Tag Using Distribute Lists Route tags, the last tool shown in this chapter for preventing the domain loop problem, have a much broader use than just preventing redistribution problems. A route tag is a unitless 32-bit integer that most routing protocols can assign to any given route. The assignment of a tag occurs when some Cisco IOS function adds the tag—for example, it can be assigned by a route map referenced by a routing protocol distributelist or redistribute command. That tag follows the route advertisement, even through the redistribution process. At some later point in the flooding of routing information, other Cisco IOS tools, typically other route maps, can match routes with a given route tag to make a decision. In some cases, the idea of a route tag creates a mental block, because it has no one specific purpose. The network engineer chooses the purpose of a route tag; the purpose has not been predetermined by a particular protocol. The folks that created the routing protocol provided us all with a nice, convenient place to add the equivalent of a sticky note to each route. It’s up to us to decide what the note means. Figure 10-19 shows one common use of route tags other than for solving the domain loop problem. In the figure, one large company that uses EIGRP (the middle of the figure) bought two smaller companies, both of whom use OSPF. The larger company wants to connect both small companies into the larger network, but it wants to prevent hosts in the two smaller companies from knowing routes to the other smaller company. The figure shows only left-to-right advertisements of routes to reduce the clutter. OSPF Domain Company 1 tag 1 tag 2 OSPF Domain Company 2 EIGRP Domain tag 1 only OSPF Domain Company 1 tag 2 only OSPF Domain Company 2 Figure 10-19 Using Route Tags to Determine Routing Domain Origin From the Library of Alexey Evseenko 460 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Key Topic The two routers on the left each redistribute routes from the smaller companies into the EIGRP. The routers apply a route tag of 1 to each route from OSPF domain 1 and a tag of 2 to routes redistributed from OSPF domain 2. The actual numbers do not matter, as long as they are unique. On the right, the routers know that the routes from OSPF domain 1 have route tag 1, and only these routes should be redistributed into the other part of OSPF domain 1. So, when redistributing into OSPF domain 1, the route map makes a comparison of the route tag (command match tag 1) and allows only those routes. Similarly, when redistributing into OSPF domain 2, the match tag 2 command would be used, redistributing only routes with tag 2. To use route tags to prevent domain loop problems, you can use the following strategy: ■ Choose and set a tag value that identifies routes taken from domain X and advertised into domain Y. ■ When redistributing in the opposite direction (from domain Y into domain X), match the tag value and filter routes with that tag. For example, consider the case shown in Figure 10-20. The figure shows the usual RD1 and RD2 between two routing domains, with EIGRP on the right in this case and OSPF on the left. The engineer planned to use route tag 11 to mean “routes taken from EIGRP and redistributed into OSPF.” The figure shows one direction of potential loops: from EIGRP through RD1, through OSPF, and back to EIGRP through RD2. However, the same concept would also apply to the other direction. Key Topic 1 set tag 11 RD1 OSPF EIGRP RD2 2 deny tag 11 permit all else Figure 10-20 Using Route Tags to Prevent Domain Loop Problems The first step (noted with a circled 1 in the figure) is the usual redistribution, but with a route map that tags all routes redistributed from EIGRP into OSPF with tag 11. RD2 learns these routes with OSPF. At Step 2, RD2 tries to redistribute the routes but chooses to filter all routes that have a tag value of 11. As a result, none of the routes learned from EIGRP are re-advertised back into EIGRP. Example 10-23 shows the configuration that matches Figure 10-20. From the Library of Alexey Evseenko Chapter 10: Route Redistribution 461 Example 10-23 RD1 and RD2 Configuration with Route Tags to Prevent Domain Loops ! The following is the routing protocol configuration on RD1 router ospf 2 router-id 3.3.3.3 log-adjacency-changes redistribute eigrp 1 subnets route-map set-tag-11 network 172.30.0.0 0.0.255.255 area 0 ! route-map set-tag-11 permit 10 set tag 11 ! The following is the routing protocol configuration on RD2 router eigrp 1 redistribute ospf 2 metric 1000 200 255 1 1500 route-map stop-tag-11 network 172.16.0.0 no auto-summary ! route-map stop-tag-11 deny 10 match tag 11 ! route-map stop-tag-11 permit 20 First, note that the configuration does rely on a couple of default route map actions that bear some review. In the set-tag-11 route map on RD1, only one route map clause exists, and that clause has no match commands. A route map clause with no match commands matches all routes, so all routes are assigned tag 11. In the stop-tag-11 route map on RD2, the first clause lists a deny action, meaning that all routes matched by that clause (all with tag 11) are filtered. All other routes, for example those routes for subnets native to the OSPF domain, match the second, because that second clause does not have a match command. Example 10-23 shows the configuration that tags routes coming from EIGRP into OSPF and then filters routes with that same tag as they go from OSPF into EIGRP. For a complete solution, the reverse case would also need to be configured, using a different route tag value. From the Library of Alexey Evseenko 462 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Exam Preparation Tasks Planning Practice The CCNP ROUTE exam expects test takers to review design documents, create implementation plans, and create verification plans. This section provides some exercises that can help you to take a step back from the minute details of the topics in this chapter so that you can think about the same technical topics from the planning perspective. For each planning practice table, simply complete the table. Note that any numbers in parentheses represent the number of options listed for each item in the solutions in Appendix F, “Completed Planning Practice Tables.” Design Review Table Table 10-12 lists several design goals related to this chapter. If these design goals were listed in a design document, and you had to take that document and develop an implementation plan, what implementation options come to mind? For any configuration items, a general description can be used, without concern about the specific parameters. Table 10-12 Design Review Design Goal A design shows Router R1 as being connected to both an EIGRP and OSPF routing domain, with all external EIGRP routes using a particular set of component EIGRP metrics. How can these metrics be set? (3) A design shows Router R1 as being connected to two different EIGRP domains, with redistribution planned. Can the design cause the routers to calculate metrics based on both the metric assigned when redistributing and the internal EIGRP topology? The same design as in the previous row is shown, except describe whether the design can cause the routers to calculate metrics based solely on the metric components assigned when redistributing. Possible Implementation Choices Covered in This Chapter A design shows Router R1 as being connected to two different OSPF domains, with redistribution planned, and all routes calculated by including internal and external OSPF distance. From the Library of Alexey Evseenko Chapter 10: Route Redistribution 463 Design Goal Possible Implementation Choices Covered in This Chapter The same design as in the previous row is shown, except that all external route metrics are based solely on external metrics. Filter routes when redistributing. (2) Set different metrics for different routes redistributed from one routing source. Set some OSPF routes as E1 and some as E2, when redistributed from one routing source. The design shows multiple redistribution points with two routing domains, with a need to prevent domain loops. (3) The design shows multiple redistribution points with more than two routing domains and a need to prevent domain loops. (2) Implementation Plan Peer Review Table Table 10-13 shows a list of questions that others might ask, or that you might think about, during a peer review of another network engineer’s implementation plan. Complete the table by answering the questions. Table 10-13 Notable Questions from This Chapter to Consider During an Implementation Plan Peer Review Question A design shows Router R1 as being connected to both an EIGRP and OSPF routing domain. What default metrics will be used by the redistribute command for each routing protocol, if not set in R1’s configuration? A plan shows redistribution between two EIGRP domains. What must be done to use the source route’s original component metrics? A plan shows redistribution between two OSPF domains. What must be done to use the source route’s original metric? Answer From the Library of Alexey Evseenko 464 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Question Answer The plan shows the redistribute eigrp 2 command to redistribute from EIGRP 2 into OSPF. What other optional parameters are required to ensure redistribution of 10.1.1.0/24 from EIGRP? R1 has two connected interfaces in the EIGRP 2 domain and knows dozens of EIGRP routes. The plan shows the redistribute eigrp 2 subnets command under an OSPF process. What else must be done to redistribute the two connected subnets inside the EIGRP domain? A design shows an OSPF and EIGRP routing domain, with multiple redistributing routers, with no obvious configuration to prevent routing domain loops. What default AD values exist, and do they prevent any problems? The same question as the previous row, except with RIP and OSPF domains. The same question as the previous row, except with RIP and EIGRP domains. A plan shows redistribution between EIGRP and OSPF on two routers. The configuration for OSPF on one router lists redistribute eigrp 1 subnets and distribute-list 1 out. Will this configuration attempt to filter routes? Is a route map option required to filter when redistributing? A partially complete plan shows three different routing domains, with multiple redistribution points between each pair of routing domains. The configuration shows large ACLs matching various subnets and setting AD per-route using the distance command. What alternative method might be easier to maintain as the network changes? The plan shows an EIGRP for IPv6 and OSPFv3 domain with mutual redistribution. The configuration shows a redistribute eigrp 1 command under the OSPF process. What kinds of routes should be redistributed? Which kinds will not? From the Library of Alexey Evseenko Chapter 10: Route Redistribution 465 Create an Implementation Plan Table To practice skills useful when creating your own implementation plan, list in Table 1014 configuration commands related to the configuration of the following features. You might want to record your answers outside the book and set a goal to complete this table (and others like it) from memory during your final reviews before taking the exam. Table 10-14 Implementation Plan Configuration Memory Drill Feature Configuring redistribution into EIGRP from OSPF (List all parameters that you can recall.) Configuration Commands/Notes Configuring redistribution into OSPF from EIGRP (List all parameters that you can recall.) Setting default metrics for all redistribute commands, redistributing into EIGRP Setting default metrics for all redistribute commands, redistributing into OSPF Filtering routes on redistribution from OSPF into EIGRP Filtering routes on redistribution from EIGRP into OSPF Configuring a route map that will set metric components to 1000, 200, 255, 1, and 1500, for routes permitted by ACL 1, and filter all other routes Setting OSPF’s administrative distance for all internal routes to 110 and all external routes to 180 Setting EIGRP’s administrative distance for routes learned from neighbor 1.1.1.1 to 190, only for subnets in the range 10.1.0.0–10.1.255.255 Configuring RIPng to redistribute routes from OSPF process 1, including subnets and connected routes Choose Commands for a Verification Plan Table To practice skills useful when creating your own verification plan, list in Table 10-15 all commands that supply the requested information. You might want to record your answers outside the book and set a goal to complete this table (and others like it) from memory during your final reviews before taking the exam. From the Library of Alexey Evseenko 466 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Table 10-15 Verification Plan Memory Drill Information Needed Command(s) Display a brief version of the EIGRP topology table, listing external routes. Display the EIGRP topology table, including notations identifying external routes. For external EIGRP routes, display the source of the route, external metric, and IP address of the router that redistributed the route. Identify external EIGRP-learned IP routes. Display a brief version of the OSPF topology table, listing Type 5 external LSAs. Display all OSPF Type 4 LSAs. Display all OSPF Type 5 LSAs. Display all OSPF Type 7 LSAs. Display the external route type for an OSPF external route. Display OSPF cost for each interface, briefly. On an internal router, display any same-area ABRs’ costs to reach any ASBRs. On an internal router, display that router’s best cost to reach an ASBR. Display the metric for all currently best external OSPF routes. Confirm that OSPF routes were redistributed from the IP routing table into that same router’s EIGRP topology table. Display the number of matches in an ACL used for redistribution filtering. Display the number of matches in an IP prefix list used for redistribution filtering. Display the configuration of a route map. Display the component metrics of a route redistributed into EIGRP. Confirm the absence or presence of a route that could have been redistributed from OSPF into EIGRP. From the Library of Alexey Evseenko Chapter 10: Route Redistribution 467 Information Needed Command(s) Confirm the absence or presence of a route that could have been redistributed from EIGRP into OSPF. Display an IP route’s administrative distance. Display the administrative distance settings for EIGRP. Display the administrative distance settings for OSPF. Note Some of the entries in this table might not have been specifically mentioned in this chapter but are listed in this table for review and reference. Review All the Key Topics Review the most important topics from inside the chapter, noted with the Key Topic icon in the outer margin of the page. Table 10-16 lists a reference of these key topics and the page numbers on which each is found. Table 10-16 Key Topics for Chapter 10 Key Topic Key Topic Element Description Page Number List Requirements for redistribution in a router 408 Table 10-2 Parameters of the EIGRP redistribute Command 410 Table 10-3 Methods of Setting EIGRP Metrics When 414 Redistributing into EIGRP List Rules from what is redistributed from an IGP 416 Table 10-4 Parameters on the OSPF redistribute Command 418 List Defaults of the OSPF redistribute command 419 Table 10-5 Summary of Metric Values When Redistributing into 423 OSPF List Tiebreaker rules for choosing the best E2 routes 425 List Rules for calculating the metric of an interarea E1 432 route List A summary of functions that can be performed by a 436 route map referenced by a redistribute command Table 10-6 match Command Options for Redistribution 437 From the Library of Alexey Evseenko 468 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Key Topic Element Description Page Number Table 10-7 set Command Options for Redistribution into IGPs 438 Table 10-10 Default Administrative Distances 450 Figure 10-14 Subnet X: Internal EIGRP, External OSPF, on Router 451 RD2 List Recommendations for how to use route tags to 460 prevent the domain loop problems Figure 10-20 Using Route Tags to Prevent Domain Loop Problems 460 Complete the Tables and Lists from Memory Print a copy of Appendix D, “Memory Tables,” (found on the CD) or at least the section for this chapter, and complete the tables and lists from memory. Appendix E, “Memory Tables Answer Key,” also on the CD, includes completed tables and lists to check your work. Define Key Terms Define the following key terms from this chapter, and check your answers in the glossary. redistribution, external route, Type 4 Summary ASBR LSA, Type 5 External LSA, Type 7 AS External LSA, External Type 1, External Type 2, domain loop, administrative distance, route tag From the Library of Alexey Evseenko This page intentionally left blank From the Library of Alexey Evseenko This chapter covers the following subjects: ■ Cisco Express Forwarding: This section discusses how a router performs packet switching, primarily focusing on Cisco Express Forwarding (CEF). ■ Policy-Based Routing: This section describes the Cisco IOS Policy-Based Routing (PBR) feature, which allows a router to make packet-forwarding decisions based on criteria other than the packet’s destination address as matched with the IP routing table. ■ IP Service-Level Agreement: This section gives a general description of the IP Service-Level Agreement (IP SLA) feature, with particular attention to how it can be used to influence when a router uses a static route and when a router uses PBR. ■ VRF-Lite: This section demonstrates a basic configuration of VRF-Lite, which allows a single physical router to run multiple virtual router instances, thereby providing network segmentation. From the Library of Alexey Evseenko CHAPTER 11 Route Selection The term path control can mean a variety of things, depending on the context. The typical use of the term refers to any and every function that influences where a router forwards a packet. With that definition, path control includes practically every topic in this book. In other cases, the term path control refers to tools that influence the contents of a routing table, usually referring to routing protocols. This chapter examines three path control topics that fit only into the broader definition of the term. The first, Cisco Express Forwarding (CEF), is a feature that allows a router to very quickly and efficiently make a route lookup. This chapter contrasts CEF with a couple of its predecessors, Process Switching and Fast Switching. The second major topic in this chapter is Policy-Based Routing (PBR), sometimes called Policy Routing. PBR influences the IP data plane, changing the forwarding decision a router makes, but without first changing the IP routing table. Then, this chapter turns its attention to the IP Service-Level Agreement (IP SLA) feature. IP SLA monitors network health and reachability. A router can then choose when to use routes, and when to ignore routes, based on the status determined by IP SLA. Also, a physical router can be logically segmented into multiple virtual routers, each of which performs its own route selection. That is the focus of the final major topic in this chapter, which covers a basic VRF-Lite configuration. Specifically, Virtual Routing and Forwarding (VRF) enables you to have multiple virtual router instances running on a single physical router, and VRF-Lite is one approach to configuring VRF support on a router. “Do I Know This Already?” Quiz The “Do I Know This Already?” quiz allows you to assess whether you should read the entire chapter. If you miss no more than one of these nine self-assessment questions, you might want to move ahead to the “Exam Preparation Tasks” section. Table 11-1 lists the major headings in this chapter and the “Do I Know This Already?” quiz questions covering the material in those headings so that you can assess your knowledge of these specific areas. The answers to the “Do I Know This Already?” quiz appear in Appendix A. From the Library of Alexey Evseenko 472 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Table 11-1 “Do I Know This Already?” Foundation Topics Section-to-Question Mapping Foundation Topics Section Cisco Express Forwarding Questions 1, 2 Policy-Based Routing 3–5 IP Service-Level Agreement 6–8 VRF-Lite 9 1. Identify the architectural components of Cisco Express Forwarding (CEF). (Choose two.) a. Routing Information Base (RIB) b. Adjacency Table c. Forwarding Information Base (FIB) d. ARP Cache 2. What command can be used to globally enable CEF on a router? a. ip flow egress b. ip route-cache cef c. no ip route-cache d. ip cef 3. Policy-Based Routing (PBR) has been enabled on Router R1’s Fa 0/0 interface. Which of the following are true regarding how PBR works? (Choose two.) a. Packets entering Fa 0/0 will be compared based on the PBR route map. b. Packets exiting Fa 0/0 will be compared based on the PBR route map. c. Cisco IOS ignores the PBR forwarding directions when a packet matches a route map deny clause. d. Cisco IOS ignores the PBR forwarding directions when a packet matches a route map permit clause. From the Library of Alexey Evseenko Chapter 11: Route Selection 473 4. Examine the following configuration on Router R1. R1’s show ip route 172.16.4.1 command lists a route with outgoing interface S0/1/1. Host 172.16.3.3 uses Telnet to connect to host 172.16.4.1. What will Router R1 do with the packets generated by host 172.16.3.3 because of the Telnet session, assuming that the packets enter R1’s Fa0/0 interface? (Choose two.) interface Fastethernet 0/0 ip address 172.16.1.1 255.255.255.0 ip policy route-map Q2 ! route-map Q2 permit match ip address 101 set interface s0/0/1 ! access-list 101 permit tcp host 172.16.3.3 172.16.4.0 0.0.0.255 a. The packets will be forwarded out S0/0/1, or not at all. b. The packets will be forwarded out S0/0/1 if it is up. c. The packets will be forwarded out S0/1/1 if it is up. d. The packets will be forwarded out S0/1/1 if it is up, or if it is not up, out S0/0/1. e. The packets will be forwarded out S0/0/1 if it is up, or if it is not up, out S0/1/1. 5. The following output occurs on Router R2. Which of the following statements can be confirmed as true based on the output? R2# show ip policy Interface Route map Fa0/0 RM1 Fa0/1 RM2 S0/0/0 RM3 a. R2 will forward all packets that enter Fa0/0 per the PBR configuration. b. R2 will use route map RM2 when determining how to forward packets that exit interface Fa0/1. c. R2 will consider using PBR for all packets exiting S0/0/0 per route map RM3. d. R2 will consider using PBR for all packets entering S0/0/0 per route map RM3. 6. Which of the following are examples of traffic that can be created as part of an IP Service-Level Agreement operation? (Choose two.) a. ICMP Echo b. VoIP (RTP) c. IPX d. SNMP From the Library of Alexey Evseenko 474 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide 7. The following configuration commands exist only in an implementation plan document. An engineer does a copy/paste of these commands into Router R1’s configuration. Which of the following answers is most accurate regarding the results? ip sla 1 icmp-echo 1.1.1.1 source-ip 2.2.2.2 ip sla schedule 1 start-time now life forever a. The SLA operation will be configured but will not start until additional commands are used. b. The SLA operation is not completely configured, so it will not collect any data. c. The SLA operation is complete and working, collecting data into the RTTMON MIB. d. The SLA operation is complete and working but will not store the data in the RTTMON MIB without more configuration. 8. The following output occurs on Router R1. IP SLA operation 1 uses an ICMP echo operation type, with a default frequency of 60 seconds. The operation pings from address 1.1.1.1 to address 2.2.2.2. Which of the following answers is true regarding IP SLA and object tracking on R1? R1# show track Track 2 IP SLA 1 state State is Up 3 changes, last change 00:00:03 Delay up 45 secs, down 55 secs Latest operation return code: OK Latest RTT (millisecs) 6 Tracked by: STATIC-IP-ROUTING 0 a. The tracking return code fails immediately after the SLA operation results in an ICMP echo failure three times. b. The tracking return code fails immediately after the SLA operation results in an ICMP echo failure one time. c. After the tracking object fails, the tracking object moves back to an up state 45 seconds later in all cases. d. After moving to a down state, the tracking object moves back to an OK state 45 seconds after the SLA operation moves to an OK state. From the Library of Alexey Evseenko Chapter 11: Route Selection 475 9. Which of the following is a benefit of Cisco EVN as compared to VRF-Lite? a. Cisco EVN allows a single physical router to run multiple virtual router instances. b. Cisco EVN allows two routers to be interconnected through an 802.1Q trunk, and traffic for different VRFs is sent over the trunk, using router subinterfaces. c. Cisco EVN allows routes from one VRF to be selectively leaked to other VRFs. d. Cisco EVN allows two routers to be interconnected through a VNET trunk, and traffic for different VRFs is sent over the trunk, without the need to configure router subinterfaces. From the Library of Alexey Evseenko 476 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Foundation Topics Cisco Express Forwarding Much of the literature on router architecture divides router functions into three operational planes: ■ Management plane: The management plane is concerned with the management of the device. For example, an administrator connecting to a router through a Secure Shell (SSH) connection through one of the router’s VTY lines would be a management plane operation. ■ Control plane: The control plane is concerned with making packet-forwarding decisions. For example, routing protocol operation would be a control plane function. ■ Data plane: The data plane is concerned with the forwarding of data through a router. For example, end-user traffic traveling from a user’s PC to a web server on a different network would go across the data plane. Of these three planes, the two planes that most directly impact how quickly packets can flow through a router are the control plane and the data plane. Therefore, we will consider these two planes of operation and examine three different approaches that Cisco routers can take to forward packets arriving on an ingress interface and being sent out an appropriate egress interface, a process called packet switching. Note Many learners have a challenge with the term packet switching, because they are accustomed to switching being a Layer 2 operation, while routing is a Layer 3 operation. The key to understanding this term is to think of frame switching being a Layer 2 operation, while packet switching (the same thing as routing) is a Layer 3 operation. In general, Cisco routers support the following three primary modes of packet switching: ■ Process switching ■ Fast switching ■ Cisco Express Forwarding (CEF) The following subsections discuss each of these approaches. Operation of Process Switching When a router routes a packet (that is, performs packet switching), the router removes the packet’s Layer 2 header, examines the Layer 3 addressing, and decides how to forward From the Library of Alexey Evseenko Chapter 11: Route Selection 477 the packet. The Layer 2 header is then rewritten (which might involve changing the source and destination MAC addresses and computing a new cyclic redundancy check [CRC]), and the packet is forwarded out an appropriate interface. With process switching, as illustrated in Figure 11-1, a router’s CPU becomes directly involved with packet-switching decisions. As a result, the performance of a router configured for process switching can suffer significantly. Incoming Packets Outgoing Packets Control Plane CPU Packet Flow Packet Flow Ingress Interface Egress Interface Data Plane Figure 11-1 Data Flow with Process Switching An interface can be configured for process switching by disabling fast switching on that interface. The interface configuration mode command used to disable fast switching is no ip route-cache. Operation of Fast Switching Fast switching uses a fast cache maintained in a router’s data plane. The fast cache contains information about how traffic from different data flows should be forwarded. As seen in Figure 11-2, the first packet in a data flow is process switched by a router’s CPU. After the router determines how to forward the first frame of a data flow, the forwarding information is stored in the fast cache. Subsequent packets in that same data flow are forwarded based on information in the fast cache, as opposed to being process switched. As a result, fast switching dramatically reduces a router’s CPU utilization, as compared to process switching. From the Library of Alexey Evseenko 478 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Incoming Packets Outgoing Packets Control Plane CPU PDaatckaetFl#o1win a For warding Information PackDeatta#1Filnowa Ingress Interface Fast Cache Egress Interface Subsequent Packets in a Data Flow Subsequent Packets in a Data Flow Data Plane Figure 11-2 Data Flow with Fast Switching Fast switching can be configured in interface configuration mode with the command ip route-cache. Operation of Cisco Express Forwarding Cisco Express Forwarding (CEF) maintains two tables in the data plane. Specifically, the Forwarding Information Base (FIB) maintains Layer 3 forwarding information, whereas the adjacency table maintains Layer 2 information for next hops listed in the FIB. Using these tables, populated from a router’s IP routing table and ARP cache, CEF can efficiently make forwarding decisions. Unlike fast switching, CEF does not require the first packet of a data flow to be process switched. Rather, an entire data flow can be forwarded at the data plane, as seen in Figure 11-3. On many router platforms, CEF is enabled by default. If it is not, you can globally enable it with the ip cef command. Alternately, if CEF is enabled globally but is not enabled on a specific interface, you can enable it on that interface with the interface configuration mode command ip route-cache cef. Table 11-2 lists and describes the configuration and verification commands for CEF. From the Library of Alexey Evseenko Incoming Packets Chapter 11: Route Selection 479 Outgoing Packets IP Routing Table Control Plane CPU ARP Cache InforLamyateiro2n InforLmaayetior n3 Ingress Interface Data Flow CEF Data Structures FIB Adjacency Table Egress Data Interface Flow Data Plane Figure 11-3 Data Flow with Cisco Express Forwarding Table 11-2 CEF Configuration and Verification Commands Key Topic Command Description ip cef Globally enables CEF, in global configuration mode. ip route-cache cef Enables CEF on an interface (if CEF is globally enabled), in interface configuration mode. show ip interface interface-id Displays multiple interface statistics, including information about an interface’s packet-switching mode. show ip cef Displays the contents of a router’s FIB. show adjacency [detail] Provides information contained in the adjacency table of a router, including protocol and timer information. To illustrate the configuration and operation of CEF, the remainder of this section presents a series of CEF configuration and verification examples. Each of these examples is based on the topology shown in Figure 11-4. The routers in this topology have already been configured to exchange routes through Enhanced Interior Gateway Routing Protocol (EIGRP). From the Library of Alexey Evseenko 480 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide Lo0 1.1.1.1/32 Lo0 2.2.2.2/32 SW1 Fa0/0 R1 172.16.1.1/24 S1/0 10.1.1.1/30 S1/0 10.1.1.2/30 R2 Fa0/0 192.168.1.1/24 SW2 Figure 11-4 Sample Topology Configured with CEF Router R1 in Figure 11-4 has CEF enabled globally; however, CEF is not enabled on interface Fa 0/0. Example 11-1 shows how to enable CEF on an interface if CEF is already enabled globally. Example 11-1 Enable CEF on Router R1’s Fa 0/0 Interface Key Topic R1# show ip int fa 0/0 FastEthernet0/0 is up, line protocol is up Internet address is 172.16.1.1/24 Broadcast address is 255.255.255.255 Address determined by non-volatile memory MTU is 1500 bytes Helper address is not set Directed broadcast forwarding is disabled Multicast reserved groups joined: 224.0.0.10 Outgoing access list is not set Inbound access list is not set Proxy ARP is enabled Local Proxy ARP is disabled Security level is default Split horizon is enabled ICMP redirects are always sent ICMP unreachables are always sent ICMP mask replies are never sent IP fast switching is enabled IP Flow switching is disabled IP CEF switching is disabled ... OUTPUT OMITTED ... R1# conf term R1(config)# int fa 0/0 R1(config-if)# ip route-cache cef R1(config-if)# end R1# show ip int fa 0/0 FastEthernet0/0 is up, line protocol is up Internet address is 172.16.1.1/24 Broadcast address is 255.255.255.255 From the Library of Alexey Evseenko Chapter 11: Route Selection 481 Address determined by non-volatile memory MTU is 1500 bytes Helper address is not set Directed broadcast forwarding is disabled Multicast reserved groups joined: 224.0.0.10 Outgoing access list is not set Inbound access list is not set Proxy ARP is enabled Local Proxy ARP is disabled Security level is default Split horizon is enabled ICMP redirects are always sent ICMP unreachables are always sent ICMP mask replies are never sent IP fast switching is enabled IP Flow switching is disabled IP CEF switching is enabled ... OUTPUT OMITTED ... Router R2 in Figure 11-4 has CEF disabled globally. Example 11-2 shows how to globally enable CEF. Example 11-2 Enable CEF on Router R2 R2# show ip int fa 0/0 FastEthernet0/0 is up, line protocol is up Internet address is 192.168.1.1/24 Broadcast address is 255.255.255.255 Address determined by non-volatile memory MTU is 1500 bytes Helper address is not set Directed broadcast forwarding is disabled Multicast reserved groups joined: 224.0.0.10 Outgoing access list is not set Inbound access list is not set Proxy ARP is enabled Local Proxy ARP is disabled Security level is default Split horizon is enabled ICMP redirects are always sent ICMP unreachables are always sent ICMP mask replies are never sent IP fast switching is disabled IP Flow switching is disabled IP CEF switching is disabled ... OUTPUT OMITTED ... From the Library of Alexey Evseenko 482 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide R2# conf term R2(config)# ip cef R2(config)# end R2# show ip int fa 0/0 FastEthernet0/0 is up, line protocol is up Internet address is 192.168.1.1/24 Broadcast address is 255.255.255.255 Address determined by non-volatile memory MTU is 1500 bytes Helper address is not set Directed broadcast forwarding is disabled Multicast reserved groups joined: 224.0.0.10 Outgoing access list is not set Inbound access list is not set Proxy ARP is enabled Local Proxy ARP is disabled Security level is default Split horizon is enabled ICMP redirects are always sent ICMP unreachables are always sent ICMP mask replies are never sent IP fast switching is enabled IP Flow switching is disabled IP CEF switching is enabled ... OUTPUT OMITTED ... Example 11-3 shows the output of the show ip cef and show adjacency detail commands issued on Router R1. Example 11-3 Output from the show ip cef and show adjacency detail Commands R1# show ip cef Prefix 0.0.0.0/0 0.0.0.0/8 0.0.0.0/32 1.1.1.1/32 2.2.2.2/32 10.1.1.0/30 10.1.1.0/32 10.1.1.1/32 10.1.1.3/32 127.0.0.0/8 172.16.1.0/24 172.16.1.0/32 172.16.1.1/32 Next Hop no route drop receive receive 10.1.1.2 attached receive receive receive drop attached receive receive Interface Loopback0 Serial1/0 Serial1/0 Serial1/0 Serial1/0 Serial1/0 FastEthernet0/0 FastEthernet0/0 FastEthernet0/0 From the Library of Alexey Evseenko Chapter 11: Route Selection 483 172.16.1.255/32 192.168.1.0/24 224.0.0.0/4 224.0.0.0/24 240.0.0.0/4 255.255.255.255/32 receive 10.1.1.2 drop receive drop receive FastEthernet0/0 Serial1/0 R1# show adjacency detail Protocol Interface IP Serial1/0 Address point2point(11) 0 packets, 0 bytes epoch 0 sourced in sev-epoch 1 Encap length 4 0F000800 P2P-ADJ Output from the show ip cef command, as seen in Example 11-3, contains the contents of the FIB for Router R1. Note that if the next hop of a network prefix is set to attached, the entry represents a network to which the router is directly attached. However, if the next hop of a network prefix is set to receive, the entry represents an IP address on one of the router’s interfaces. For example, the network prefix 10.1.1.0/30, with a next hop of attached, is a network (as indicated by the 30-bit subnet mask) directly attached to Router R1’s Serial 1/0 interface. However, the network prefix of 10.1.1.1/32 with a next hop of receive is a specific IP address (as indicated by the 32-bit subnet mask). Note that the all-0s host addresses for directly attached networks (for example, 10.1.1.0/30) and the all-1s host addresses for directly attached networks (for example, 172.16.1.255/32) also show up as receive entries. Output from the show adjacency detail command displays information about how to reach a specific adjacency shown in the FIB. For example, Example 11-3 indicates that network 192.168.1.0 /24 is reachable by going out of interface Serial 1/0. The adjacency table also shows interface Serial 1/0 uses a point-to-point connection. Therefore, the adjacent router is on the other side of the point-to-point link. If an interface in the adjacency table is an Ethernet interface, source and destination MAC address information is contained in the entry for the interface. Policy-Based Routing When a packet arrives at the incoming interface of a router, the router’s data plane processing logic takes several steps to process the packet. The incoming packet actually arrives encapsulated inside a data link layer frame, so the router must check the incoming frame’s Frame Check Sequence (FCS) and discard the frame if errors occurred in transmission. If the FCS check passes, the router discards the incoming frame’s data-link header and trailer, leaving the Layer 3 packet. Finally, the router does the equivalent of From the Library of Alexey Evseenko 484 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide comparing the destination IP address of the packet with the IP routing table, matching the longest-prefix route that matches the destination IP address. Policy-Based Routing (PBR) overrides a router’s natural destination-based forwarding logic. PBR intercepts the packet after deencapsulation on the incoming interface, before the router performs the CEF table lookup. PBR then chooses how to forward the packet using criteria other than the usual matching of the packet’s destination address with the CEF table. PBR chooses how to forward the packet by using matching logic defined through a route map, which in turn typically refers to an IP access control list (ACL). That same route map also defines the forwarding instructions—the next-hop IP address or outgoing interface—for packets matched by the route map. Figure 11-5 shows the general concept, with PBR on interface Fa0/0 overriding the usual routing logic, forwarding packets out three different outgoing interfaces. Key Topic PBR on F0/0 Match X S0/0 A set next-hop A IP IP Packet Match Y set interface Routing Table S0/1 B S0/1 F0/0 Match Z set next-hop C S0/2 C Figure 11-5 PBR Concepts To perform the actions shown in Figure 11-5, the engineer configures two general steps: Step 1. Create a route map with the logic to match packets, and choose the route, as shown on the left side of the figure. Step 2. Enable the route map for use with PBR, on an interface, for packets entering the interface. The rest of this section focuses on the configuration and verification of PBR. Matching the Packet and Setting the Route To match packets with a route map enabled for PBR, you use the familiar route-map match command. However, you have two match command options to use: ■ match ip address ■ match length min max From the Library of Alexey Evseenko Chapter 11: Route Selection 485 The match ip address command can reference standard and extended ACLs. Any item matchable by an ACL can be matched in the route map. The match length command allows you to specify a range of lengths, in bytes. When a route map clause (with a permit action) matches a packet, the set command defines the action to take regarding how to forward the packet. The four set command options define either the outgoing interface or the next-hop IP address, just like routes in the IP routing table. Table 11-3 lists the options, with some explanations. Table 11-3 Choosing Routes Using the PBR set Command Key Topic Command Comments set ip next-hop ip-address [...ip-address] Next-hop addresses must be in a connected subnet; PBR forwards to the first address in the list for which the associated interface is up. set ip default next-hop ip-address [...ip-address] Same logic as previous command, except PBR first attempts to route based on the routing table. set interface interface-type interface- PBR forwards packets using the first interface number [...interface-type interface-number] in the list that is up. set default interface interface-type interface- number [...interface-type interface-number] Same logic as previous command, except PBR first attempts to route based on the routing table. Note that two of the commands allow the definition of a next-hop router, and two allow the definition of an outgoing interface. The other difference in the commands relates to whether the command includes the default keyword. The section “How the default Keyword Impacts PBR Logic Ordering,” later in this chapter, describes the meaning of the default keyword. After the route map has been configured with all the clauses to match packets and to set an outgoing interface or next-hop address, the only remaining step requires the ip policy route-map name command to enable PBR for packets entering an interface. PBR Configuration Example To tie the concepts together, Figure 11-6 shows a sample internetwork to use in a PBR example. In this case, EIGRP on R1 chooses the upper route to reach the subnets on the right, because of the higher bandwidth on the upper link (T1) as compared with the lower link (64 kbps). From the Library of Alexey Evseenko 486 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide 10.1.1.0/24 10.1.1.1 PC1 10.1.1.2 PC2 Fa0/0 S0/0/0 R1 S0/0/1 10.1.234.0/24 10.1.12.2 R2 T1 10.1.3.0/24 64kbps Fa0/0 R3 S1 10.1.14.4 R4 Figure 11-6 Network Used in PBR Example For this example, the PBR configuration matches packets sent from PC2 on the left to server S1 in subnet 10.1.3.0/24 on the right. PBR on R1 routes these packets out S0/0/1 to R4. These packets will be routed over the lower path—out R1’s S0/0/1 to R4—instead of through the current through R2, as listed in R1’s IP routing table. The PBR configuration on Router R1 is shown in Example 11-4. Example 11-4 R1 PBR Configuration interface Fastethernet 0/0 ip address 10.1.1.9 255.255.255.0 ip policy route-map PC2-over-low-route ! route-map PC2-over-low-route permit match ip address 101 set ip next-hop 10.1.14.4 ! access-list 101 permit ip host 10.1.1.2 10.1.3.0 0.0.0.255 The configuration enables PBR with Fa0/0’s ip policy route-map PC2-over-low-route command. The referenced route map matches packets that match ACL 101; ACL 101 matches packets from PC2 only, going to subnet 10.1.3.0/24. The route-map clause uses a permit action, which tells Cisco IOS to indeed apply PBR logic to these matched packets. (Had the route-map command listed a deny action, Cisco IOS would simply route the packet as normal—it would not filter the packet.) Finally, for packets matched with a permit action, the router forwards the packets based on the set ip next-hop 10.1.14.4 command, which tells R1 to forward the packet to R4 next. Note that for each packet entering Fa0/0, PBR either matches a packet with a route map permit clause or matches a packet with a route map deny clause. All route maps have an implicit deny clause at the end that matches all packets not already matched by the route map. PBR processes packets that match a permit clause using the defined set command. For packets matched by a deny clause, PBR lets the packet go through to the normal IP routing process. From the Library of Alexey Evseenko Chapter 11: Route Selection 487 To verify the results of the policy routing, Example 11-5 shows two traceroute commands: one from PC1 and one from PC2. Each shows the different paths. (Note that the output actually comes from a couple of routers configured to act as hosts PC1 and PC2 for this example.) Example 11-5 Confirming PBR Results Using traceroute ! First, from PC1 (actually, a router acting as PC1): PC1# trace 10.1.3.99 Type escape sequence to abort. Tracing the route to 10.1.3.99 1 10.1.1.9 4 msec 0 msec 4 msec 2 10.1.12.2 0 msec 4 msec 4 msec 3 10.1.234.3 0 msec 4 msec 4 msec 4 10.1.3.99 0 msec * 0 msec ! Next, from PC2 PC2# trace 10.1.3.99 Type escape sequence to abort. Tracing the route to 10.1.3.99 1 10.1.1.9 4 msec 0 msec 4 msec 2 10.1.14.4 8 msec 4 msec 8 msec 3 10.1.234.3 8 msec 8 msec 4 msec 4 10.1.3.99 4 msec * 4 msec The output differs only in the second router in the end-to-end path—R2’s 10.1.12.2 address as seen for PC1’s packet and 10.1.14.4 as seen for PC2’s packet. The verification commands on the router doing the PBR function list relatively sparse information. The show ip policy command just shows the interfaces on which PBR is enabled and the route map used. The show route-map command shows overall statistics for the number of packets matching the route map for PBR purposes. The only way to verify the types of packets that are policy routed is to use the debug ip policy command, which can produce excessive overhead on production routers, given its multiple lines of output per packet, or to use traceroute. Example 11-6 lists the output of the show and debug commands on Router R1, with the debug output being for a single policy-routed packet. Example 11-6 Verifying PBR on Router R1 R1# show ip policy Interface Route map Fa0/0 PC2-over-low-route R1# show route-map From the Library of Alexey Evseenko 488 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide route-map PC2-over-low-route, permit, sequence 10 Match clauses: ip address (access-lists): 101 Set clauses: ip next-hop 10.1.14.4 Policy routing matches: 12 packets, 720 bytes R1# debug ip policy *Sep 14 16:57:51.675: IP: s=10.1.1.2 (FastEthernet0/0), d=10.1.3.99, len 28, policy match *Sep 14 16:57:51.675: IP: route map PC2-over-low-route, item 10, permit *Sep 14 16:57:51.675: IP: s=10.1.1.2 (FastEthernet0/0), d=10.1.3.99 (Serial0/0/1), len 28, policy routed *Sep 14 16:57:51.675: IP: FastEthernet0/0 to Serial0/0/1 10.1.14.4 How the default Keyword Impacts PBR Logic Ordering The example in the previous section showed a set command that did not use the default keyword. However, the inclusion or omission of this keyword significantly impacts how PBR works. This parameter in effect tells Cisco IOS whether to apply PBR logic before trying to use normal destination-based routing, or whether to first try to use the normal destination-based routing, relying on PBR’s logic only if the destination-based routing logic fails to match a nondefault route. First, consider the case in which the set command omits the default parameter. When Cisco IOS matches the associated PBR route map permit clause, Cisco IOS applies the PBR logic first. If the set command identifies an outgoing interface that is up, or a nexthop router that is reachable, Cisco IOS uses the PBR-defined route. However, if the PBR route (as defined in the set command) is not working—because the outgoing interface is down or the next hop is unreachable using a connected route—Cisco IOS next tries to route the packet using the normal destination-based IP routing process. Next, consider the case in which the set command includes the default parameter. When Cisco IOS matches the associated PBR route map permit clause, Cisco IOS applies the normal destination-based routing logic first, with one small exception: It ignores any default routes. Therefore, the router first tries to route the packet as normal, but if no nondefault route matches the packet’s destination address, the router forwards the packet as directed in the set command. For example, for the configuration shown in Example 11-4, by changing the set command to set ip default next-hop 10.1.14.4, R1 would have first looked for (and found) a working route through R2, and forwarded packets sent by PC2 over the link to R2. Summarizing: Key Topic ■ Omitting the default parameter gives you logic like this: “Try PBR first, and if PBR’s route does not work, try to route as usual.” ■ Including the default parameter gives you logic like this: “Try to route as usual while ignoring any default routes, but if normal routing fails, use PBR.” From the Library of Alexey Evseenko Chapter 11: Route Selection 489 Additional PBR Functions Primarily, PBR routes packets received on an interface, but using logic other than matching the destination IP address and the CEF table. This section briefly examines three additional PBR functions. Applying PBR to Locally Created Packets In some cases, it might be useful to use PBR to process packets generated by the router itself. However, PBR normally processes packets that enter the interface(s) on which the ip policy route-map command has been configured, and packets generated by the router itself do not actually enter the router through some interface. To make Cisco IOS process locally created packets using PBR logic, configure the ip local policy route-map name global command, referring to the PBR route map at the end of the command. The section “Configuring and Verifying IP SLA,” later in this chapter, shows an example use of this command. IP SLA causes a router to create packets, so applying PBR to such packets can influence the path taken by the packets. Setting IP Precedence Quality of service (QoS) refers to the entire process of how a network infrastructure can choose to apply different levels of service to different packets. For example, a router might need to keep delay and jitter (delay variation) low for VoIP and Video over IP packets, because these interactive voice and video calls only work well when the delay and jitter are held very low. As a result, the router might let VoIP packets bypass a long queue of data packets waiting to exit an interface, giving the voice packet better (lower) delay and jitter. Most QoS designs mark each packet with a different value inside the IP header, for the purpose of identifying groups of packets—a service class—that should get a particular QoS treatment. For example, all VoIP packets could be marked with a particular value so that the router can then find those marked bits, know that the packets are VoIP packets because of that marking, and apply QoS accordingly. Although the most commonly used QoS marking tool today is Class-Based Marking, in the past, PBR was one of the few tools that could be used for this important QoS function of marking packets. PBR still supports marking. However, most modern QoS designs ignore PBR’s marking capabilities. Before discussing PBR’s marking features, a little background about the historical view of the IP header’s type of service (ToS) byte is needed. The IP header originally defined a ToS byte whose individual bits have been defined in a couple of ways over the years. One such definition used the three leftmost bits in the ToS byte as a 3-bit IP Precedence (IPP) field, which could be used for generic QoS marking, with higher values generally implying a better QoS treatment. Back in the 1990s, the ToS byte was redefined as the Differentiated Services (DS) byte, with the six leftmost bits defined as the Differentiated Service Code Point (DSCP) marking. Most QoS implementations today revolve around setting the DSCP value. From the Library of Alexey Evseenko 490 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide PBR supports setting the older QoS marking fields—the IP Precedence (IPP) and the entire ToS byte—using the commands set ip precedence value and set ip tos value, respectively, in a route map. To configure packet marking, configure PBR as normal, but add a set command that defines the field to be marked and the value. PBR with IP SLA Besides matching a packet’s length, or matching a packet with an ACL, PBR can also react to some dynamic measurements of the health of an IP network. To do so, PBR relies on the IP Service-Level Agreement (IP SLA) tool. In short, if the IP SLA tool measures the network’s current performance, and the performance does not meet the defined threshold, PBR chooses to not use a particular route. The last major section of this chapter discusses IP SLA, with the section “Configuring and Verifying IP SLA” demonstrating how PBR works with IP SLA. IP Service-Level Agreement The Cisco IOS IP Service-Level Agreement (IP SLA) feature measures the ongoing behavior of the network. The measurement can be as simple as using the equivalent of a ping to determine whether an IP address responds, or as sophisticated as measuring the jitter (delay variation) of VoIP packets that flow over a particular path. To use IP SLA, an engineer configures IP SLA operations on various routers, and the routers will then send packets, receive responses, and gather data about whether a response was received, and the specific characteristics of the results, such as delay and jitter measurements. IP SLA primarily acts as a tool to test and gather data about a network. Network management tools can then collect that data and report whether the network reached SLAs for the network. Many network management tools support the ability to configure IP SLA from the management tools’ graphical interfaces. When configured, the routers gather the results of the operations, storing the statistics in the CISCO-RTTMON-MIB. Management applications can later gather the statistics from this management information base (MIB) on various routers and report on whether the business SLAs were met based on the gathered statistics. Why bother with a pure network management feature in this book focused on IP routing? Well, you can configure static routes and PBR to use IP SLA operations, such that if an operation shows a failure of a particular measurement or a reduced performance of the measurement below a configured threshold, the router stops using either the static route or PBR logic. This combination of features provides a means to control when the static and PBR paths are used and when they are ignored. This section begins with a discussion of IP SLA as an end to itself. Following that, the topic of SLA object tracking is added, along with how to configure static routes and PBR to track IP SLA operations, so that Cisco IOS knows when to use, and when to ignore, these routes. From the Library of Alexey Evseenko Chapter 11: Route Selection 491 Understanding IP SLA Concepts IP SLA uses the concept of an operation. Each operation defines a type of packet that the router will generate, the destination and source address, and other characteristics of the packet. The configuration includes settings about the time of day when the router should be sending the packets in a particular operation, the types of statistics that should be gathered, and how often the router should send the packets. Also, you can configure a router with multiple operations of different types. For example, a single IP SLA operation could define the following: ■ Use Internet Control Message Protocol (ICMP) echo packets. ■ Measure the end-to-end round-trip response time (ICMP echo). ■ Send the packets every 5 minutes, all day long. Note For those of you who have been around Cisco IOS for a while, the function of IP SLA might sound familiar. Cisco IP SLA has origins in earlier Cisco IOS features, including the Response Time Reporter (RTR) feature. The RTR feature is configured with the rtr command and uses the term probe to refer to what IP SLA refers to as an operation. All the SLA operations rely on the router sending packets and some other device sending packets back. Figure 11-7 shows the general idea and provides a good backdrop to discuss some related issues. SLA Operation Key Topic 1 RTP R1 2 RTP SLA Responder R2 3 R3 SLA Operation ICMP echo request ICMP echo reply Normal Server (no special services) 4 S1 Figure 11-7 Sending and Receiving Packets with IP SLA An IP SLA operation can cause the router to send packets to any IP address, whether on a router or a host. When sending to a host, as seen in the bottom part of the figure, the From the Library of Alexey Evseenko 492 CCNP Routing and Switching ROUTE 300-101 Official Cert Guide host does not need any special software or configuration—instead, the host just acts as normal. That means that if an SLA operation sends packets to a host, the router can only use operation types that send packets that the host understands. For example, the router could use ICMP echo requests (as seen in Steps 3 and 4), TCP connection requests, or even HTTP GET requests to a web server, because the server should try to respond to these requests. The operation can also send packets to another router, which gives IP SLA a wider range of possible operation types. If the operation sends packets to which the remote router would normally respond, like ICMP echo requests, the other router needs no special configuration. However, IP SLA supports the concept of the IP SLA responder, as noted in Figure 11-7 for R2. By configuring R2 as an IP SLA responder, it responds to packets that a router would not normally respond to, giving the network engineer a way to monitor network behavior without having to place devices around the network just to test the network. For example, the operation could send Real-time Transport Protocol (RTP) packets— packets that have the same characteristics as VoIP packets—as shown in Figure 11-7 as Step 1. Then the IP SLA responder function on R2 can reply as if a voice call exists between the two routers, as shown in Step 2 of that figure. A wide range of IP SLA operations exist. The following list summarizes the majority of the available operation types, just for perspective: ■ ICMP (echo, jitter) ■ RTP (VoIP) ■ TCP connection (establishes TCP connections) ■ UDP (echo, jitter) ■ DNS ■ DHCP ■ HTTP ■ FTP Configuring and Verifying IP SLA This book describes IP SLA configuration in enough depth to get a sense for how it can be used to influence static routes and PBR. To that end, this section examines the use of an ICMP echo operation, which requires configuration only on one router, with no IP SLA responder. The remote host, router, or other device replies to the ICMP echo requests just like any other ICMP echo requests. Key Topic The general steps to configure an ICMP-based IP SLA operation are as follows: Step 1. Create the IP SLA operation and assign it an integer operation number, using the ip sla sla-ops-number global configuration command. From the Library of Alexey Evseenko Chapter 11: Route Selection 493 Step 2. Define the operation type and the parameters for that operation type. For ICMP echo, you define the destination IP address or host name, and optionally, the source IP address or host name, using the icmp-echo {destination-ipaddress | destination-hostname} [source-ip {ip-address | hostname} | sourceinterface interface-name] SLA operation subcommand. Step 3. (Optional) De