Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Obtenir adresse Ip, programme de chat [ Windows / Réseau & Internet ] (djipey)

lundi 11 août 2008 à 21:41:42 | Obtenir adresse Ip, programme de chat

djipey

Bonsoir!! voila je code un programme de chat avec Qt, qui se sert de l'adresse Ip de l'utilisateur pour héberger le serveur. Une fois qu'un utilisateur a crée un réseau, les autres peuvent se connecter au chat, mais il faut qu'ils connaissent l'adresse IP du serveur. Je voudrais rendre le chat accessible par tous, et ne pas laisser le choix de l'adresse IP au client. Aussi j'ai pensé à une solution: -dés que le client se connecte au chat, on enregistre son adresse IP -si aucun serveur n'existe parmi les adresses que connait le programme, on crée un serveur, sinon on se connecte au serveur existant. J'aurais donc deux questions à vous soumettre: -comment vérifier si un serveur existe déja -comment obtenir l'adresse IP du client qui se connecte? je vous serai reconnaissant pour toute l'aide que vous pourrez m'apporter.

mardi 12 août 2008 à 09:11:13 | Re : Obtenir adresse Ip, programme de chat

SebLinck

Salut,
As-tu déjà fait de la programmation réseaux ?

Cordialement,
Sébastien.

mardi 12 août 2008 à 09:14:01 | Re : Obtenir adresse Ip, programme de chat

djipey

Pas des masses. Je programme en c/c++ depuis un certain temps maintenant, mais le réseau c'est la première fois.
Aurais tu une idée sur la question?

mardi 12 août 2008 à 09:44:03 | Re : Obtenir adresse Ip, programme de chat

SebLinck

(Re)Salut,

Effectivement, j'ai une petite idée de comment faire...
J'ai eu la même idée que toi pour la mise en place d'un Chat:
(Créer le serveur si aucun serveur n'est actif dans le liste des IP connue).
mais il se pose un problème, lorsque qu'aucun des serveur susceptibles
de recevoir des connexions n'est actif, tous les clients qui se lancent créent
un serveur de leur côté et n'ont aucun moyen de communiquer leur adresse IP,
tu imagines la suite ...

Pour tes question maintenant:
1) comment savoir si un serveur est actif:
Il faut tenter de se connecter, ou regarder si le port que tu utilise est ouvert

2) Comment connaître l'adresse du client qui se connecte:
Dans l'API Socket, la fonction accepte va stoker cette adresse dans la structure
passée en paramètre (second paramètre ):
struct sockaddr * addr
voilà, bonne continuation..
(je serait très motiver de tester ton programme, voir de le porter sous linux)

Cordialement,
Sébastien.

mardi 12 août 2008 à 09:54:11 | Re : Obtenir adresse Ip, programme de chat

djipey

"mais il se pose un problème, lorsque qu'aucun des serveur susceptibles
de recevoir des connexions n'est actif, tous les clients qui se lancent créent
un serveur de leur côté et n'ont aucun moyen de communiquer leur adresse IP,
tu imagines la suite ... " (je n'ai pas trouvé les citations)

Il est possible que certaines choses m'échappent, je ne l'ai pas fait, mais si aucun serveur n'est actif, le premier client qui se connecte crée un serveur.
Ceux qui suivent, en faisant leurs vérifications, vont tomber dessus et se connecter, non?

Mais j'ai trouvé une autre solution qui me parait bien:
-je crée un site internet qui récupére l'IP du client qui se connecte dans une string;
-dés que le client se connecte, il va sur ce site, vérifie s'il y a une adresse, voit s'il peut s'y connecter, et sinon efface cette adresse et met la sienne à sa place.

cette solution a le mérite d'etre moins lourde, mais je ne sais pas créer un site internet qui pourrait me faire ça.
Si vous pouviez m'indiquer quelques pistes...

cordialement, djipey.

mardi 12 août 2008 à 10:18:25 | Re : Obtenir adresse Ip, programme de chat

SebLinck

(Re) Salut,
Et bien tu vas vite, je ne voulais pas te donner de solution toute faite...
je pense qu'une base de donnée serait plus approprié pour stocker tes adresses.


Cordialement,
Sébastien.

mardi 12 août 2008 à 14:41:49 | Re : Obtenir adresse Ip, programme de chat

aardman

