Bobjour,
je demande comment fixer le port source d'un client UDP. en fait j'essaie de capturer les paquets entre le client et le serveur mais dans l'interface ethereal je vois seulement les paquets dans sens du client vers le serveur . il parait que sans fixer le port source le serveur ne poura pas me repondre.
Merci.
# Il parait mal
Posté par Ph Husson (site web personnel) . Évalué à 4.
M'enfin c'est toujours faisable
Que je sache tu fais bind() puis connect()
Mais le serveur peut connaitre l'auteur(ip+port) d'un message
voir la page de man de recvfrom
[^] # Re: Il parait mal
Posté par ecyrbe . Évalué à 2.
tu peux quand même le mettre, ça permet juste de pouvoir utiliser recv et send comme en tcp (ça évite de donner l'adresse du destinataire à chaque appel) au lieu de recvfrom et sendto...
# Quelques explications SVP :-)
Posté par Steve Azriel . Évalué à 2.
Je n'ai pas forcément bien compris le contenu de la demande.
A priori, le client n'a pas à "forcer" son port source pour requêter un serveur sauf pour des cas (bien) particuliers. Les demandes du client utilisent un port source qui était "libre" pour le système et en général, > 1024.
A moins que le serveur soit paramétré pour ne pas répondre à ce type de demande (via ACL ou équivalent), ou à moins qu'il existe un autre élément de filtrage (firewall, ...), le client devrait recevoir une ou plusieurs réponse(s) (soit de type contrôle: ICMP ..., soit du serveur lui-même). Et lors de la capture (sur un des éléments de la route client -> serveur, par exemple, sur le client :p ou sur le serveur lui-même), la trace (éventuellement "traitée" pour nettoyer les autres flux) devrait indiquer tous les échanges entre le client et le serveur (avec plus ou moins de détail).
J'espère que cette tentative de commentaire aura pu apporter quelques éléments de précision.
Cdlt,
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.