PBR (Policy Based Routing)

Aus Portunity Wiki

(Weitergeleitet von PBR)
Wechseln zu: Navigation, Suche

Als PBR (Policy Based Routing) bezeichnet man eine Technik um IP-Pakete in Netzwerken anhand bestimmter Kriterien zu Routen.

Funktionsweise

Normalerweise werden beispielsweise alle Pakete nach den Gleichen Regeln abgearbeitet diese Regeln finden sich in der Routingtabelle. Wenn Sie jetzt aber mehrere Verbindungen zum Internet haben (wie z.b. Einen VPN-Tunnel und Ihren "normalen" Internetanschluss) kann nur einer davon als Standartroute ins Internet genutzt werden. In einigen fällen kann es sein das sie einen Server von außen erreichbar machen wollen (Route Über den Tunnel mit fester IP) aber nicht über diesen Tunnel ins Internet gehen möchten (also Route über Normalen Internet Anschluss). Hier kann PBR helfen. So können sie konfigurieren das alle Pakete die von der Tunnel-IP versendet werden auch durch den Tunnel geroutet werden.

Kurzes Beispiel unter Linux

Auf einem Linux basierten System lässt sich dies beispielsweise so erreichen:

  • Eine neue Routingtabelle anlegen, die als Defaultroute da Tunnelinterface tun0 benutzt
ip route add default table 10 dev tun0


  • Routingregel hinzufügen, dass der Traffic von der Tunnel-IP ausgehend durch Routingtabelle 10 (und damit durch tun0) fließen soll.
ip rule add from 188.246.5.8/32 to all prio 9999 table 10


So sollten sie ihre Tunneladresse auch ohne die "redirect-gateway" Option in OpenVPN von außen erreichen können.

Um sich die PBR-Routingtabellen anzuzeigen, müssen Sie explizit immer die entsprechende Table anzeigen lassen. Dies geschieht mit

ip route list table 10

und

ip rule list

Beim Herunterfahren des tun0-Interfaces werden die Regeln übrigens nicht gelöscht sondern bleiben (inaktiv) erhalten. Es kann jedoch zu interessanten Problemen kommen, wenn PBR-Regeln zu inaktiven Geräten vorhanden sind, deswegen empfiehlt es sich die Regeln über die ifup- und ifdown-Scripte zu setzen resp. wieder zu löschen.

Persönliche Werkzeuge