Membre Club
Salut,
En même temp si tu disposes d'un serveur sur le net, autant y faire tourner un serveur entierement dedié a ton prog plutot que de stocker des adresses ip, tu pourras t'y connecter depuis n'importe quel client (alors qu'un client qui cherche a se connecter a un autre client qui fait office de serveur risque d'avoir des problemes si ce dernier est mal configuré), et les clients pourrons s'y connecter et s'y deconnecter librement (alors qu'un client qui fait office de serveur sera obligé de rester jusqu'a ce que le dernier client connecté parte).


mardi 12 août 2008 à 14:47:37 | Re : Obtenir adresse Ip, programme de chat

djipey

Oui ce que tu dis est très juste, j'y avais pensé, et je me suis dit que si le clint/serveur partait, ts les clients se déconnecteraient, mais que le premier qui referait une connexion hébérgerait le nouveau serveur. Pas top je le reconnais.

Ce que tu dis m'intéresse.
Mais le réseau je ne gére pas trop. Avoir un serveur sur le net ça nécessite quoi?
De quelle maniére procéder?

mercredi 10 septembre 2008 à 11:24:12 | Re : Obtenir adresse Ip, programme de chat

kiitos

#include <winsock2.h>
#pragma comment(lib, "ws2_32.lib")
#include <stdio.h>
#include <stdlib.h>

int main()
{
WSADATA wsaData;
char host[100];
HOSTENT* ip_resolue;
SOCKADDR_IN valip;
int compteur;

WSAStartup(MAKEWORD(2, 0), &wsaData);

gethostname(host,sizeof(host));

ip_resolue = gethostbyname(host);

if (ip_resolue != NULL)
{
for (compteur = 0; ip_resolue->h_addr_list[compteur+1] != NULL; compteur++) {}

memcpy(&valip.sin_addr.s_addr, ip_resolue->h_addr_list[compteur], ip_resolue->h_length);

printf("Votre ip vaut : %s \n",inet_ntoa(valip.sin_addr));
}
getch();
}

Tient cadeau !



Cette discussion est classé dans : programme, serveur, ip, adresse, chat


Répondre à ce message

Sujets en rapport avec ce message

Récupération d'adresse IP dans un programme [ par Jerems59 ] BonjourJe souhaiterai récupérer mon adresse IP lorsque je me connecte sur internet (connexion 56k) Je voudrai utilisé ensuite cette adresse IP dans un serveur DNS [ par dominoman ] Je dois créer un serveur DNS qui reçoit l'adresse IP de ses clients et qui tient à jour une page html qui affiche au client son nom et son adresse ip. Récupérer l'adresse IP du client qui se connecte à mon serveur [ par HolyDev ] Bonjour, bon alor j'utilise et VS C++Lorsqu'un client se connecte à mon serveur j'aimerai afficher l'adresse IP de celui-ci après le message FD_ACCEP Recuperer ip a partir d'une adresse [ par _Jonathan ] Je cherche a recuperer l'ip d'un serveur (ftp ou http, n'importe)En fait, c'est pour un chat, le client trouve l'ip du serveur(cad mon pc) grace a l'a Mémoriser l'adresse IP [ par bydouille ] Salut,Je recherche un tout petit programme :Ce que je voudrais, c'es un petit exécutable sous windows qui fasse les choses suivantes :- Qu'il relève m serveur web HTML : indentification unique d'un client [ par steph12358 ] BonjourDans le cadre u développement d'un petit serveur HTML propriétaire je cherche à identifier de manière unique chaque client connecté pour gérer Meilleur moyen pour chat multi client. [ par deck_bsd ] Yop à tous,Voila , je suis en train de dévelloper un chat multi client pour le réseaux chez moi. Mais voila , en codant le serveur , je me trouve à un Lag-jeu online [ par coucou02 ] Bonjours a tous, j'explique ce qui ce passe, e joue a un jeu que je suis fan, dans lequel je suis très fort.mais a chaque fois que je joue contre cert Adresse Ip avec routeur [ par tibob51 ] Bonjour tous,J'ai récement programmé un chat pour deux personne (serveur-client).Quand l'utilisateur du serveur se connecte son adresse IP lui est  af [Linux] Obtenir l'adresse IP Local [C] [ par ZedMaTrix ] Hello à tous !! Voilà, il me semble que j'avais posté, je sais plus ( je retrouve plus le poste )... <img src="http://www.sited


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,312 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.