BIRD Internet Routing Daemon



Similar documents
BIRD Internet Routing Daemon. CZ.NIC z. s. p. o. Ondrej Filip / ondrej.filip@nic.cz NANOG-48, Austin, TX

Exterior Gateway Protocols (BGP)

GregSowell.com. Mikrotik Routing

APNIC elearning: BGP Attributes

basic BGP in Huawei CLI

OSPF Version 2 (RFC 2328) Describes Autonomous Systems (AS) topology. Propagated by flooding: Link State Advertisements (LSAs).

Networking. Palo Alto Networks. PAN-OS Administrator s Guide Version 6.0. Copyright Palo Alto Networks

Bell Aliant. Business Internet Border Gateway Protocol Policy and Features Guidelines

Routing Protocol - BGP

Based on Computer Networking, 4 th Edition by Kurose and Ross

How To Understand Bg

Inter-domain Routing. Outline. Border Gateway Protocol

Routing Protocols (RIP, OSPF, BGP)

Inter-domain Routing Basics. Border Gateway Protocol. Inter-domain Routing Basics. Inter-domain Routing Basics. Exterior routing protocols created to:

Border Gateway Protocol (BGP)

Example: Advertised Distance (AD) Example: Feasible Distance (FD) Example: Successor and Feasible Successor Example: Successor and Feasible Successor

Understanding Virtual Router and Virtual Systems

Examination. IP routning på Internet och andra sammansatta nät, DD2491 IP routing in the Internet and other complex networks, DD2491

IMPLEMENTING CISCO IP ROUTING V2.0 (ROUTE)

Routing Protocols OSPF CHAPTER. The following topics describe supported routing protocols. Topics include OSPF, page 9-1 IS-IS Protocol, page 9-3

Using the Border Gateway Protocol for Interdomain Routing

BGP Routing. Course Description. Students Will Learn. Target Audience. Hands-On

Outline. EE 122: Interdomain Routing Protocol (BGP) BGP Routing. Internet is more complicated... Ion Stoica TAs: Junda Liu, DK Moon, David Zats

Introduction Inter-AS L3VPN

MPLS VPN Route Target Rewrite

Internet inter-as routing: BGP

IP Routing Configuring RIP, OSPF, BGP, and PBR

Route Discovery Protocols

Dynamic Routing Protocols II OSPF. Distance Vector vs. Link State Routing

Juniper Exam JN0-343 Juniper Networks Certified Internet Specialist (JNCIS-ENT) Version: 10.1 [ Total Questions: 498 ]

Lecture 18: Border Gateway Protocol"

Application Note. Failover through BGP route health injection

Understanding Route Redistribution & Filtering

Fireware How To Dynamic Routing

Routing in Small Networks. Internet Routing Overview. Agenda. Routing in Large Networks

Route Optimization. rek Petr Grygarek, VSB-TU Ostrava, Routed and Switched Networks 1

BGP Best Path Selection Algorithm

BGP Basics. BGP Uses TCP 179 ibgp - BGP Peers in the same AS ebgp - BGP Peers in different AS's Private BGP ASN. BGP Router Processes

Advanced Routing. FortiOS Handbook v3 for FortiOS 4.0 MR3

Open Source Software for Routing

Active measurements: networks. Prof. Anja Feldmann, Ph.D. Dr. Nikolaos Chatzis Georgios Smaragdakis, Ph.D.

Link-State Routing Protocols

Border Gateway Protocol (BGP-4)

Textbook Required: Cisco Networking Academy Program CCNP: Building Scalable Internetworks v5.0 Lab Manual.

CS551 External v.s. Internal BGP

Cisco CCNP Optimizing Converged Cisco Networks (ONT)

Border Gateway Protocol BGP4 (2)

BGP as an IGP for Carrier/Enterprise Networks

Load balancing and traffic control in BGP

Transitioning to BGP. ISP Workshops. Last updated 24 April 2013

Layer 3 Routing User s Manual

Internet inter-as routing: BGP

Analyzing Capabilities of Commercial and Open-Source Routers to Implement Atomic BGP

