[ASA] QoS dla ruch VPN (IPSec)

Problemy z zakresu security (VPN, firewall, IDS/IPS itp.)
Wiadomość
Autor
ms
wannabe
wannabe
Posty: 112
Rejestracja: 22 kwie 2009, 12:54
Kontakt:

[ASA] QoS dla ruch VPN (IPSec)

#1

#1 Post autor: ms »

Cześć,
Czy ktoś z Was spotkał się dokumentem, który dokładnie opisuje jak działa QoS dla ruchu VPN (IPsec) na ASA. Bo dokumentacja (configuration guide) wg. mnie jest tutaj miejscami dość powierzchowna, a przeprowadzone testy nie dają mi jednoznacznej odpowiedzi.

Poniżej kilka moich wątpliwości.
Topologia

Kod: Zaznacz cały

   10.1.1.1/24     200.0.0.1/24   200.0.0.2/24    10.1.2.1/24
|----------IN--ASA1--OUT-----------------OUT--ASA2--IN1---------|
                                                 |
                                                 |
                                                 |--IN2---------|
                                                  10.1.12.1/24
Skonfigurowany jest jeden VPN (jedna tunnel grupa), który przenosi ruch między sieciami:

Kod: Zaznacz cały

IN (ASA1) <--> IN1 (ASA2)
IN (ASA1) <--> IN2 (ASA2)
Dla formalności ACL na ASA1

Kod: Zaznacz cały

access-list VPN-ASA1 extended permit ip 10.1.1.0 255.255.255.0 10.1.2.0 255.255.255.0
access-list VPN-ASA1 extended permit ip 10.1.1.0 255.255.255.0 10.1.12.0 255.255.255.0
QoS (dla testów tylko policing) robię na ASA1 OUT.

Przykład 1. Policing całego (?) ruchu wysyłanego tunelem.

Kod: Zaznacz cały

class-map VPN-ASA2
 match tunnel-group 200.0.0.2
 match flow ip destination-address
policy-map PM
 class VPN-ASA2
  police output 5000000 625000
service-policy PM interface OUTSIDE
a) Wysyłam ruch z hosta w IN do hosta w IN1 -> 5Mb/s
b) Wysyłam jednocześnie ruch z hosta w IN do 2 różnych hostów w IN1 -> 5Mb/s
c) Wysyłam jednocześnie ruch z hosta w IN do hosta w IN1 i hosta w IN2 -> 5Mb/s
(ASA domyślnie tworzy osobne IPSec'ki dla ruchu per podsieć)

Wg. dokumentacji.
To enable flow-based policy actions on a tunnel group, use the match flow ip destination-address and match tunnel-group commands with the class-map, policy-map, and service-policy commands. The criteria to define flow is the destination IP address. All traffic going to a unique IP destination address is considered a flow. Policy action is applied to each flow instead of the entire class of traffic.
Wygląda więc na to, że flow to ruch wysyłany między końcami tuneli. W takim razie po co jest tutaj polecenie 'match flow ip destination-address'? (konfiguracja wymaga jego podania).

Przykład 2.

Kod: Zaznacz cały

access-list VPN extended permit esp host 200.0.0.1 host 200.0.0.2
class-map VPN-ASA2
  match access-list VPN
policy-map PM
 class VPN-ASA2
  police output 5000000 625000
Wszystkie powyższe testy dają takie same wyniki.
Czy te 2 konfiguracje będą tożsame w każdym przypadku?

Przykład 3.
Wg. dokumentacji
It is also possible to perform QoS on the inner flow information with the use of Access Control Lists (ACLs), DSCP, and so on. Due to the previously mentioned bug, ACLs are the way to be able to do input policing right now.
Zmieniam jedynie ACL w stosunku do pkt. 2 i wygląda ona teraz tak:

Kod: Zaznacz cały

access-list VPN extended permit ip 10.1.1.0 255.255.255.0 10.1.2.0 255.255.255.0
a) Wysyłam ruch z hosta w IN do hosta w IN1 -> 5Mb/s
b) Wysyłam ruch z hosta w IN do hosta w IN2 -> ruch nie jest ograniczany
Czyli działa też klasyfikacja po wewnętrznym nagłówku IP!

Czy ktoś mi jest w stanie powiedzieć na co na ASA "patrzą" ACL w class-mapie użytej w polityce podpiętej pod zewnętrzny interfejs fizyczny.

Na routerach był wybór czy chcemy klasyfikować po wewnętrznych nagłówkach (włączony QOS preclassify) czy po zewnętrznych (wyłączony QoS preclassify). A na ASA można jednocześnie matchować na obydwa sposoby? A może trafiam w jakiś bug? Albo to jest jakiś feature :), tylko jakie miałoby być jego zastosowanie?

Z góry dzięki za odpowiedź, jeśli ktoś to również analizował. Ewentualnie dajcie znać jak robicie QoS na ASA dla ruchu VPN.
Uprzedzając odpowiedzi tak wiem, że ASA nie jest najlepszym rozwiązaniem do robienia QoS.


Pozdrawiam,

ODPOWIEDZ