Je me demandais s'il restait une trace de la source d'origine lorsqu'un paquet quitte le NAT.

Disons que je fais une série de requêtes DNS de ma machine vers un serveur public. Je suis derrière NAT. Le serveur peut-il en quelque sorte voir que ces demandes proviennent de la même machine ? Par exemple, le NAT réutilise-t-il le port source lorsqu'il provient de la même machine ?

answer

Cette question n'a pas de bonne réponse parce que vous posez une question très spécifique - pour un terme générique.

Le NAT est une approche, pas un programme. Chaque routeur implémentant NAT peut le faire différemment. Détail de la mise en œuvre.

Donc, il n'y a pas de réponse générique.

L'IIRC à l'époque, vous pouviez non seulement identifier le NAT utilisé, mais aussi certains producteurs de routeurs (sur la base de ces détails d'implémentation) bien que cela remonte à il y a des ANNÉES - les choses se sont alors nettoyées. Sérieusement, cela nécessite une analyse pour chaque routeur et diffère peut-être même entre les versions de firmware au fil des ans.

Oh, et un autre - votre exemple est mauvais. Vraiment mauvais:

Let’s say I do a series of DNS requests from my machine to a public server

Dans n'importe quelle configuration de réseau que j'ai jamais vue, vous ne feriez pas cela - votre machine ferait la requête DNS au routeur, qui agit également comme un serveur DNS local. Toute demande qu'il ne peut satisfaire serait transmise. La raison en est de trouver des actifs locaux également enregistrés dans le DNS... que le DNS distant ne connaîtrait pas. Quoi qu'il en soit, en utilisant cette configuration (normale), il n'y aurait pas de NAT impliqué car toute requête DNS extérieure proviendrait vraiment du même périphérique.