Routing Protocols. Interconnected ASes. Hierarchical Routing. Hierarchical Routing

Internet Firewall CSIS Packet Filtering. Internet Firewall. Examples. Spring 2011 CSIS net15 1. Routers can implement packet filtering

Introduction to TCP/IP

Advanced BGP Policy. Advanced Topics

HP Networking BGP and MPLS technology training

Introduction to MPLS-based VPNs

How To Set Up Bgg On A Network With A Network On A Pb Or Pb On A Pc Or Ipa On A Bg On Pc Or Pv On A Ipa (Netb) On A Router On A 2

IPv6 over MPLS VPN. Contents. Prerequisites. Document ID: Requirements

Monitoring Routing. Monitoring OSPF LSAs. Type 1 CHAPTER

GregSowell.com. Intro to Networking Mikrotik/Cisco

Course Contents CCNP (CISco certified network professional)

BGP1 Multihoming and Traffic Engineering

--BGP 4 White Paper Ver BGP-4 in Vanguard Routers

ZXR /5200 Series

BGP: Frequently Asked Questions

Using OSPF in an MPLS VPN Environment

CS 457 Lecture 19 Global Internet - BGP. Fall 2011

Outline. Internet Routing. Alleviating the Problem. DV Algorithm. Routing Information Protocol (RIP) Link State Routing. Routing algorithms

CCNA 2 v5.0 Routing Protocols Final Exam Answers

Chapter 49 Border Gateway Protocol version 4 (BGP-4)

Configuring and Testing Border Gateway Protocol (BGP) on Basis of Cisco Hardware and Linux Gentoo with Quagga Package (Zebra)

Chapter 10 Link-State Routing Protocols

Border Gateway Protocol Best Practices

> Border Gateway Protocol (BGP-4) Technical Configuration Guide. Ethernet Routing Switch. Engineering

FortiOS Handbook - Advanced Routing VERSION 5.2.2

Routing with OSPF. Introduction

Internet Routing Protocols Lecture 04 BGP Continued

APNIC elearning: BGP Basics. Contact: erou03_v1.0

A Case Study Design of Border Gateway Routing Protocol Using Simulation Technologies

Advanced Networking Routing: RIP, OSPF, Hierarchical routing, BGP

DD2491 p Load balancing BGP. Johan Nicklasson KTHNOC/NADA

Module 7. Routing and Congestion Control. Version 2 CSE IIT, Kharagpur

Edge-1#show ip route Routing entry for /24. Known via "bgp 65001", distance 200, metric 0. Tag 65300, type internal

BGP overview BGP operations BGP messages BGP decision algorithm BGP states

ITRI CCL. IP Routing Primer. Paul C. Huang, Ph.D. ITRI / CCL / N300. CCL/N300; Paul Huang 1999/6/2 1

Fundamentals Multiprotocol Label Switching MPLS III

IPv6 Hands-on Lab. Faraz Shamim, Technical Leader Harold Ritter, Technical Leader. Toronto, Canada May 30, 2013

BGP Attributes and Path Selection

BGP Terminology, Concepts, and Operation. Chapter , Cisco Systems, Inc. All rights reserved. Cisco Public

Deploying OSPF for ISPs. OSPF Design. Agenda. Service Providers. SP Architecture. SP Architecture. OSPF Design in SP Networks

Load balancing and traffic control in BGP

BGP4 Case Studies/Tutorial

Transcription:

BIRD Internet Routing Daemon Ondřej Zajíček CZ.NIC z.s.p.o. IT 13

Úvod I Úvod do dynamického routování I Představení démona BIRD I OSPF a BIRD I BGP a BIRD

Dynamické routování I Sestavení routovacích tabulek vs. forwarding I Hledání cest v počítačových sítích I Automatické adaptace (např. při výpadku linky) I Interní routing - počítačová sít jedné organizace I Externí routing - routování v rámci Internetu I Routovací protokoly (OSPF, BGP... )

