A quoi sert le port 0 ?
Le port 0 a une signification particulière dans la programmation réseau, en particulier dans les systèmes d’exploitation Unix, lorsqu’il s’agit de programmation de socket, il est utilisé pour demander un port dynamique alloué par le système. Le port 0 est un port générique qui indique au système de trouver un numéro de port approprié.
Contrairement à la plupart des numéros de port, le port 0 est un port réservé dans les réseaux TCP/IP, ce qui signifie qu’il ne doit pas être utilisé dans les messages TCP ou UDP. Les ports réseau dans TCP et UDP vont de zéro à 65535. Les numéros de port compris entre zéro et 1023 sont définis comme des ports non éphémères, des ports système ou des ports connus. L’IANA (Internet Assigned Numbers Authority) tient à jour une liste officielle de l’utilisation prévue de ces numéros de port sur Internet, et le port système 0 n’est pas utilisé.
Fonctionnement du port TCP/UDP 0 dans la programmation réseau
Jetta Productions/Getty Images
La configuration d’une nouvelle connexion socket réseau nécessite l’attribution d’un numéro de port à la fois sur la source et la destination. Un message TCP ou UDP envoyé par l’initiateur (source) contient deux numéros de port afin que le destinataire du message (cible) puisse envoyer un message de réponse au bon point de terminaison de protocole.
L’IANA pré-alloue un port système désigné (port 80) pour les applications Internet de base telles que les serveurs Web, mais de nombreuses applications Web TCP et UDP n’ont pas leur propre port système et doivent en obtenir un à partir du système d’exploitation de leur appareil à chaque fois qu’elles s’exécutent.
Pour attribuer son numéro de port source, une application appelle des fonctions réseau TCP/IP telles que bind() pour en demander un. Si l’application préfère demander un numéro spécifique, l’application peut fournir un numéro fixe (codé en dur) à bind(), mais une telle demande peut échouer car une autre application s’exécutant sur le système peut actuellement l’utiliser.
Alternativement, il peut fournir le port 0 à bind() comme paramètre de connexion. Cela déclenche la recherche automatique du système d’exploitation dans la plage de numéros de port dynamique TCP/IP et renvoie le port disponible approprié.
L’application ne se voit pas accorder le port 0, mais un autre port dynamique. L’avantage de cette convention de programmation est l’efficacité. Les applications dépendent du système d’exploitation, plutôt que de chaque application implémentant et exécutant du code pour essayer plusieurs ports jusqu’à ce qu’elles en obtiennent un valide.
Unix, Windows et d’autres systèmes d’exploitation gèrent le port 0 différemment, mais les mêmes conventions générales s’appliquent.
Port 0 et sécurité réseau
Le trafic réseau envoyé sur Internet à un hôte écoutant sur le port 0 peut être généré par un attaquant du réseau ou accidentellement par une application mal programmée. Les messages de réponse générés par les hôtes en réponse au trafic du port 0 peuvent aider les attaquants à comprendre le comportement de ces appareils et les vulnérabilités potentielles du réseau.
De nombreux fournisseurs d’accès Internet (FAI) bloquent le trafic sur le port 0, y compris les messages entrants et sortants, pour se protéger contre ces vulnérabilités.
FAQ
-
Quel est le numéro de port ?
Les numéros de port utilisés pour les connexions réseau TCP/IP servent d’informations d’adresse, identifiant l’expéditeur et le destinataire des messages. Les numéros de port permettent à diverses applications sur le même réseau de partager des ressources simultanément.
-
Comment trouver le numéro de port ?
Pour trouver le numéro de port d’une adresse IP spécifique, accédez à une invite de commande et tapez statistiques réseau-apuis appuyez EntrerVous verrez une liste des connexions TCP actives avec des adresses IP et des numéros de port séparés par deux-points.
-
Puis-je me connecter au port 0 ?
Non, officiellement, le port 0 n’existe pas et vous ne pouvez pas vous y connecter car c’est un numéro de port invalide. Cependant, vous pouvez envoyer des paquets Internet vers et depuis le port 0 comme si vous utilisiez un autre numéro de port.
Merci de nous en informer!
Dites-nous pourquoi !
D’autres détails ne sont pas assez difficiles à comprendre