Grundlegendes zu Windows-Routingtabellen und Standardgateways


11

Hinweis: Dies ist mein Heimcomputerlabor und keine Geschäfts- / Produktionsumgebung. Ich bin mehr als glücklich, es zu brechen und es wieder zu reparieren, also sind alle mögliche Vorschläge willkommen!

ZUSAMMENFASSUNG

Ich habe diese kurze Zusammenfassung hinzugefügt, da diese Frage ziemlich lang wird. Wenn Sie weitere Informationen zu Routingtabellen, IP-Konfigurationen usw. wünschen, sehen Sie unten nach.

Ich habe ein paar Netzwerkkarten an einem Computer. Ein NIC ist 172.16.200.1 / 24. Wenn ich versuche, 172.16.200.2 (einen im Netzwerk vorhandenen Host) zu pingen, erhalte ich eine Antwort. So weit, ist es gut.

Wenn ich versuche, eine Verbindung zu 172.16.200.5 (oder einem anderen Host, der nicht vorhanden ist) herzustellen, wird der Computer auf meine Standardroute (0.0.0.0 über mein Standard-Gateway 192.168.0.1) zurückgesetzt. Diese wird dann von gesendet mein Heimrouter, wo es dann in einer Routing-Schleife in meinem ISPs-Netzwerk verloren geht. Im Folgenden werden bei Bedarf weitere Details aufgeführt, aber ich vermute, dass es einen Guru gibt, der dies bereits beantworten kann ...

Meine Frage ist:

Wie verhindere ich, dass mein Computer auf das Standardgateway für ein privates Netzwerk zurückgreift , wenn von einem Host in diesem Netzwerk keine Antwort eingeht? Diese privaten Netzwerke haben bereits explizite Routen mit niedrigeren Metriken.

Ich habe dies auf einigen Computern getestet (Server 2008 R2, Windows 7, Hyper-V Server 2012 R2, Windows Server 2012) und sie verhalten sich alle gleich. Ich beginne zu akzeptieren, dass dies "normales Verhalten" für Windows-Computer ist, aber ich bin neugierig, ob es gestoppt werden kann.

Ich habe eine Ubuntu-VM mit der gleichen Konfiguration wie meine Windows-VMs erstellt. Die Ubuntu-VM greift nicht auf die Standardroute zurück, wie dies bei den Windows-VMs der Fall ist. Ich habe die Routing-Tabellen und Ergebnisse für die Ubuntu VM und Windows 8.1 VM am Ende dieses Beitrags hinzugefügt.

WEITERE DETAILS

Ich habe zu diesem Thema umfangreiche Suche gemacht und die nächste Frage , die ich gesehen habe , ist hier: Routing - Schleife: TTL abgelaufen im Transit , aber leider ist es nicht beantworten , wie man aufhören , das Problem oder das Verhalten auf dem Computer ändern. Die Antwort schlägt vor, das Routing zu korrigieren. Ich kann meinen Router so ändern, dass alles gelöscht wird, was für private IP-Adressen bestimmt ist (oder an die IPs meiner Mitbewohner weitergeleitet wird, hehehe), aber das ändert nichts am Verhalten meines Computers. (Ich habe auch die großartige Subnet-Anleitung gelesen, auf die in der ursprünglichen Antwort verwiesen wurde. Sie finden sie unter /server/49765/how-does-ipv4-subnetting-work. )

Ich habe Probleme zu verstehen, warum meine Computer versuchen, eine Verbindung zu privaten IP-Adressen über das Internet herzustellen, nachdem sie versucht haben, ihre internen Adapter (für einen kurzen Zeitraum) zu verwenden, was dann fehlgeschlagen ist - zum Beispiel beim Versuch, einen mir bekannten Host zu pingen existiert nicht in meinem Netzwerk ...

Pinging 172.16.200.32 with 32 bytes of data:
Reply from 172.16.200.1: Destination host unreachable.
Reply from 203.29.XXX.YY: TTL expired in transit.
Reply from 203.29.XXX.YY: TTL expired in transit.
Reply from 203.29.XXX.YY: TTL expired in transit.

Ping statistics for 172.16.200.32:
    Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),