OSPF - Open Shortest Path First I Protokol pro interní routing I OSPFv2 pro IPv4 (RFC 2328) I OSPFv3 pro IPv6 (RFC 5340) I Router monitoruje dostupnost sousedů I Tuto informaci distribuuje ostatním (LSA - Link State Advertisement) I Každý router získá kompletní mapu sítě I Na jejím základě spočítá nejkratší cesty

BGP - Border Gateway Protocol I Standardní protokol pro externí routing I Používá se BGPv4 (RFC 4271) I Router obdrží od sousedů propagované routy I Zpřijatýchroutsizvoĺıjednuprokaždýprefix I Tu použije a dál propaguje sousedům I Předávané routy obsahují mnoho dodatečných informací

BIRD Internet Routing Daemon I Implementace protokolů BGP, OSPF a RIP I Podpora IPv4 i IPv6 I Podpora IPv6 router advertisements I Podpora Linuxu a BSD I Jazyk C, licence GPL I Aktivní vývoj

Výhody BIRDu I Programovatelné filtry I Přehledné konfigurační soubory I Podpora více instancí protokolů I Podpora více routovacích tabulek I Automatická rekonfigurace za běhu I Poměrně obsáhlá dokumentace I Nízké pamět ové a CPU nároky I Přehledný a stručný kód

Nevýhody BIRDu I Menší množství featur a rozšíření I UI a konfigurace odlišné od Cisca I Striktní oddělení IPv4 a IPv6 I Nepodporuje multicast

Typické aplikace BIRDu I OSPF v podnikové síti či u menších ISP I BGP pro externí routing I Route server v peeringových centrech BGP Route server: I Pouze distribuce routovacích informací I Nevhodné pro dedikované hw routery I Požadavky na mnoho tabulek a pružné filtrování

Nasazení BIRDu Euro-IX 2011: BIRD nejpoužívanější r.s., 41 % instalací

Novinky I Dynamické IPv6 router advertisements I Selectivní propagace sekundárních rout I Undo a timeout pro rekonfigurace I Odhlehčený BIRD klient pro embedded prostředí I Looking glass tool

Koncepty BIRDu I Routy I Protokoly I Tabulky I Filtry Table Static Kernel OSPF

Protokoly I Reprezentují routovací protokoly (BGP, OSPF) I Nebo jiné zdroje rout (static, kernel, direct) I Generují a přijímají routy I Jsou napojené na routovací tabulky I Protokoly mohou mít více instancí

Tabulky I Importují a shromažd ují routy z protokolů I Pro každý cíl voĺı preferovanou routu I Ty následně exportují do napojených protokolů I BIRD podporuje libovolné množství tabulek I Dvě tabulky je možné propojit rourou (pipe) I Vyběr preferované routy podle metrik

Více routovacích tabulek I Obvykle jen jedna routovací tabulka I Linuxové jádro podporuje víc tabulek I Hodí se např. pro policy routing I Také pro route servery Kernel 1 Kernel 2 Table A Pipe Table B BGP 1U BGP 1D BGP 2U BGP 2D

Filtry I Filtry stojí mezi protokolem a tabulkou I Mohou routy zahodit nebo pozměnit I Skriptovací jazyk pro filtrování rout I Filtr může přistupovat ke všem parametrům routy I Také pro filtrování výpisu tabulek

