Obtenir le hostname du client

Poppuledaimadoshi Messages postés 5 Date d'inscription mercredi 30 juillet 2003 Statut Membre Dernière intervention 18 octobre 2004 - 25 août 2003 à 17:58
Poppuledaimadoshi Messages postés 5 Date d'inscription mercredi 30 juillet 2003 Statut Membre Dernière intervention 18 octobre 2004 - 26 août 2003 à 22:17
Bonjour, je commence dans la programmation réseau, et j'ai un petit problème. En effet, j'ai commencé un petit programme en C plus plus qui fait serveur, avec la classe CAsyncsocket. Tout va bien pour recevoir des messages (en envoyé aussi avec la version client), la connexion se fait, bref pas de souci, c bon, tout est niquel sur ce point.
En fait, je voudrais connaitre soit l'ip du PC qui m'envoie un socket, soit son hostname. (n'importe puisque je peux ensuite passer de l'un à l'autre assez aisément).

Ma question est donc simple : comment obtenir l'ip ou le hostname d'un client envoyant un message par socket (UDP dans mon cas précis) a mon serveur? Si vous pouviez m'aider ça serait vraiment super! :)
Si vous voulez plus d'infos dites le moi ;)

See ya!
Poppu

5 réponses

Anacr0x Messages postés 515 Date d'inscription dimanche 25 mai 2003 Statut Membre Dernière intervention 27 avril 2006 2
25 août 2003 à 18:53
Ben si c'est toi qui programme le client et le serveur, tu n'as qu'as dire que des qu'un programme arrive a se connecté, il envoit son IP au serveur... Tu la réceptionne et l'enregistre... voila c tt con...
0
Poppuledaimadoshi Messages postés 5 Date d'inscription mercredi 30 juillet 2003 Statut Membre Dernière intervention 18 octobre 2004
25 août 2003 à 20:03
C pas si simple que ca. En fait je realise ce programme pour un projet professionnel (je fais mon premier stage).
Le but du programme est d'etre le plus souple possible.J'ai absoluement besoin de récupérer l'ip (ou hostname) du client qui m'envoie un socket UDP, sans que celui-ci ne me l'envoi de façon explicite (j'entends par la dans un message donné). Ce client ne doit envoyé que des message spécifique, et n'utilisera pas mon client perso (le client qui enverra les socket est en parle, et je n'y est pas accès, ni même le droit de donner mon avis dessus).
Je veux juste savoir si ya des fonctions de type GetHostName, pour récupérer le nom host des machines envoyant un socket au serveur, ou pour récupérer l'IP.
Tout doit être automatique.
Voila voila ^^
0
Anacr0x Messages postés 515 Date d'inscription dimanche 25 mai 2003 Statut Membre Dernière intervention 27 avril 2006 2
26 août 2003 à 16:30
Houla... si ct en TCP, je t'auré di d'utilisé les raw socket pour décomposé le packet et récupéré l'IP (je sé pas comment mais je crois que c'est possible)... Par contre en UDP, je crois qu'il n'y a pas l'IP d'inscrit dedans (tu peut toujour essayé de te renseigné, je sui loin d'etre sur de moi)

En bref, je n'ai aucune idée de quoi faire, dsl

Va toujour fair un tour sur :
http://madchat.org/netadm/win.nt.seku/Winsock_Advanced_Programmation.html
On sé jamais, ca pourra peut-etre t'aidé
@+
0
cs_aardman Messages postés 1905 Date d'inscription mercredi 22 janvier 2003 Statut Membre Dernière intervention 17 septembre 2012 3
26 août 2003 à 18:23
Salut,
RecvFrom(..) prend en 5eme argument un pointeur sur une structure sockaddr_in. Cette structure doit normalement contenir l'ip et le port source du paquet une fois le paquet recu.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Poppuledaimadoshi Messages postés 5 Date d'inscription mercredi 30 juillet 2003 Statut Membre Dernière intervention 18 octobre 2004
26 août 2003 à 22:17
Ok, je vous remercie pour votre aide, je vais regarder tout ça et je vous tiendrais au courant, merci encore ;)
0
Rejoignez-nous