Praised in its first edition for its readability, breadth, and depth, Routing TCP/IP, Volume II, Second Edition will help you thoroughly understand modern exterior routing protocols and implement them with Cisco routers.

Best-selling author Jeff Doyle offers crucial knowledge for every network professional who must manage routers to support growth and change. You’ll find configuration and troubleshooting lessons that would cost thousands to learn in a classroom, plus up-to-date case studies, examples, exercises, and solutions.

Routing TCP/IP, Volume II, Second Edition covers routing and switching techniques that form the foundation of all Cisco CCIE tracks. Its expert content and CCIE structured review makes it invaluable for anyone pursuing this elite credential.

While its examples focus on Cisco IOS, the book illuminates concepts that are fundamental to virtually all modern networks and routing platforms. Therefore, it serves as an exceptionally practical reference for network designers, administrators, and engineers in any environment.

This book is part of the CCIE Professional Development series,which offers expert-level instruction on network design, deployment, and support methodologies to help networking professionals manage complex networks and prepare for the CCIE exams.

Category: Networking

Covers: BGP, Multicast, and NAT

Jeff Doyle, CCIE No. 1919, is vice president of research at Fishtech Labs. Specializing in IP routing protocols, SDN/NFV, data center fabrics, MPLS, and IPv6, Jeff has designed or assisted in the design of large-scale IP service provider and enterprise networks in 26 countries over 6 continents. He worked with early IPv6 adopters in Japan, China, and South Korea, and has advised service providers, government agencies, military contractors, equipment manufacturers, and large enterprises on best-practice IPv6 deployment. He now advises large enterprises on evolving data center infrastructures, SDN, and SD-WAN.

Jeff is the author of CCIE Professional Development: Routing TCP/IP, Volumes I and II and OSPF and IS-IS: Choosing an IGP for Large-Scale Networks; a co-author of Software Defined Networking: Anatomy of OpenFlow; and an editor and contributing author of Juniper Networks Routers: The Complete Reference. He also writes for Forbes and blogs for both Network World and Network Computing. Jeff is one of the founders of the Rocky Mountain IPv6 Task Force, is an IPv6 Forum Fellow, and serves on the executive board of the Colorado chapter of the Internet Society (ISOC).

Jeff lives in Westminster, Colorado, with his wife Sara and a Sheltie named Max, the Forrest Gump of the dog world. Jeff and Sara count themselves especially fortunate that their four grown children and a growing herd of grandchildren all live within a few miles.

Introduction xxi

Chapter 1 Inter-Domain Routing Concepts 1

Early Inter-Domain Routing: The Exterior Gateway Protocol (EGP) 1

Origins of EGP 2

Operation of EGP 3

EGP Topology Issues 3

EGP Functions 5

Neighbor Acquisition Protocol 6

Neighbor Reachability Protocol 8

Network Reachability Protocol 10

Shortcomings of EGP 15

The Advent of BGP 16

BGP Basics 17

Autonomous System Types 21

External and Internal BGP 22

Multihoming 29

Transit AS Multihoming 30

Stub AS Multihoming 31

Multihoming and Routing Policies 36

Multihoming Issues: Load Sharing and Load Balancing 36

Multihoming Issues: Traffic Control 37

Multihoming Issues: Provider-Assigned Addressing 40

Classless Inter-Domain Routing 41

A Summarization Summary 41

Classless Routing 43

Summarization: The Good, the Bad, and the Asymmetric 47

CIDR: Reducing Class B Address Space Depletion 50

CIDR: Reducing Routing Table Explosion 50

Managing and Assigning IPv4 Address Blocks 54

CIDR Issues: Multihoming and Provider-Assigned Addresses 56

CIDR Issues: Address Portability 58

CIDR Issues: Provider-Independent Addresses 59

CIDR Issues: Traffic Engineering 60

CIDR Approaches Its Limits 62

IPv6 Comes of Age 66

Routing Table Explosion, Again 66

Looking Ahead 68

Review Questions 69

Chapter 2 Introduction to BGP 71

Who Needs BGP? 71

Connecting to Untrusted Domains 71

Connecting to Multiple External Neighbors 74

Setting Routing Policy 79

BGP Hazards 82

Operation of BGP 84

BGP Message Types 85

Open Message 85

Keepalive Message 86

Update Message 86

Notification Message 87

BGP Finite State Machine 87

Idle State 88

Connect State 89

Active State 89

OpenSent State 89

OpenConfirm State 90

Established State 90

Path Attributes 90

ORIGIN Attribute 92

AS_PATH Attribute 92

NEXT_HOP Attribute 97

Weight 100

BGP Decision Process 100

BGP Message Formats 103

Open Message 104

Update Message 105

Keepalive Message 108

Notification Message 108

Configuring and Troubleshooting BGP Peering 110

Case Study: EBGP Peering 110

Case Study: EBGP Peering over IPv6 114

Case Study: IBGP Peering 118

Case Study: Connected Check and EBGP Multihop 127

Case Study: Managing and Securing BGP Connections 136

Looking Ahead 142

Review Questions 143

Configuration Exercises 144

Troubleshooting Exercises 145

Chapter 3 BGP and NLRI 155

Configuring and Troubleshooting NLRI in BGP 155

Injecting Prefixes with the network Statement 156

Using the network mask Statement 160

Injecting Prefixes with Redistribution 162

NLRI and IBGP 167

Managing Prefixes in an IBGP Topology 168

IBGP and IGP Synchronization 179

Advertising BGP NLRI into the Local AS 182

Redistributing BGP NLRI into the IGP 182

Case Study: Distributing NLRI in a Stub AS with IBGP 184

Distributing NLRI in a Stub AS with Static Routes 193

Advertising a Default Route to a Neighboring AS 196

Advertising Aggregate Routes with BGP 198

Case Study: Aggregation Using Static Routes 199

Aggregation Using the aggregate-address Statement 201

ATOMIC_AGGREGATE and AGGREGATOR Attributes 207

Using AS_SET with Aggregates 210

Looking Ahead 218

Review Questions 218

Configuration Exercises 219

Troubleshooting Exercises 223

Chapter 4 BGP and Routing Policies 237

Policy and the BGP Database 238

IOS BGP Implementation 249

InQ and OutQ 249

IOS BGP Processes 251

NHT, Event, and the Open Processes 256

Table Versions 258

Managing Policy Changes 267

Clearing BGP Sessions 268

Soft Reconfiguraton 269

Route Refresh 274

Route Filtering Techniques 279

Filtering Routes by NLRI 280

Case Study: Using Distribute Lists 280

Route Filtering with Extended ACLs 292

Case Study: Using Prefix Lists 293

Filtering Routes by AS_PATH 304

Regular Expressions 304

Literals and Metacharacters 305

Delineation: Matching the Start and End of Lines 306

Bracketing: Matching a Set of Characters 306

Negating: Matching Everything Except a Set of Characters 306

Wildcard: Matching Any Single Character 307

Alternation: Matching One of a Set of Characters 307

Optional Characters: Matching a Character That May or May Not Be There 307