Diese Frage bezieht sich speziell auf die ICMPv4-Zeitstempelanforderungsnachricht (Typ 13).
Wenn ich die Windows-Firewall habedeaktiviertIch kann eine Zeitstempelanforderung vom Host senden und der Client empfängt die Anforderung und antwortet mit einer Zeitstempelantwort (Typ 14).
Wenn ich die Windows-Firewall habeermöglichtIch kann eine Zeitstempelanfrage vom Host senden und der Client empfängt die Anfrage, antwortet aber nie mit einer Zeitstempelantwort. Ich gehe davon aus, dass dies daran liegt, dass die Firewall die Anfrage blockiert. Ich sehe jedoch keine bestimmten Regeln, die mir anzeigen, dass dies wirklich der Fall ist. Ich konnte auch keine Online-Dokumentation finden, die mir hilft zu verstehen, ob diese bestimmte Nachricht standardmäßig blockiert wird (wie ICMP Echo).
Weiß jemand, ob die Windows-Firewall diese Meldung standardmäßig blockiert? Gibt es irgendwo eine Möglichkeit, diese Standardeinstellung anzuzeigen/zu konfigurieren? Gibt es irgendwo eine Dokumentation, die ich einfach übersehen habe?
Ich verwende Nping zum Senden der Nachricht und Wireshark, um das Kommen und Gehen der Pakete zu beobachten.
Antwort1
Die Windows-Firewall blockiertallesstandardmäßig. Die vollständige Verarbeitungsreihenfolge wird dokumentiertauf TechNet, aber der Einfachheit halber können Sie es sich so vorstellen: „1) alle ‚Verweigern‘-Regeln verarbeiten, 2) alle ‚Zulassen‘-Regeln verarbeiten, 3) alles andere verweigern oder zulassen, je nach Profileinstellungen.“
Wenn Sie das Firewall-Konfigurationstool öffnen (entweder durch Ausführen vonwf.msc
oder das Öffnen der„Windows-Firewall mit erweiterter Sicherheit“app oder durch Klicken auf den Link „ “ in der Systemsteuerung) wird dieser Bildschirm angezeigt:
Standardmäßig heißt es dort: "Eingehende Verbindungen, die einer Regel nicht entsprechen, werden blockiert", und das gilt wirklich fürallePakete, die keinem bestehenden Status zugeordnet sind, einschließlich ICMP-Anfragen. Wenn Sie keine spezifischen Regeln für Zeitstempelanfragen gefunden haben, bedeutet dies, dass diese gemäß der Standardkonfiguration abgelehnt werden.
Um bestimmte ICMP-Typen zuzulassen, sollten Sie natürlich unter „Eingehende Regeln“ Regeln erstellen oder bereits vorhandene aktivieren. Die Gruppe „Datei- und Druckerfreigabe“ verfügt beispielsweise über integrierte Regeln, um eingehende ICMP-Echoanforderungen zuzulassen:
Die spezifischen ICMP-Typen für jede Regel werden unter „Protokolle und Ports → ICMP-Einstellungen: Anpassen“ ausgewählt. (Um Timestamp Request zuzulassen, müssen Sie eine benutzerdefinierte Regel erstellen; die Liste ist für integrierte Regeln schreibgeschützt.)
Beachten Sie jedoch, dass selbst wenn die Firewallerlaubtdie Pakete durch, heißt das nicht, dass das Betriebssystem tatsächlichUnterstützungdieser spezielle ICMP-Anforderungstyp. Da ICMPv4-„Zeitstempelanforderungen“ ziemlich selten sind (selten genug, um keine integrierte Regel in der Windows-Firewall zu haben, und es gibt überhaupt kein Äquivalent in ICMPv6), gibt es keine wirkliche Garantie, dass zukünftige Windows-Versionen den Code zum Beantworten solcher Anforderungen nicht „veralten“ und entfernen …
Antwort2
UDP
ist von Natur aus „dumm“, also einfach – nicht ausgefeilt. Meistens gibt es keine Anforderung, dass die Anfragen etwas zurückgeben oder überhaupt erfolgreich sind. Es ist ziemlich trockene Lektüre, aber Sie werden wahrscheinlich feststellenRFC-792eine gute Lektüre in Ihrer Situation. Was eine Heilung angeht: Wenn ich es wäre, würde ich wahrscheinlich aufmachen echo req
und sehen, ob Sie für Ihre Anfragen nicht einen besseren Gegenwert erhalten.
Obwohl es sich nicht um eine Windows-Manpage handelt, sollte die folgende FreeBSD-Manpage Ihnen helfen, alle Details zu verstehen.ICMP