BGP Route Filtering ist Pflicht, nicht Kür: Ohne saubere Filter riskierst du Route Leaks, unerwünschte Full Tables, falsche Traffic-Pfade oder im schlimmsten Fall Impact auf andere Netze. Auf Cisco Routern sind Prefix-Lists das präziseste Werkzeug für Präfix-Filter, Route-Maps kombinieren diese Filter mit Attribut-Policies (Local Preference, Communities, AS Path Prepend). Dieses Tutorial zeigt, wie du Prefix-Lists und Route-Maps korrekt einsetzt – inbound wie outbound.
Warum BGP-Filter in der Praxis unverzichtbar sind
BGP vertraut grundsätzlich dem Nachbarn – bis du Regeln setzt. Deshalb solltest du immer kontrollieren, welche Routen du annimmst und welche du announcest. Das gilt besonders an Internet-Edges.
- Outbound: nur eigene/erlaubte Präfixe announcen (Route Leak vermeiden)
- Inbound: nur gewünschte Routen akzeptieren (Ressourcen/Policy schützen)
- Stabilität: unerwartete Präfixmengen mit
maximum-prefixbegrenzen
Prefix-Lists: Präfixe sauber und skalierbar filtern
Prefix-Lists sind für BGP das Standardmittel, um IP-Präfixe nach Länge und Bereich zu erlauben oder zu verbieten. Sie sind schneller und klarer als große ACLs und unterstützen Präfixlängen-Steuerung über le/ge.
Grundsyntax verstehen
permit 203.0.113.0/24: genau dieses Präfixpermit 203.0.113.0/24 le 32: dieses Präfix und spezifischere Subpräfixedeny 0.0.0.0/0 le 32: alles verbieten (hartes „Cleanup“)
Beispiel: Outbound nur eigenes /24 announcen
Router# configure terminal
Router(config)# ip prefix-list OUT-ONLY-MYNET seq 10 permit 198.51.100.0/24
Router(config)# ip prefix-list OUT-ONLY-MYNET seq 999 deny 0.0.0.0/0 le 32
Router(config)# end
Prefix-List am Neighbor binden (Outbound)
Router# configure terminal
Router(config)# router bgp 65001
Router(config-router)# neighbor 203.0.113.1 remote-as 64500
Router(config-router)# neighbor 203.0.113.1 prefix-list OUT-ONLY-MYNET out
Router(config-router)# end
Inbound-Filtering: Default Route, Full Table oder „nur bestimmte Präfixe“
Je nach Design willst du inbound vielleicht nur eine Default Route oder eine begrenzte Menge Routen annehmen. Prefix-Lists machen das sehr transparent.
Beispiel: Inbound nur Default Route akzeptieren
Router# configure terminal
Router(config)# ip prefix-list IN-DEFAULT-ONLY seq 10 permit 0.0.0.0/0
Router(config)# ip prefix-list IN-DEFAULT-ONLY seq 999 deny 0.0.0.0/0 le 32
Router(config)# router bgp 65001
Router(config-router)# neighbor 203.0.113.1 prefix-list IN-DEFAULT-ONLY in
Router(config-router)# end
Beispiel: Inbound bestimmte Präfixfamilie akzeptieren (mit le/ge)
Du erlaubst z. B. nur Präfixe aus 203.0.113.0/24 und deren spezifischere Netze.
Router# configure terminal
Router(config)# ip prefix-list IN-SUBS seq 10 permit 203.0.113.0/24 le 28
Router(config)# ip prefix-list IN-SUBS seq 999 deny 0.0.0.0/0 le 32
Router(config)# end
Route-Maps: Filtern plus Attribute setzen
Route-Maps kombinieren Match-Bedingungen (z. B. Prefix-List, Community, AS Path) mit Aktionen (Set). Damit steuerst du nicht nur „rein/raus“, sondern auch Policy (Local Pref, MED, Communities, Prepend).
Beispiel: Inbound filtern und Local Preference setzen
Du akzeptierst nur dein gewünschtes Präfixset und setzt gleichzeitig local-preference, um den Provider als bevorzugten Outbound-Uplink zu markieren.
Router# configure terminal
Router(config)# ip prefix-list IN-OK seq 10 permit 0.0.0.0/0
Router(config)# ip prefix-list IN-OK seq 999 deny 0.0.0.0/0 le 32
Router(config)# route-map RM-IN-ISP1 permit 10
Router(config-route-map)# match ip address prefix-list IN-OK
Router(config-route-map)# set local-preference 200
Router(config-route-map)# end
Router(config)# router bgp 65001
Router(config-router)# neighbor 203.0.113.1 route-map RM-IN-ISP1 in
Router(config-router)# end
Beispiel: Outbound filtern und Community setzen
Du announcest nur dein eigenes Präfix und markierst es zusätzlich mit einer Community. Damit Communities ankommen, muss send-community aktiv sein.
Router# configure terminal
Router(config)# ip prefix-list OUT-OK seq 10 permit 198.51.100.0/24
Router(config)# ip prefix-list OUT-OK seq 999 deny 0.0.0.0/0 le 32
Router(config)# route-map RM-OUT permit 10
Router(config-route-map)# match ip address prefix-list OUT-OK
Router(config-route-map)# set community 65001:100 additive
Router(config-route-map)# end
Router(config)# router bgp 65001
Router(config-router)# neighbor 203.0.113.1 send-community
Router(config-router)# neighbor 203.0.113.1 route-map RM-OUT out
Router(config-router)# end
Prefix-List direkt vs. Route-Map: wann was?
Wenn du nur Präfixe erlauben/verbieten willst, nutze direkt Prefix-Lists am Neighbor. Wenn du zusätzlich Attribute setzen oder komplexer matchen willst, nutze Route-Maps (mit Prefix-Lists als Match-Kriterium).
- Nur Filter:
neighbor … prefix-list … in/out - Filter + Policy:
neighbor … route-map … in/out - Match immer so eng wie möglich (weniger Seiteneffekte)
Best Practices: Outbound zuerst absichern, dann inbound optimieren
Im Betrieb ist Outbound-Filtering meist die kritischste Pflicht, weil du sonst fremde Präfixe leaken kannst. Inbound ist danach wichtig für Ressourcen und Policy-Steuerung.
- Outbound: „deny all“ als letzte Zeile (explizit)
- Inbound: nur das annehmen, was du wirklich brauchst
maximum-prefixals Schutz vor unerwarteten Routenmengen- Änderungen immer mit advertised/received routes prüfen
Max-Prefix Schutz setzen (Beispiel)
Router# configure terminal
Router(config)# router bgp 65001
Router(config-router)# neighbor 203.0.113.1 maximum-prefix 200000 90 restart 5
Router(config-router)# end
Verifikation: Wirkt der Filter wirklich?
Nach dem Setzen musst du verifizieren, ob die Filter das gewünschte Verhalten erzeugen: Welche Routen werden empfangen/annonciert, und welche landen als Best Path in der BGP-Tabelle.
Prefix-Lists und Route-Maps prüfen
Router# show ip prefix-list
Router# show route-map
Advertised und Received Routes prüfen
Router# show ip bgp neighbors 203.0.113.1 advertised-routes
Router# show ip bgp neighbors 203.0.113.1 received-routes
Router# show ip bgp
Routing-Tabelle gegenprüfen
Router# show ip route bgp
Router# show ip route 0.0.0.0
Typische Fehler und schnelle Fixes
Wenn „nichts mehr geht“, ist oft der Filter zu strikt oder die Reihenfolge/Match-Logik stimmt nicht. Prüfe Sequenzen, explizite Deny-Zeilen und ob du wirklich send-community aktiviert hast.
- Prefix-List hat kein passendes
permit→ alles wird gedroppt - Fehlendes „deny all“ ist riskant (ungewollte Präfixe gehen raus)
- Route-Map matcht nicht → set-Aktionen greifen nie
send-communityfehlt → Communities kommen nicht an- Max-Prefix zu niedrig → Session wird geschützt, aber fällt ab
Quick-Checks
Router# show ip bgp summary
Router# show ip bgp neighbors 203.0.113.1 advertised-routes
Router# show ip bgp neighbors 203.0.113.1 received-routes
Router# show ip prefix-list
Router# show route-map
Router# show logging | include BGP
Konfiguration speichern
Router# copy running-config startup-config
Konfiguriere Cisco Router & Switches und liefere ein Packet-Tracer-Lab (CCNA)
Hallo! Ich bin ein CCNA-Network Engineer und unterstütze Sie bei Cisco Router- und Switch-Konfigurationen – inklusive eines vollständigen Cisco Packet-Tracer-Labs (.pkt). Ideal für Lern-/Übungsszenarien, Validierung oder eine saubere Demo-Topologie.
Was ich (je nach Paket) umsetze
-
Switching: VLANs, Trunking (802.1Q), Port-Zuweisung, STP-Basics (PortFast/BPDU Guard wo sinnvoll)
-
Routing: Default/Static Routing oder OSPF, Inter-VLAN Routing (Router-on-a-Stick)
-
Services: DHCP (Pools/Scopes), NAT/PAT für Internet-Simulation
-
Optional Security: Basic ACLs und SSH-Hardening
-
Test & Verifikation: Ping/Traceroute + wichtige Show-Commands (mit erwarteten Ergebnissen)
Sie erhalten
-
✅ Packet Tracer .pkt Datei
-
✅ Saubere Konfigurations-Notizen pro Gerät
-
✅ Verifikations-Checkliste + erwartete Outputs
-
✅ Kurze Dokumentation (wie die Topologie funktioniert)
Bitte schreiben Sie mir vor der Bestellung, damit wir Scope, Packet-Tracer-Version, Geräteanzahl und Deadline klären.
Konfiguriere Cisco Router & Switches | Cisco Packet-Tracer-Labs. Finden Sie mich auf Fiverr.