Filtry - příklad filter bgp_in prefix set martians; { martians = [ 10.0.0.0/8+, 172.16.0.0/12+ 192.168.0.0/16+, 169.254.0.0/16+, 224.0.0.0/4+, 240.0.0.0/4+, 0.0.0.0/32-, 0.0.0.0/0{25,32} ]; if net ~ martians then reject; if bgp_path.first!= 1234 then reject; if bgp_path.len > 64 then reject; if net ~ [120.10.0.0/16+, 120.20.0.0/16+] then bgp_local_pref = 500; else bgp_local_pref = 100; bgp_med = 0; accept;

Základy ovládání I Separace IPv4 a IPv6 I Konfigurační soubor a rekonfigurace I Řídící socket, birdc shell a příkazy I Logování I show route [all] I show protocols [all] I show interfaces I show ospf...

Routy - atributy I net, net.ip a net.len I gw a dest (RTD *) I proto a source (RTS *) I from I preference

Příkazy - příklady I show route 192.168.1.0/24 I show route for 192.168.1.10 I show route protocol ospf1 I show route where net.ip 192.168.0.0/16 I show route where bgp path.len > 4 I show route where proto bpg* I show route filter myfilter I show protocols I enable disable restart ospf1 I configure [timeout undo confirm] I down

OSPF - Struktura I OSPF areas I OSPF interfaces I OSPF neighbors I Hello packets I LSA database I Topology graph

OSPF - Interface Významné OSPF interface optiony: I cost I type I stub I hello, retransmit, wait, wait I authentication

OSPF - Routy I Routy a jejich metriky I Interní, inter-area a externí routy I Atributy ospf metric1, ospf metric2 I Route tag (ospf tag)

OSPF konfigurace protocol ospf { import all; export filter { ospf_metric1 = 1000; if source = RTS_STATIC then accept; else reject; }; } area 0 { interface "eth0" { cost 5; hello 5; wait 10; dead 60; }; interface "eth1", "ath*" { cost 100; type pointopoint; }; };

IPv6 router advertisements I Možnost snadno rozesílat RA z BIRDu I Podpora RDNSS a DNSSL I Podpora dynamických RA protocol radv { interface "eth*"; rdnss 2001:0DB8:1234::10; dnssl "domain.cz"; trigger 2000::/3; }

BGP - Struktura I BGP topologie I BGP session I BGP neighbor I AS numbers I ebgp a ibgp I AS path

Externí BGP From 6 down to 4: P1: 6 3 1 P3: 6 3 P5: 6 7 5 P6: 6 P7: 6 7 rest of Internet From 3 to 4: P1: 3 1 P3: 3 6 From 6 to 7: 7 3 4 From 4 down: 5 From 3 down: P2: 3 4 2 P3: 3 P4: 3 4 P5: 3 6 7 5 P6: 3 6 P7: 3 6 7 rest of Internet 1 From 1 up: 2 P1: 1 From 4 to 3: P2: 4 2 P4: 4 P1: 6 3 1 P2: 6 4 2 P3: 6 3 P4: 6 4 P6: 6 P1: 4 3 1 P3: 4 3 P4: 4 P5: 4 5 P6: 4 6 P7: 4 7 rest of Internet From 2 up: P2: 2 From 7 to 6: P2: 7 4 2 P4: 7 4 P5: 7 5 P7: 7 4 gets 1: P1: 3 1 P1: 6 3 1 P1: 7 6 3 1

Interní BGP 6 G3 R4 R3 G2 4 R5 AS3 P4 via G2: as path: 4 next hop: G2 P4 via R3: as path: 4 next hop: G2 1 G1 P4 via R1: as path: 3 4 next hop: R1 R1 P4 via R2: as path: 4 next hop: G2 R2 BGP session Backbone

Interní BGP a route reflector 6 G3 R4 R3 G2 4 R5 AS3 P4 via G2: as path: 4 next hop: G2 RR P4 via R3: as path: 4 next hop: G2 1 G1 P4 via R1: as path: 3 4 next hop: R1 R1 P4 via R2: as path: 4 next hop: G2 R2 BGP session Backbone

BGP - Protokol Významné BGP optiony: I local [IP] as AS I neighbor IP as AS I multihop, gateway I next hop self

BGP - Routy Významné BGP atributy: I bgp path I bgp next hop I bgp local pref I bgp med I bgp community

BGP - Selekce Priority selekce rout: I bgp local pref I bgp path I bgp origin I bgp med (jen ze stejneho AS) I preferuj externí. I IGP metrika I Router ID I Router IP

BIRD jako ebgp router protocol static { import all; } route 10.10.0.0/16 reject; route 10.20.0.0/16 reject; protocol bgp { import all; export where source = RTS_STATIC; } local as 65100; neighbor 192.168.1.2 as 65200;

BIRD jako ibgp router protocol bgp { import all; export where source = RTS_BGP; } local 192.168.2.1 as 65100; neighbor 192.168.2.2 as 65100; multihop;

Dotazy? http://labs.nic.cz/ http://bird.network.cz/