J'essaie d'installer un site sous un autre port sur un serveur, mais le port peut être fermé par un pare-feu. Existe-t-il un moyen d'effectuer une requête ping sur un port spécifique pour savoir s'il est ouvert?
Si vous essayez d'utiliser un port TCP (plutôt que UDP):
Sur le serveur lui-même, utilisez netstat -an
pour vérifier quels ports écoutent.
Depuis l’extérieur, utilisez simplement telnet Host port
(ou telnet Host:port
sur les systèmes Unix) pour voir si la connexion est refusée, acceptée ou si le délai est dépassé.
Sur ce dernier test, alors en général:
Sous Windows 7 ou Windows Vista, l'option par défaut "telnet" n'est pas reconnue comme une commande interne ou externe, un programme utilisable ou un fichier de traitement par lots. Pour résoudre ce problème, activez-le: Cliquez sur * Démarrer ** → Panneau de configuration → Programmes → Activez ou désactivez les fonctionnalités Windows . Faites défiler la liste vers le bas et sélectionnez le client Telnet et cliquez sur OK.
Sous Windows, vous pouvez utiliser
netstat -na | find "your_port"
pour affiner les résultats. Vous pouvez également filtrer pour LISTENING
, ESTABLISHED
, TCP
et autres. Remarquez qu'il est sensible à la casse cependant.
Si vous vérifiez de l'extérieur, pas du serveur lui-même, et que vous ne voulez pas installer Telnet (car il ne vient pas avec les dernières versions de Windows) ou tout autre logiciel, alors vous avez natif PowerShell:
Test-NetConnection -Port 800 -ComputerName 192.168.0.1 -InformationLevel Detailed
(Malheureusement, cela ne fonctionne qu'avec PowerShell 4.0 ou plus récent. Pour vérifier la version de votre PS, tapez $PSVersionTable
.)
(Si vous avez une version PSVersion <4.0, vous n’avez pas de chance. Consultez ce tableau:
Même si vous pouvez mettre à niveau votre version de powershell en installant le Windows Management Framework 4. , cela n’a pas fonctionné pour moi, Test-NetConnection la cmdlet n'est toujours pas disponible).
Sur un ordinateur Windows, vous pouvez utiliser PortQry de Microsoft pour vérifier si une application écoute déjà sur un port spécifique à l'aide de la commande suivante:
portqry -n 11.22.33.44 -p tcp -e 80
J'ai fait comme ça:
netstat -an | find "8080"
de telnet
telnet 192.168.100.132 8080
Et assurez-vous simplement que le pare-feu est désactivé sur cette machine.
Si telnet
n'est pas disponible, téléchargez PuTTY . Il s'agit d'un client de qualité supérieure tel que Telnet, SSH, etc., qui sera utile dans de nombreuses situations, et pas seulement dans celle-ci, en particulier si vous administrez un serveur.
Voulez-vous un outil pour le faire? Il existe un site Web à l’adresse http://www.canyouseeme.org/ . Sinon, vous aurez besoin d'un autre serveur pour vous rappeler si un port est ouvert ...
Utilisez ceci si vous voulez voir tous les ports utilisés et en écoute sur un serveur Windows:
netstat -an |find /i "listening"
Voir tous les ports ouverts, en écoute, établis:
netstat -a
Sur Windows Server, vous pouvez utiliser
netstat -an | where{$_.Contains("Yourport")}
PsPing de Sysinternals est également très bon.
Je pense que le meilleur que j'ai obtenu est celui où vous pouvez vérifier vos propres ports ainsi que ceux des autres domaines.
Voici ce qui a fonctionné pour moi:
telnet
Cela confirmera si le port est ouvert.
Autre utilitaire que j’ai trouvé et qui est bon et petit également, PortQry Command Line Port Scanner Version 2.0 https://www.Microsoft.com/en-us/download/details.aspx?id=17148
vous pouvez cingler un serveur et un port et il vous indiquera l’état du port, il existe un utilitaire de ligne de commande et une interface utilisateur.