A quoi sert le port 0 ?
Le port 0 revêt une importance particulière dans la programmation du réseau, en particulier dans le Unix OS quand il s'agit de programmation de socket où le port est utilisé pour demander des ports dynamiques alloués 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 numéros de port, le port 0 est un port réservé dans TCP/IP réseau, ce qui signifie qu'il ne doit pas être utilisé dans TCP ou UDP messages. Les ports réseau dans TCP et UDP vont du numéro 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 ports bien connus. L'Internet Assigned Numbers Authority (IANA) maintient un liste officielle de l'utilisation prévue de ces numéros de port sur Internet, et le port système 0 ne doit pas être utilisé.
Fonctionnement du port TCP/UDP 0 dans la programmation réseau

La configuration d'une nouvelle connexion de socket réseau nécessite l'attribution d'un numéro de port à la fois du côté source et du côté destination. Les messages TCP ou UDP envoyés par l'expéditeur (source) contiennent les deux numéros de port afin que le destinataire du message (destination) puisse envoyer des messages de réponse au bon point de terminaison de protocole.
L'IANA a préalloué des ports système désignés pour les applications Internet de base comme le Web les serveurs (port 80), mais de nombreuses applications réseau TCP et UDP n'ont pas leur propre port système et doivent en obtenir un auprès de leur périphérique système opérateur chaque fois qu'ils courent.
Pour allouer son numéro de port source, les applications appellent des fonctions réseau TCP/IP comme bind() pour en demander un. L'application peut fournir un nombre fixe (codé en dur) à bind() si elle préfère demander un numéro, mais une telle demande peut échouer car une autre application en cours d'exécution sur le système peut actuellement être En l'utilisant.
Alternativement, il peut fournir le port 0 à bind() comme paramètre de connexion. Cela déclenche le système d'exploitation pour rechercher et renvoyer automatiquement un port disponible approprié dans la plage de numéros de port dynamique TCP/IP.
L'application n'a pas le port 0 mais plutôt un autre port dynamique. L'avantage de cette convention de programmation est l'efficacité. Au lieu que chaque application implémente et exécute du code pour essayer plusieurs ports jusqu'à ce qu'elles en obtiennent un valide, les applications s'appuient sur le système d'exploitation.
Unix, les fenêtres, et d'autres systèmes d'exploitation varient dans la gestion du port 0, mais la même convention générale s'applique.
Port 0 et sécurité du réseau
Le trafic réseau envoyé sur Internet aux hôtes écoutant sur le port 0 peut être généré par des attaquants du réseau ou accidentellement par des applications mal programmées. Les messages de réponse que les hôtes génèrent en réponse au trafic du port 0 aident les attaquants à connaître le comportement et les vulnérabilités potentielles du réseau de ces appareils.
De nombreux Les fournisseurs de services internet (les FAI) bloquent le trafic sur le port 0, à la fois les messages entrants et sortants, pour se prémunir contre ces exploits.
FAQ
-
Quels sont les numéros de port ?
Les numéros de port utilisés pour les connexions réseau TCP/IP agissent comme des informations d'adresse, identifiant les expéditeurs et les destinataires d'un message. Les numéros de port permettent à diverses applications sur le même réseau de partager des ressources en même temps.
-
Comment trouver les numéros de port ?
Pour trouver le numéro de port d'une adresse IP spécifique, aller à l'invite de commande, taper netstat -a, puis appuyez Entrer. Vous verrez une liste des connexions TCP actives ainsi que 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 il s'agit d'un numéro de port invalide. Cependant, vous pouvez envoyer un paquet Internet vers et depuis le port 0 de la même manière qu'avec un autre numéro de port.