Inhalt

Einleitung

Verwendete Komponenten

Profilerstellungsprozess

OUI-Profilerstellung für MAC-Adresse

Lokal verwaltete MAC-Adressen behandeln Probleme

DHCP-Profilerstellung

HTTP-Profilerstellung

RADIUS-Profilerstellung

DHCP RADIUS-Profilerstellung

HTTP RADIUS-Profilerstellung

Konfigurieren der Profilerstellung auf dem 9800 WLC

Lokale Profilkonfiguration

Konfiguration der RADIUS-Profilerstellung

Profilerstellung - Anwendungsfälle

Anwenden lokaler Richtlinien auf Grundlage der lokalen Profilklassifizierung

Radius-Profilerstellung für erweiterte Policy Sets in der Cisco ISE

Profilierung in FlexConnect-Bereitstellungen

Zentrale Authentifizierung, lokales Switching

Lokale Authentifizierung, lokales Switching

Fehlerbehebung

Radioaktive Spuren

Paketerfassung

Einleitung

In diesem Dokument wird die Funktionsweise der Klassifizierung und Profilerstellung für Geräte auf Cisco Catalyst Wireless LAN-Controllern der Serie 9800 beschrieben.

Verwendete Komponenten

- 9800 CL WLC mit 17.2.1 Image

- Access Point 1815i

- Windows 10 Pro Wireless-Client

- Cisco ISE 2.7

Die Informationen in diesem Dokument beziehen sich auf Geräte in einer speziell eingerichteten Testumgebung. Alle Geräte, die in diesem Dokument benutzt wurden, begannen mit einer gelöschten (Nichterfüllungs) Konfiguration. Wenn Ihr Netzwerk in Betrieb ist, stellen Sie sicher, dass Sie die möglichen Auswirkungen aller Befehle verstehen.

Profilerstellungsprozess

In diesem Artikel wird ausführlich erläutert, wie die Geräteklassifizierung und -profilierung auf Cisco Catalyst 9800 Wireless LAN-Controllern funktioniert. Darüber hinaus werden mögliche Anwendungsfälle, Konfigurationsbeispiele und die erforderlichen Schritte zur Fehlerbehebung beschrieben.

Die Erstellung von Geräteprofilen bietet eine Möglichkeit, zusätzliche Informationen zu einem Wireless-Client zu erhalten, der der Wireless-Infrastruktur beigetreten ist.

Sobald die Erstellung der Geräteprofile erfolgt ist, können mit dieser Funktion verschiedene lokale Richtlinien angewendet oder bestimmte RADIUS-Serverregeln abgeglichen werden.

Die Cisco WLCs der Serie 9800 können drei (3) Arten der Erstellung von Geräteprofilen durchführen:

1. MAC-Adresse OUI

2. DHCP

3. HTTP

OUI-Profilerstellung für MAC-Adresse

Die MAC-Adresse ist eine eindeutige Kennung für jede drahtlose (und kabelgebundene) Netzwerkschnittstelle. Es handelt sich um eine 48-Bit-Nummer, die in der Regel im Hexadezimalformat MM:MM:MM:SS:SS notiert ist.

Die ersten 24 Bit (oder 3 Achtbitzeichen) werden als OUI (Organizational Unique Identifier) bezeichnet und bezeichnen eindeutig einen Anbieter oder Hersteller.

Sie werden vom IEEE erworben und zugewiesen. Ein Anbieter oder Hersteller kann mehrere OUIs erwerben.

Beispiel:

00:0D:4B - owned by Roku, LLC

90:78:B2 - owned by Xiaomi Communications Co Ltd

Sobald ein Wireless-Client mit dem Access Point verbunden ist, führt der WLC eine OUI-Suche durch, um den Hersteller zu ermitteln.

In FlexConnect-Bereitstellungen für lokales Switching leitet der Access Point relevante Client-Informationen wie DHCP-Pakete und die MAC-Adresse des Clients weiter an den WLC weiter.

Eine Profilierung, die nur auf OUI basiert, ist äußerst begrenzt, und es ist möglich, ein Gerät als eine bestimmte Marke zu klassifizieren, es kann jedoch nicht zwischen einem Laptop und einem Smartphone unterscheiden.

Lokal verwaltete MAC-Adressen behandeln Probleme