Aber das Pingen eines existierenden Hosts funktioniert ...

Pinging 172.16.200.2 with 32 bytes of data:
Reply from 172.16.200.2: bytes=32 time<1ms TTL=128
Reply from 172.16.200.2: bytes=32 time<1ms TTL=128
Reply from 172.16.200.2: bytes=32 time<1ms TTL=128
Reply from 172.16.200.2: bytes=32 time<1ms TTL=128

Ping statistics for 172.16.200.2:
    Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
    Minimum = 0ms, Maximum = 0ms, Average = 0ms

OK, in der Antwort vom 16.1.172.1 heißt es auf meinem Computer, dass keine Antwort eingegangen ist. Warum wird dann überhaupt versucht, eine Verbindung über meine Internetverbindung herzustellen? Ich habe 4 Netzwerkkarten und bin im 172.16.200.0 / 24-Netzwerk einer davon…

Ethernet adapter HyperV External (built in):

   Connection-specific DNS Suffix  . :
   Link-local IPv6 Address . . . . . : fe80::582c:97
   IPv4 Address. . . . . . . . . . . : 172.16.1.1
   Subnet Mask . . . . . . . . . . . : 255.255.255.0
   Default Gateway . . . . . . . . . :

Ethernet adapter Expansion-2 (middle) HomeNetwork:

   Connection-specific DNS Suffix  . : Home
   IPv4 Address. . . . . . . . . . . : 192.168.0.117
   Subnet Mask . . . . . . . . . . . : 255.255.255.0
   Default Gateway . . . . . . . . . : 192.168.0.1

Ethernet adapter Expansion-3 (bottom) iSCSI-1 :

   Connection-specific DNS Suffix  . :
   IPv4 Address. . . . . . . . . . . : 172.16.100.1
   Subnet Mask . . . . . . . . . . . : 255.255.255.0
   Default Gateway . . . . . . . . . :

Ethernet adapter Expansion-1 (top) iSCSI-2:

   Connection-specific DNS Suffix  . :
   IPv4 Address. . . . . . . . . . . : 172.16.200.1
   Subnet Mask . . . . . . . . . . . : 255.255.255.0
   Default Gateway . . . . . . . . . :

An dieser Stelle wäre es also sinnvoll, sich die Routing-Tabelle anzuschauen.

===========================================================================
Interface List
 16...64 70 02 00 1f 03 ......Gigabit PCI Express Network Adapter #2
 15...64 70 02 00 40 48 ......Gigabit PCI Express Network Adapter
 23...00 24 1d 1d f8 35 ......TST Onboard
 17...64 70 02 00 32 c1 ......Gigabit PCI Express Network Adapter #3
  1...........................Software Loopback Interface 1
 28...00 00 00 00 00 00 00 e0 Microsoft ISATAP Adapter
 26...00 00 00 00 00 00 00 e0 Microsoft ISATAP Adapter #2
 13...00 00 00 00 00 00 00 e0 Teredo Tunneling Pseudo-Interface
 27...00 00 00 00 00 00 00 e0 Microsoft ISATAP Adapter #3
 29...00 00 00 00 00 00 00 e0 Microsoft ISATAP Adapter #4
===========================================================================

