Welche nativen Optionen muss ich auf der Windows-Plattform prüfen, ob ein Port (z. B. 3306) auf meinem lokalen Computer (wie in localhost
) blockiert ist?
windows
networking
firewall
port
Boris Pavlović
quelle
quelle
Antworten:
Da Sie auf dem Windows-Computer sind, können diese Dinge getan werden,
Führen Sie den folgenden Befehl aus und suchen Sie nach einem Listener ": 3306" (Sie haben UDP / TCP nicht erwähnt). Dadurch wird bestätigt, dass am Port etwas läuft.
netstat -a -n
Wenn Sie danach eingehende Verbindungen über diesen Port erwarten und der Meinung sind, dass die Firewall diese blockiert, können Sie die Windows-Firewallprotokollierung starten und die Protokolle auf unterbrochene Verbindungen überprüfen
Es gibt einen weiteren Befehl zum Überprüfen des Firewall-Status
(Update für Windows 7-Benutzer - wie im
Nick
Folgenden beschrieben - verwenden Sie die netsh advfirewall-Firewall ).netsh firewall show state
Mit diesem Befehl werden die Konfigurationsdetails der Windows-Firewall ausgegeben
netsh firewall show config
Wenn Sie nach dem Start der Protokollierung einen aktiven Block haben (eingehende Verbindungen werden von der Firewall getrennt), sollte dies im Protokoll vermerkt sein.
Wenn Sie eine Anwendung / einen Dienst ausführen, die / der 3306 überwacht, sollte die Firewall-Konfiguration anzeigen, dass sie aktiviert ist. Wenn dies nicht angezeigt wird, haben Sie wahrscheinlich versäumt, eine Ausnahme mit der Firewall hinzuzufügen, um diese App / diesen Dienst zuzulassen.
Schließlich wird Port 3306 normalerweise für MySQL verwendet. Ich nehme also an, dass Sie auf diesem Windows-Computer einen MySQL-Server ausführen. Sie sollten daher einen Listener für 3306 sehen, der eingehende Verbindungen akzeptiert. Wenn Sie das nicht sehen, müssen Sie zuerst mit Ihrer Anwendung (MySQL) arbeiten, um damit zu beginnen.
quelle
|find "3306"
dem Befehl Folgendes hinzu:C:\Windows\System32>netstat -an |find "3306"
NETSTAT
Zeigt an, ob der Port empfangsbereit ist , zeigt jedoch nicht an, ob der Port für die Außenwelt geöffnet ist . Damit meine ich, dassNETSTAT
möglicherweise angezeigt wird, dass die Version 0.0.0.0 auf Port 3306 ABHÖRT, eine Firewall jedoch möglicherweise den Port blockiert, der externe Verbindungen verhindert. es reicht also nicht aus, sichNETSTAT
allein zu verlassen .Die beste Möglichkeit, um zu überprüfen, ob ein Port blockiert ist, besteht darin, einen Port-Scan vom Client-Computer aus durchzuführen.
Es gibt viele Möglichkeiten, einen Port-Scan durchzuführen. Da Sie jedoch erwähnt haben, dass Sie unter Windows arbeiten, schlage ich das Microsoft-Befehlszeilendienstprogramm
PortQry
und die grafische Version PortQryUI vorSo testen Sie alle offenen Ports:
So testen Sie einen bestimmten Port:
So testen Sie beispielsweise das Webinterface eines Routers unter 192.168.1.1:
Welches gibt zurück:
Wenn beim Testen auf einem lokalen Computer ohne ausgeführtes HTTPD Folgendes zurückgegeben wird:
Mit einem PortScan-Dienstprogramm erhalten Sie eines von 3 Ergebnissen.
Listening
bedeutet, dass der Server den angegebenen Port überwachtFiltered
bedeutet, dass ein TCP-Bestätigungspaket mit gesetztem Reset-Flag empfangen wurde, das wahrscheinlich auf ein Firewall- oder Softwareproblem hinweistNot Listening
bedeutet, dass es überhaupt keine Antwort erhalten hattelnet
ist eine weitere Befehlszeilenoption, die normalerweise standardmäßig auf dem Betriebssystem installiert ist. Mit diesem Befehlszeilenprogramm können Sie schnell feststellen, ob ein Port auf eine Netzwerkanforderung reagiert.Zur Verwendung geben
telnet
Sie einfach den folgenden Befehl an einer Eingabeaufforderung ein:Der obige Befehl sollte Ihnen einen schnellen Hinweis geben, ob der Port
3306
auf demlocalhost
reagiert.quelle
Seit PowerShell 4.0 können Sie den Befehl verwenden
Test-NetConnection
Wenn Sie Port 3306 wie in Ihrem Beispiel testen möchten, lautet der Befehl
TechNet Test-NetConnection-Dokumentation
quelle
Wenn Sie vom lokalen Computer (unter Verwendung der externen IP-Adresse) zum Port telneten können, aber nicht von einem anderen Computer - dann wird er irgendwo dazwischen blockiert.
Beachten Sie, dass eine Firewall auf dem lokalen Computer könnte sogar die erste Aktion verhindern.
quelle