Aus Datenschutzgründen begannen viele Hersteller, Mac-Randomisierungsfunktionen in ihre Geräte zu integrieren.

Lokal verwaltete MAC-Adressen werden nach dem Zufallsprinzip generiert und weisen ein zweitgeringstwertiges Bit des ersten Oktetts der Adresse auf 1 auf.

Dieses Bit fungiert als Flag, das ankündigt, dass die MAC-Adresse tatsächlich eine zufällig generierte ist.

Es gibt vier mögliche Formate für lokal verwaltete MAC-Adressen (x kann ein beliebiger Hexadezimalwert sein):

x2-xx-xx-xx-xx-xx

x6-xx-xx-xx-xx-xx

xA-xx-xx-xx-xx-xx

xE-xx-xx-xx-xx-xx

Android 10-Geräte verwenden standardmäßig eine zufällig generierte, lokal verwaltete MAC-Adresse, wenn sie sich mit einem neuen SSID-Netzwerk verbinden.

Diese Funktion verhindert vollständig die OUI-basierte Geräteklassifizierung, da der Controller erkennt, dass die Adresse randomisiert wurde und keine Suche durchführt.

DHCP-Profilerstellung

Die DHCP-Profilerstellung wird vom WLC durch Untersuchung der DHCP-Pakete durchgeführt, die der Wireless-Client sendet.

Wenn das Gerät mithilfe der DHCP-Profilerstellung klassifiziert wurde, enthält die Ausgabe des Befehls show wireless client mac-address [MAC_ADDR] Folgendes:

Device Type      : Microsoft-Workstation

Device Name      : MSFT 5.0

Protocol Map     : 0x000009  (OUI, DHCP)

Protocol         : DHCP

WLC überprüft mehrere DHCP-Optionsfelder in den von Wireless-Clients versendeten Paketen:

1. Option 12 - Hostname

Diese Option stellt den Hostnamen des Clients dar und ist in den Paketen "DHCP Discover" und "DHCP Request" zu finden:

2. Option 60 - Anbieter-Klassenkennung

Diese Option finden Sie auch in den Paketen "DHCP Discover and Request" (DHCP erkennen und anfordern).

Mit dieser Option können sich die Clients gegenüber dem DHCP-Server identifizieren, und die Server können dann so konfiguriert werden, dass sie auf die Clients nur mit einer bestimmten Anbieterklassenkennung antworten.

Diese Option wird am häufigsten verwendet, um die Access Points im Netzwerk zu identifizieren und nur mit der Option 43 auf diese zu reagieren.

Beispiele für Anbieterklassen-IDs

- "MSFT 5.0" für alle Windows 2000-Clients (und höher)

- "MSFT 98" für alle Windows 98 und Me Clients

- "Microsoft" für alle Windows 98, Me und 2000 Clients

Apple MacBook-Geräte senden standardmäßig keine Option 60 aus.

Beispiel für die Paketerfassung vom Windows 10-Client:

3. Option 55 - Parameteranforderungsliste

Die DHCP Parameter Request List-Option enthält Konfigurationsparameter (Optionscodes), die der DHCP-Client vom DHCP-Server anfordert. Es handelt sich um eine Zeichenfolge in kommagetrennter Notation (z. B. 1,15,43).

Dies ist keine perfekte Lösung, da die generierten Daten herstellerabhängig sind und von verschiedenen Gerätetypen dupliziert werden können.

Beispielsweise fordern Windows 10-Geräte standardmäßig immer eine bestimmte Parameterliste an. Apple iPhones und iPads verwenden verschiedene Parameter, auf denen es möglich ist, sie zu klassifizieren.

Beispielaufzeichnung vom Windows 10-Client:

4. Option 77 - Benutzerklasse

Benutzerklasse ist eine Option, die in der Regel nicht standardmäßig verwendet wird und die eine manuelle Konfiguration des Clients erfordert. Diese Option kann z. B. mithilfe des folgenden Befehls auf einem Windows-Computer konfiguriert werden:

ipconfig /setclassid “ADAPTER_NAME” “USER_CLASS_STRING”

Sie finden den Adapternamen im Netzwerk- und Freigabecenter in der Systemsteuerung:

Konfigurieren Sie die DHCP-Option 66 für den Windows 10-Client in CMD (erfordert Administratorrechte):