IPv4 Route Table
===========================================================================
Active Routes:
Network Destination        Netmask          Gateway       Interface  Metric
          0.0.0.0          0.0.0.0      192.168.0.1    192.168.0.117    410
        127.0.0.0        255.0.0.0         On-link         127.0.0.1    306
        127.0.0.1  255.255.255.255         On-link         127.0.0.1    306
  127.255.255.255  255.255.255.255         On-link         127.0.0.1    306
       172.16.1.0    255.255.255.0         On-link        172.16.1.1    266
       172.16.1.1  255.255.255.255         On-link        172.16.1.1    261
     172.16.1.255  255.255.255.255         On-link        172.16.1.1    261
     172.16.100.0    255.255.255.0         On-link      172.16.100.1    266
     172.16.100.1  255.255.255.255         On-link      172.16.100.1    266
   172.16.100.255  255.255.255.255         On-link      172.16.100.1    266
     172.16.200.0    255.255.255.0         On-link      172.16.200.1    266
     172.16.200.1  255.255.255.255         On-link      172.16.200.1    266
   172.16.200.255  255.255.255.255         On-link      172.16.200.1    266
      192.168.0.0    255.255.255.0         On-link     192.168.0.117    266
    192.168.0.117  255.255.255.255         On-link     192.168.0.117    266
    192.168.0.255  255.255.255.255         On-link     192.168.0.117    266
        224.0.0.0        240.0.0.0         On-link         127.0.0.1    306
        224.0.0.0        240.0.0.0         On-link     192.168.0.117    266
        224.0.0.0        240.0.0.0         On-link      172.16.100.1    266
        224.0.0.0        240.0.0.0         On-link      172.16.200.1    266
        224.0.0.0        240.0.0.0         On-link        172.16.1.1    261
  255.255.255.255  255.255.255.255         On-link         127.0.0.1    306
  255.255.255.255  255.255.255.255         On-link     192.168.0.117    266
  255.255.255.255  255.255.255.255         On-link      172.16.100.1    266
  255.255.255.255  255.255.255.255         On-link      172.16.200.1    266
  255.255.255.255  255.255.255.255         On-link        172.16.1.1    261
===========================================================================
Persistent Routes:
  None

Ich dachte zuerst, die Metrik der 0.0.0.0-Route sei der Schuldige - ursprünglich war es 6, also habe ich versucht, sie auf 410 zu ändern, was das Verhalten nicht geändert hat. (Übrigens habe ich noch nie zuvor mit der Routing-Tabelle auf diesem Computer rumgespielt). Ich habe es dann mit einem Hyper-V 2012 R2-Computer verglichen, den ich in drei Netzwerken (172.16.1.0, 172.16.100.0 und 172.16.200.0) habe, und festgestellt, dass der Hyper-V-Computer auch eine Metrik von 6 für 0.0 hat .0.0 Route, also denke ich, das ist normal und korrekt ...

Ich habe dann versucht, die 172.16.200.0 so zu ändern, dass sie eine dauerhafte Route ist (siehe unten), aber es hat immer noch nicht funktioniert.

===========================================================================
Persistent Routes:
  Network Address          Netmask  Gateway Address  Metric
       172.16.200.0  255.255.255.0       172.16.1.1       1
===========================================================================

Ich habe auch versucht, die Metrik zu erhöhen (ich weiß, dass eine niedrigere bevorzugt wird, aber nur für den Fall, wie?)… Natürlich kein Glück.

In den "Erweiterten Einstellungen" im Fenster "Netzwerkverbindungen" habe ich bestätigt, dass der Adapter 192.168.0.117 in der Reihenfolge "Adapter und Bindungen" der niedrigste ist.

Also, nachdem ich meinen Kopf ein bisschen angeschlagen habe, bin ich ratlos. Offensichtlich stoppt das Löschen der 0.0.0.0-Route sie, aber natürlich stoppt es auch mein Internet ...

Wie um alles in der Welt kann ich verhindern, dass mein Computer versucht, mein Standard-Gateway 192.168.0.1 zu passieren, wenn er versucht, einen Host am 172.16.200.0 zu erreichen?

http://technet.microsoft.com/en-us/library/cc779122%28v=ws.10%29.aspx ("Die IP-Routing-Tabelle: TCP / IP") scheint darauf hinzudeuten, dass "die Standardroute in der Regel eine IP-Datagramm (für das es keine passende oder explizite lokale Route gibt) zu einer Standard-Gateway-Adresse für einen Router im lokalen Subnetz. " Wie viel deutlicher kann ich mit dieser Route werden!

Die Antwort hier, dass das Windows-Gateway für beständige Routen nicht verfügbar ist, sodass die Standardroute verwendet wird, deutet darauf hin, dass dies ein normales Verhalten ist. Wenn eine beständige Route hinzugefügt wird, wird versucht, diese Route zu verwenden, wenn dies fehlschlägt, wird jedoch auf die Standardroute zurückgegriffen. Sicherlich könnte dies einige ziemlich ernsthafte Verkehrsprobleme aufwerfen, ganz zu schweigen von Sicherheitsproblemen (private Informationen, die ins Internet gelangen, oder zumindest die privaten Netzwerke Ihrer ISPs ...).

