
Von The Cable Guy
Alle auf Deutsch verfügbaren Cable Guy-Kolumnen finden Sie hier.
| Einleitung | |
| Die TCP/IP-Architektur | |
| Paketverarbeitung | |
| Zusätzliche Informationen |
Mit Windows XP Service Pack 2 und Windows Server 2003 Service Pack 1 wurde die Windows Firewall eingeführt. Seitdem – und auch aufgrund der steigenden Nutzung von IPSec (Internet Protocol Security) – wird es für IT-Profis immer wichtiger, die Verarbeitung von IP-Paketen (Internet Protocol) durch das TCP/IP-Protokoll und die in die Verarbeitung involvierten Windows-Komponenten zu verstehen. Ein genaues Verständnis der Verarbeitungsvorgänge kann es Ihnen erleichtern, die für die Verarbeitung und Filterung von Paketen zuständigen Komponenten zu konfigurieren und nach Fehlern zu suchen.
In diesem Artikel wird Folgendes besprochen:
| • | Die grundlegende Architektur des TCP/IP-Protokolls für IP-Version 4 (IPv4) sowie die weiteren Komponenten, die an der Paketverarbeitung beteiligt sind. |
| • | Die Verarbeitungspfade für durch einen Windows-Computer gesendeten, empfangenen und weitergeleiteten Unicast-Netzwerkverkehr. |
Anmerkung: Um den Artikel übersichtlich und verständlich zu halten, werden Multicast- und Broadcast-Pakete sowie getunnelte oder fragmentierte Pakete nicht berücksichtigt.
In der folgenden Abbildung sehen Sie eine vereinfachte Ansicht des TCP/IP-Protokoll-Treibers (Tcpip.sys) und der anderen Komponenten, die unter Windows XP Service Pack 2 und Windows Server 2003 Service Pack 1 an der Verarbeitung von TCP/IP-Paketen beteiligt sind.

IP-Pakete werden von den folgenden Komponenten verarbeitet:
| • | IP-Forwarding: Legt die nächste Schnittstelle und Adresse für zu sendende und weiterzuleitende Pakete fest. |
| • | TCP/IP-Filterung: Ermöglicht das Festlegen von IP-Protokoll, TCP- oder Port UDP-Port und bestimmten Arten von Netzwerkverkehr für den eingehenden Netzwerkverkehr (Pakete, die an den Host adressiert sind). Sie können die TCP/IP-Filterung über die Registerkarte Optionen der erweiterten Eigenschaften von TCP/IP im Ordner Netzwerkverbindungen konfigurieren. |
| • | Filter-Hook-Treiber: Eine Windows-Komponente, die die Filter-Hook-API zur Filterung von eingehenden und ausgehenden IP-Paketen nutzt. Auf einem Computer unter Windows Server 2003 handelt es sich beim Filter-Hook-Treiber und Ipfltdrv.sys um eine Komponente von Routing und RAS. Wenn Routing und RAS aktiviert ist, dann können Sie für jede Schnittstelle im Snap-In Routing und RAS eigene Eingangs- und Ausgangsfilter definieren. Ipfltdrv.sys überprüft sowohl den Netzwerkverkehr, der direkt an den Host adressiert ist (Local Host), als auch den Netzwerkverkehr, der weitergeleitet wird (Transit). |
| • | Firewall-Hook-Treiber: Eine Windows-Komponente, die die Firewall-Hook-API zur Überprüfung von eingehenden und ausgehenden IP-Paketen nutzt. Auf einem Computer unter Windows XP handelt es sich beim Firewall-Hook-Treiber um Ipnat.sys – er wird sowohl von der Internetverbindungsfreigabe als auch von der Windows Firewall genutzt. Bei der Internetverbindungsfreigabe handelt es sich um eine simple NAT-Funktionalität (Network Address Translator), und die Windows Firewall ist eine hostbasierte Firewall. Ipnat.sys überprüft sowohl den Local Host-Netzwerkverkehr als auch den Transit-Netzwerkverkehr. Unter Windows Server 2003 wird Ipnat.sys von der Internetverbindungsfreigabe, der Windows Firewall und von der NAT/Firewall-Komponente von Routing und RAS gemeinsam genutzt. Wenn die NAT/Firewall-Komponente von Routing und RAS aktiviert ist, dann können Sie die Windows Firewall und die Internetverbindungsfreigabe nicht mehr aktivieren. |
| • | IPsec: Bei der IPSec-Komponente handelt es sich um Ipsec.sys - der Windows-Implementierung von IPsec. Ipsec.sys überprüft sowohl den Local Host-Netzwerkverkehr als auch den Transit-Netzwerkverkehr und kann Netzwerkverkehr zulassen, blockieren oder absichern. |
Im folgenden Abschnitt wird die Paketverarbeitung für die folgenden Arten von Netzwerkverkehr beschrieben:
| • | Ausgehender Netzwerkverkehr: Bei diesem Netzwerkverkehr ist ursprünglich der Absender der sendende Host. |
| • | Eingehender Netzwerkverkehr: Dieser Netzwerkverkehr ist an den empfangenden Host adressiert. |
| • | Weitergeleiteter Netzwerkverkehr: Dieser Netzwerkverkehr wird durch den Windows-IP-Router weitergeleitet. |
Es werden nur die unter Windows Server 2003 oder Windows XP verfügbaren Komponenten besprochen - keine Windows-Socket-Provider oder NDIS-Miniport-Treiber.
Ausgehender Netzwerkverkehr
In der folgenden Abbildung sehen Sie die Paketverarbeitung bei ausgehendem Netzwerkverkehr:

1. | Nachdem das IP-Paket erstellt wurde, übergibt es Tcpip.sys an den Firewall-Hook-Treiber (Ipnat.sys). |
2. | Tcpip.sys übergibt das Paket an den Filter-Hook-Treiber (Ipfltdrv.sys). Basierend auf der Schnittstelle, über die das Paket weitergeleitet wird, vergleicht Ipfltdrv.sys das Paket mit den für diese Schnittstelle konfigurierten, Ausgangsfiltern. |
3. | Tcpip.sys übergibt das Paket an Ipsec.sys. |
Eingehender Netzwerkverkehr
In der folgenden Abbildung sehen Sie die Paketverarbeitung bei eingehendem Netzwerkverkehr:

1. | Nach dem Empfang übergibt Tcpip.sys ein Paket an Ipsec.sys. |
2. | Tcpip.sys übergibt das Paket an Ipfltdrv.sys. |
3. | Tcpip.sys übergibt das Paket an Ipnat.sys. |
4. | Tcpip.sys vergleicht das Paket mit den konfigurierten TCP/IP-Filtern. |
Weitergeleiteter Netzwerkverkehr
In der folgenden Abbildung sehen Sie die Paketverarbeitung bei weitergeleitetem Netzwerkverkehr:

1. | Nach dem Empfang eines IP-Paketes übergibt Tcpip.sys dies an Ipfltdrv.sys. |
2. | Tcpip.sys übergibt das Paket an Ipnat.sys. |
3. | Tcpip.sys übergibt das Paket an Ipfltdrv.sys. |
4. | Tcpip.sys übergibt das Paket an Ipsec.sys. |
Bei einem standardmäßig konfigurierten Client unter Windows XP mit SP2 oder einem Server unter Windows Server 2003 mit SP1, der nicht als Router oder NAT arbeitet und bei dem die TCP/IP-Filterung aktiviert ist, sind die folgenden Komponenten an der Paketverarbeitung für ausgehenden Netzwerkverkehr beteiligt:
1. | Windows Firewall |
2. | IPsec |
Die Paketverarbeitung von eingehendem Netzwerkverkehr geschieht unter standardmäßig konfigurierten Windows-Computern durch die folgenden Komponenten:
1. | IPsec |
2. | Windows Firewall |
Wenn Sie IPsec nutzen und die Windows Firewall aktiviert ist, dann können Sie beide Komponenten so konfigurieren, dass der gewünschte Netzwerkverkehr zugelassen wird. Wenn Sie zum Beispiel einen "enabled"-Webserver konfigurieren und den HTTP-Netzwerkverkehr zu diesem Server mit IPsec absichern möchten, müssen Sie folgende Konfigurationen vornehmen:
1. | Eine IPsec-Regel, die Sicherheit für Pakete an und von der IP-Adresse des Webservers und für TCP-Port 80 erfordert. |
2. | Eine Ausnahme für TCP-Port 80 für die Windows Firewall. |
Die IPsec-Regel stellt sicher, dass der Netzwerkverkehr zum Webserver-Dienst geschützt ist. Die Windows Firewall-Ausnahme stellt sicher, dass die Windows Firewall unverlangt eingehende Anfragen für den Aufbau von Verbindungen mit dem Webserver über TCP-Port 80 nicht verwirft. Da IPsec und Windows Firewall IP-Pakete getrennt verarbeiten, müssen Sie beide Komponenten konfigurieren. Wenn Sie die Verarbeitung von mit IPSec geschützten Paketen durch die Windows Firewall verhindern wollen, dann konfigurieren Sie die Gruppenrichtlinieneinstellung Windows-Firewall: Authentifizierte IPSec durchlassen. Weitere Informationen hierzu finden Sie im Artikel Konfigurieren der Windows-Firewall in Kleinunternehmen über Gruppenrichtlinien.
Weitere Informationen zu TCP/IP und der Verarbeitung von IP-Paketen finden Sie unter den folgenden Quellen:
| • | |
| • |