Aufgrund der Windows-Implementierung von Option 66 ist Wireshark nicht in der Lage, diese Option zu dekodieren, und ein Teil des Pakets, das nach Option 66 eingeht, wird als fehlerhaft angezeigt:

HTTP-Profilerstellung

Die HTTP-Profilerstellung ist die fortschrittlichste Methode zur Profilerstellung, die 9800 WLC unterstützt, und sie bietet die detaillierteste Geräteklassifizierung.

Damit ein Client ein HTTP-Profil erstellen kann, muss er den Status "Run" haben und eine HTTP GET-Anforderung ausführen.

WLC fängt die Anfrage ab und schaut in das Feld "User-Agent" im HTTP-Header des Pakets.

Dieses Feld enthält zusätzliche Informationen zum Wireless-Client, mit denen dieser klassifiziert werden kann.

Standardmäßig haben fast alle Hersteller eine Funktion implementiert, bei der ein Wireless-Client versucht, eine Prüfung der Internetverbindung durchzuführen.

Diese Prüfung wird auch für die automatische Erkennung von Gastportalen verwendet. Wenn ein Gerät eine HTTP-Antwort mit dem Statuscode 200 (OK) empfängt, bedeutet dies, dass das WLAN nicht durch Webauth gesichert ist.

Ist dies der Fall, führt der WLC das Abfangen durch, das für die restliche Authentifizierung erforderlich ist. Diese HTTP GET-Initialkonfiguration ist nicht die einzige, die der WLC für die Erstellung eines Geräteprofils verwenden kann.

Jede nachfolgende HTTP-Anfrage wird vom WLC geprüft und ergibt möglicherweise eine noch detailliertere Klassifizierung.

Windows 10-Geräte verwenden die Domäne msftconnectest.com, um diesen Test durchzuführen. Apple-Geräte verwenden captive.apple.com, während Android-Geräte in der Regel connectivitycheck.gstatic.com verwenden.

Paketerfassungen des Windows 10-Clients, der diese Prüfung durchführt, finden Sie weiter unten. Das Feld "User Agent" wird mit Microsoft NCSI ausgefüllt, was dazu führt, dass der Client auf dem WLC als Microsoft-Workstation profiliert wird:

Beispielausgabe von show wireless client mac-address [MAC_ADDR] detailliert für einen Client, der über HTTP profiliert wird:

Device Type      : Microsoft-Workstation

Device Name      : MSFT 5.0

Protocol Map     : 0x000029  (OUI, DHCP, HTTP)

Device OS        : Windows NT 10.0; Win64; x64; rv:76.0

Protocol         : HTTP

RADIUS-Profilerstellung

Bei den Methoden zur Klassifizierung des Geräts gibt es keinen Unterschied zwischen der lokalen und der RADIUS-Profilerstellung.

Wenn die Radius-Profilerstellung aktiviert ist, leitet der WLC die vom Gerät erfassten Informationen über einen bestimmten Satz anbieterspezifischer RADIUS-Attribute an den RADIUS-Server weiter.

DHCP RADIUS-Profilerstellung

Die durch die DHCP-Profilerstellung erhaltenen Informationen werden als anbieterspezifische RADIUS AVPair-Nachricht an den RADIUS-Server innerhalb der Accounting-Anforderung gesendet. cisco-av-pair: dhcp-option=<DHCP-Option>

Beispiel eines Accounting-Anforderungspakets, das AVPairs für die DHCP-Option 12, 60 und 55 anzeigt und vom WLC an den RADIUS-Server gesendet wurde (Wert für Option 55 erscheint möglicherweise aufgrund der Wireshark-Dekodierung als beschädigt):

HTTP RADIUS-Profilerstellung

Die durch die HTTP-Profilerstellung (User-Agent-Feld aus dem Header der HTTP GET-Anforderung) erhaltenen Informationen werden als anbieterspezifische RADIUS AVPair an den RADIUS-Server innerhalb der Accounting-Anforderung gesendet. cisco-av-pair: http-tlv=User-Agent=<Benutzer-Agent>

Die erste Verbindungsprüfung für das HTTP GET-Paket enthält nur "Microsoft NCSI", da im Feld "User-Agent" nur wenige Informationen enthalten sind. Beispiel für ein Accounting-Paket, das diesen einfachen Wert an den RADIUS-Server weiterleitet:

Sobald der Benutzer mit dem Surfen im Internet beginnt und einige zusätzliche HTTP GET-Anforderungen erstellt, können weitere Informationen dazu abgerufen werden.

WLC sendet ein zusätzliches Accounting-Paket an die ISE, wenn neue User-Agent-Werte für diesen Client erkannt werden.

In diesem Beispiel können Sie sehen, dass der Client Windows 10 64 Bit und Firefox 76 verwendet:

Konfigurieren der Profilerstellung auf dem 9800 WLC

Lokale Profilkonfiguration

Damit die lokale Profilerstellung funktioniert, aktivieren Sie einfach die Geräteklassifizierung unter Konfiguration > Wireless > Wireless Global. Diese Option aktiviert die MAC OUI-, HTTP- und DHCP-Profilerstellung gleichzeitig:

Darüber hinaus können Sie unter "Policy configuration" das HTTP TLV-Caching und das DHCP TLV-Caching aktivieren. WLC führt Profilerstellung durch, selbst wenn diese nicht erforderlich ist.

Wenn diese Optionen aktiviert sind, speichert der WLC zuvor erfasste Informationen zu diesem Client im Cache-Modus ab, sodass keine zusätzlichen Pakete geprüft werden müssen, die von diesem Gerät generiert wurden.

Konfiguration der RADIUS-Profilerstellung

Damit die RADIUS-Profilerstellung funktioniert, muss neben der globalen Geräteklassifizierung (wie in der Konfiguration für lokale Profilerstellung erwähnt) Folgendes ausgeführt werden:

1. Konfigurieren Sie die AAA-Abrechnungsmethode mit dem Typ "identity", der auf den RADIUS-Server verweist:

2. Die Buchungsmethode muss unter Konfiguration > Tags & Profile > Policy > [Policy_Name] > Advanced hinzugefügt werden:

3. Schließlich muss das Kontrollkästchen RADIUS Profiling unter Configuration > Tags & Profiles > Policy aktiviert werden. Dieses Kontrollkästchen aktiviert sowohl HTTP als auch DHCP RADIUS Profiling (die alten AireOS WLCs hatten zwei separate Kontrollkästchen):

Profilerstellung - Anwendungsfälle

Anwenden lokaler Richtlinien auf Grundlage der lokalen Profilklassifizierung

Diese Beispielkonfiguration zeigt die Konfiguration der lokalen Richtlinie mit einem QoS-Profil, das den Zugriff auf YouTube und Facebook blockiert und nur auf Geräte angewendet wird, die als Windows-Workstation eingestuft sind.

Bei geringfügigen Änderungen kann diese Konfiguration geändert werden, um z. B. eine bestimmte DSCP-Markierung nur für Wireless-Telefone festzulegen.

Erstellen Sie ein QoS-Profil, indem Sie zu Configuration > Services > QoS navigieren. Klicken Sie auf Hinzufügen, um eine neue Richtlinie zu erstellen:

Geben Sie den Richtliniennamen an, und fügen Sie eine neue Klassenzuordnung hinzu. Wählen Sie aus den verfügbaren Protokollen die Protokolle aus, die blockiert, DSCP markiert oder auf eine bestimmte Bandbreite beschränkt werden sollen.

In diesem Beispiel werden YouTube und Facebook blockiert. Achten Sie darauf, dieses QoS-Profil nicht auf eines der Richtlinienprofile unten im QoS-Fenster anzuwenden:

Navigieren Sie zu Configuration > Security > Local Policy, und erstellen Sie eine neue Servicemaske:

Geben Sie das Eingangs- und Ausgangs-QoS-Profil an, das im vorherigen Schritt erstellt wurde. In diesem Schritt kann auch eine Zugriffsliste angewendet werden. Wenn keine VLAN-Änderung erforderlich ist, lassen Sie das VLAN-Feld leer:

Navigieren Sie zur Registerkarte Policy Map, und klicken Sie auf Hinzufügen:

Legen Sie den Namen der Richtlinienzuordnung fest, und fügen Sie neue Kriterien hinzu. Geben Sie die im vorherigen Schritt erstellte Dienstvorlage an, und wählen Sie den Gerätetyp aus, auf den diese Vorlage angewendet wird.