Einige zusätzliche Informationen: Auf diesem Server wird normalerweise NPS / RRAS ausgeführt - das Deaktivieren und sogar das Entfernen haben nichts bewirkt. Außerdem habe ich eine brandneue 2008 R2-VM erstellt, ihr zwei Netzwerkkarten gegeben, eine direkt im 192.168.0.0-Netzwerk und eine im 172.16.200.0-Netzwerk, und es hat das Gleiche getan ... Ich hoffe, Sie können mir sagen, dass ich es getan habe verbrachte ein bisschen Zeit damit.

Ich habe meinen Heimrouter so eingestellt, dass er alle 172.16.XX-Daten zurück an meinen eigenen Computer weiterleitet, aber das ist eine Problemumgehung.

Fehlt mir etwas? Vielleicht etwas Offensichtliches? Frage ich das Unmögliche?

[UPDATE 1 UND 2]

Ich habe jedes Konfigurationsbit auf meinem Router durchgearbeitet und es scheint keine Proxy-ARP-Anforderungen zu verarbeiten - es hat nicht einmal Einstellungen dafür, die ich sehen kann.

Ich habe MS Network Monitor 3.4 verwendet, um zu testen, ob ARP-Anfragen vom Router beantwortet werden und nicht. Ich kann sehen, dass die ARP-Anforderung gesendet wird, wenn ich versuche, einen nicht vorhandenen Host zu pingen, und keine ARP-Antworten erhalte. Wenn ich einen existierenden Host anpinge, erhalte ich natürlich eine ARP-Antwort. Ist es sicher anzunehmen, dass mein Router keine Proxy-ARP-Anforderungen verarbeitet?

Die Routing-Tabelle auf dem Router lautete wie folgt:

 > route show
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
10.20.21.36     *               255.255.255.255 UH    0      0        0 ppp0
192.168.0.0     *               255.255.255.0   U     0      0        0 br0
default         *               0.0.0.0         U     0      0        0 ppp0

Ich habe die folgenden Einträge als vorübergehende Maßnahme hinzugefügt, um zu verhindern, dass meine "verlorenen" Pakete an meinen Internetdienstanbieter weitergeleitet werden:

172.16.1.0      192.168.0.117   255.255.255.0   UG    1      0        0 br0
172.16.100.0    192.168.0.117   255.255.255.0   UG    1      0        0 br0
172.16.200.0    192.168.0.117   255.255.255.0   UG    1      0        0 br0