In diesem Fall wird Microsoft-Workstation verwendet. Wenn mehrere Richtlinien definiert sind, wird die erste Übereinstimmung verwendet.

Ein weiterer gängiger Anwendungsfall wäre die Angabe von OUI-basierten Abgleichskriterien. Wenn eine Bereitstellung über eine große Anzahl von Scannern oder Druckern desselben Modells verfügt, verfügen diese in der Regel über dieselbe MAC-OUI.

Hiermit kann eine bestimmte QoS DSCP-Markierung oder eine ACL angewendet werden:

Damit der WLC den Datenverkehr auf YouTube und Facebook erkennen kann, muss die Anwendungstransparenz aktiviert sein.

Navigieren Sie zu Konfiguration > Services > Anwendungstransparenz eErmöglichen Sie Transparenz für das Richtlinienprofil Ihres WLAN:

Überprüfen Sie, ob unter dem Richtlinienprofil die HTTP TLV-Caching-, DHCP TLV-Caching- und globale Geräteklassifizierung aktiviert sind und ob die lokale Teilnehmerrichtlinie auf die lokale Richtlinienzuordnung verweist, die in einem der vorherigen Schritte erstellt wurde:

Nachdem der Client eine Verbindung hergestellt hat, kann überprüft werden, ob die lokale Richtlinie angewendet wurde, und getestet werden, ob YouTube und Facebook tatsächlich blockiert sind.

Die Ausgabe der MAC-Adresse [MAC_ADDR] des Show Wireless-Clients enthält:

Input Policy Name  : block

Input Policy State : Installed

Input Policy Source : Native Profile Policy

Output Policy Name  : block

Output Policy State : Installed

Output Policy Source : Native Profile Policy

Local Policies:

Service Template : BlockTemplate (priority 150)

Input QOS        : block

Output QOS       : block

Service Template : wlan_svc_11override_local (priority 254)

VLAN             : VLAN0039

Absolute-Timer   : 1800

Device Type      : Microsoft-Workstation

Device Name      : MSFT 5.0

Protocol Map     : 0x000029  (OUI, DHCP, HTTP)

Protocol         : HTTP

Radius-Profilerstellung für erweiterte Policy Sets in der Cisco ISE

Bei aktivierter RADIUS-Profilerstellung leitet der WLC Profilerstellungsinformationen an die ISE weiter. Basierend auf diesen Informationen können erweiterte Authentifizierungs- und Autorisierungsregeln erstellt werden.

Dieser Artikel behandelt nicht die ISE-Konfiguration. Weitere Informationen finden Sie im Cisco ISE Profiling Design Guide.

Für diesen Workflow muss in der Regel CoA verwendet werden. Stellen Sie deshalb sicher, dass er auf dem 9800 WLC aktiviert ist.

Profilierung in FlexConnect-Bereitstellungen

Zentrale Authentifizierung, lokales Switching

In dieser Konfiguration funktionieren sowohl die lokale als auch die RADIUS-Profilerstellung weiterhin genau wie in den vorherigen Kapiteln beschrieben. Wenn der AP in den Standalone-Modus wechselt (die Verbindung des AP mit dem WLC wird unterbrochen), funktioniert die Erstellung der Geräteprofile nicht mehr, und es können keine neuen Clients eine Verbindung herstellen.

Lokale Authentifizierung, lokales Switching

Wenn sich der AP im verbundenen Modus befindet (der AP ist mit dem WLC verbunden), wird die Profilerstellung fortgesetzt (der AP sendet eine Kopie der Client-DHCP-Pakete an den WLC, um den Profilerstellungsprozess durchzuführen).

Obwohl die Profilerstellung funktioniert, können Profilerstellungsinformationen nicht für lokale Richtlinienkonfigurationen oder RADIUS-Profilerstellungsregeln verwendet werden, da die Authentifizierung lokal auf dem Access Point ausgeführt wird.

Fehlerbehebung

Radioaktive Spuren

Die einfachste Methode zur Fehlerbehebung bei der Client-Profilerstellung auf dem WLC sind radioaktive Spuren. Navigieren Sie zu Troubleshooting > Radioactive Trace, geben Sie die MAC-Adresse des Client-Wireless-Adapters ein, und klicken Sie auf Start:

Verbinden Sie den Client mit dem Netzwerk, und warten Sie, bis der Ausführungsstatus erreicht ist. Stoppen Sie die Ablaufverfolgungen, und klicken Sie auf Generate (Generieren). Stellen Sie sicher, dass interne Protokolle aktiviert sind (diese Option existiert nur in Versionen 17.1.1 und höher):

Relevante Schnipsel aus der radioaktiven Spur finden Sie unten:

Client, der von WLC als Microsoft-Workstation profiliert wird:

2020/06/18 10:46:41.052366 {wncd_x_R0-0}{1}: [auth-mgr] [21168]: (info): [74da.38f6.76f0:capwap_90000004] Device type for the session is detected as Microsoft-Workstation and old device-type not classified earlier &Device name for the session is detected as MSFT 5.0 and old device-name not classified earlier & Old protocol map 0 and new is 41

2020/06/18 10:46:41.052367 {wncd_x_R0-0}{1}: [auth-mgr] [21168]: (debug): [74da.38f6.76f0:capwap_90000004] updating device type Microsoft-Workstation, device name MSFT 5.0

WLC-Caching der Geräteklassifizierung:

(debug): [74da.38f6.76f0:unknown] Updating cache for mac [74da.38f6.76f0] device_type: Microsoft-Workstation, device_name: MSFT 5.0 user_role: NULL protocol_map: 41

WLC-Suche nach der Geräteklassifizierung im Cache:

(info): [74da.38f6.76f0:capwap_90000004] Device type found in cache Microsoft-Workstation

WLC wendet lokale Richtlinie basierend auf Klassifizierung an:

(info): device-type filter: Microsoft-Workstation required, Microsoft-Workstation set - match for 74da.38f6.76f0 / 0x9700001A

(info): device-type Filter evaluation succeeded

(debug):  match device-type eq "Microsoft-Workstation" :success

WLC sendet Abrechnungspakete, die das DHCP- und das HTTP-Profiling-Attribut enthalten:

[caaa-acct] [21168]: (debug): [CAAA:ACCT:c9000021] Accounting session created

[auth-mgr] [21168]: (info): [74da.38f6.76f0:capwap_90000004] Getting active filter list

[auth-mgr] [21168]: (info): [74da.38f6.76f0:capwap_90000004] Found http

[auth-mgr] [21168]: (info): [74da.38f6.76f0:capwap_90000004] Found dhcp

[aaa-attr-inf] [21168]: (debug): Filter list http-tlv 0

[aaa-attr-inf] [21168]: (debug): Filter list dhcp-option 0

[aaa-attr-inf] [21168]: (debug): Get acct attrs dc-profile-name 0 "Microsoft-Workstation"

[aaa-attr-inf] [21168]: (debug): Get acct attrs dc-device-name 0 "MSFT 5.0"

[aaa-attr-inf] [21168]: (debug): Get acct attrs dc-device-class-tag 0 "Workstation:Microsoft-Workstation"

[aaa-attr-inf] [21168]: (debug): Get acct attrs dc-certainty-metric 0 10 (0xa)

[aaa-attr-inf] [21168]: (debug): Get acct attrs dhcp-option 0 00 0c 00 0f 44 45 53 4b 54 4f 50 2d 4b 4c 52 45 30 4d 41

[aaa-attr-inf] [21168]: (debug): Get acct attrs dhcp-option 0 00 3c 00 08 4d 53 46 54 20 35 2e 30

[aaa-attr-inf] [21168]: (debug): Get acct attrs dhcp-option 0 00 37 00 0e 01 03 06 0f 1f 21 2b 2c 2e 2f 77 79 f9 fc

### http profiling sent in a separate accounting packet

[aaa-attr-inf] [21168]: (debug): Get acct attrs http-tlv 0 00 01 00 0e 4d 69 63 72 6f 73 6f 66 74 20 4e 43 53 49

Paketerfassung

In einer zentral gesteuerten Bereitstellung kann die Paketerfassung auf dem WLC selbst durchgeführt werden. Navigieren Sie zu Troubleshooting > Packet Capture, und erstellen Sie einen neuen Erfassungspunkt auf einer der Schnittstellen, die von diesem Client verwendet werden.

Für die Erfassung auf dem VLAN ist eine SVI erforderlich. Andernfalls wird die Erfassung auf dem physischen Port selbst durchgeführt.