[UPDATE # 3 - Routing-Tabellen für Ubuntu und Win8.1-VMs hinzugefügt]

OK, also habe ich eine brandneue Ubuntu-VM und eine brandneue Windows 8.1-VM erstellt. Die Ubuntu-VM versucht nicht, auf die Route 0.0.0.0 zurückzugreifen, aber Windows 8.1. Ich habe versucht, den alten Ping-a-nicht-existierenden Host und beobachtete den Verkehr auf dem 172.16.1.1-Router. Es empfängt die ICMP-Anforderungen von der Windows 8.1-VM und leitet sie weiter, sieht jedoch nie ICMP-Verkehr von der Ubuntu-VM.

Die Ubuntu VM-Tabelle ist unten:

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface    MSS   Window irtt
0.0.0.0         172.16.1.1      0.0.0.0         UG    0      0        0 eth0     0     0      0
169.254.0.0     0.0.0.0         255.255.0.0     U     1000   0        0 eth1     0     0      0
172.16.1.0      0.0.0.0         255.255.255.0   U     1      0        0 eth0     0     0      0
172.16.200.0    0.0.0.0         255.255.255.0   U     1      0        0 eth1     0     0      0

Die Windows 8.1-Tabelle ist unten:

===========================================================================
Interface List
  9...00 15 5d 01 4c 1c ......Microsoft Hyper-V Network Adapter #2
  3...00 15 5d 01 4c 08 ......Microsoft Hyper-V Network Adapter
  1...........................Software Loopback Interface 1
  4...00 00 00 00 00 00 00 e0 Microsoft ISATAP Adapter
 13...00 00 00 00 00 00 00 e0 Microsoft ISATAP Adapter #2
===========================================================================

IPv4 Route Table
===========================================================================
Active Routes:
Network Destination        Netmask          Gateway       Interface  Metric
          0.0.0.0          0.0.0.0       172.16.1.1     172.16.1.101      5
        127.0.0.0        255.0.0.0         On-link         127.0.0.1    306
        127.0.0.1  255.255.255.255         On-link         127.0.0.1    306
  127.255.255.255  255.255.255.255         On-link         127.0.0.1    306
       172.16.1.0    255.255.255.0         On-link      172.16.1.101    261
     172.16.1.101  255.255.255.255         On-link      172.16.1.101    261
     172.16.1.255  255.255.255.255         On-link      172.16.1.101    261
     172.16.200.0    255.255.255.0         On-link      172.16.200.1    261
     172.16.200.1  255.255.255.255         On-link      172.16.200.1    261
   172.16.200.255  255.255.255.255         On-link      172.16.200.1    261
        224.0.0.0        240.0.0.0         On-link         127.0.0.1    306
        224.0.0.0        240.0.0.0         On-link      172.16.1.101    261
        224.0.0.0        240.0.0.0         On-link      172.16.200.1    261
  255.255.255.255  255.255.255.255         On-link         127.0.0.1    306
  255.255.255.255  255.255.255.255         On-link      172.16.1.101    261
  255.255.255.255  255.255.255.255         On-link      172.16.200.1    261
===========================================================================
Persistent Routes:
  None

1. Führt Ihr Router / Ihre Firewall Proxy-ARP für Ihre internen Adressräume durch? 2. Wie sieht die Routing-Tabelle auf Ihrem Router / Ihrer Firewall aus?
Joeqwerty

1
Wenn Sie verhindern möchten, dass RFC 1918-Space-Pakete ausgehen, können Sie die Routen 10/8, 172.16 / 12 und 192.168 / 16 auf Null setzen (oder sie an Ihr LAN zurückleiten). Ohne besondere Vorkehrungen sollten diese Pakete ohnehin nicht in Ihr Netzwerk gelangen oder dieses verlassen. Obwohl ich mir nicht sicher bin, ob das der beste Ansatz ist (es könnte die Dinge an einem anderen Ende zerbrechen).
ein Lebenslauf vom

Wenn man bedenkt, um welche Windows-Versionen es sich handelt und um welche allgemeinen Aspekte dieses Beitrags es sich handelt, befinden Sie sich vermutlich in einer Unternehmensumgebung. In diesem Fall sollten Sie diesen Beitrag möglicherweise als Moderator markieren und eine Migration zu Server Fault anfordern .
ein CVn

Hallo Michael, danke für die Antwort. Ich habe Routen für 10/8, 172.16 / 12 und 192.168 / 16 auf meinem Router hinzugefügt, um zu meinem Computer (192.168.0.117) zurückzukehren, damit sie nicht über das Internet gesendet werden. Ich bin gespannt, ob dies etwas ist, das jeder Router konfiguriert haben muss. Außerdem sollte ich klarstellen, dass dies mein Heimlabor und keine Unternehmens- oder Geschäftsumgebung ist. Ich benutze es nur zum Lernen.
Gund

Antworten:


2

Das Failback auf die Standardroute ist normal, da Vista dies im folgenden Artikel erläutert : Auswahl der Quell-IP-Adresse auf einem Windows-Computer mit mehreren Computern .

Schleifenproblem durch falsch konfigurierten Router, der Pakete über ein anderes Subnetz zurücksendet, anstatt sie fallen zu lassen.


Nur Antworten auf Links werden nutzlos, wenn der Link ausfällt. Bitte erläutern Sie, wie das Problem gelöst werden kann, während Sie die Quelle angeben.
Raystafarian

Sorry, habe ein paar Details hinzugefügt.
mtm

1
Hallo, sorry für die späte Antwort, aber vielen Dank für den Link MTM! Es beschreibt, warum ich dieses bestimmte Verhalten sehe und gibt mir einen guten Ausgangspunkt für die Forschung, um es zu ändern.
Gund
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.