Accueil > Forum > > > > Adresse IP d'un TcpClient
Adresse IP d'un TcpClient
mercredi 14 juin 2006 à 15:38:55 |
Adresse IP d'un TcpClient

Thufenn
|
Bonjour tout le monde,
Voilà mon pb.
j'ai un systeme client-serveur dans lequel mes clients envoie des ordres d'executions (avec une connexion TCP), le serveur stocks les demandes et les traitent au fur et à mesure. Quand le traitement est fini, je voudrais retourner un petit message (style net send) au pc qui a fait la demande que le serveur viens de traiter. Bien evidement le contexte fait que je ne peux pas conserver la connexion TCP lors du traitement des demandes.Donc connaissez-vous un moyen de connaitre l'adresse IP lors de la reception des demandes du client ?
voici un extrait simplifié du code serveur :
MyTCPListener = new TcpListener(Dns.Resolve(Dns.GetHostName()).AddressList[0], PortServeur);
MyTCPListener.Start();
while (!StopListen)
{
//Attente de connection...
TcpClient client = MyTCPListener.AcceptTcpClient();
//Création du flux de données sous-jacent pour l'accès au réseau.
NetworkStream ns = client.GetStream();
try {
//Reception d'un message
byte[] bytemsg = new byte[1024];
int bytesRead = ns.Read(bytemsg, 0, bytemsg.Length);
string msg =Encoding.ASCII.GetString(bytemsg,0,bytesRead);
TamponMsg.Add(Msg);
//Fin de la Connection
ns.Close();
client.Close();
} catch (Exception e) {
MessageBox.Show(e.ToString());
}
}
D'avance merci
|
|
mercredi 14 juin 2006 à 15:43:36 |
Re : Adresse IP d'un TcpClient

woot6768
|
Salut, Euh comment dire... Simplement... Peu être illisible? Oui ça me paraît bien comme mot.
_________________________________________________________________________ Woot Alias Wouter Tjon.
|
|
mercredi 14 juin 2006 à 15:47:27 |
Re : Adresse IP d'un TcpClient

Thufenn
|
Réponse acceptée !
désolé mais j'ai mis des saut de ligne dans mon message et il sont pas passé
|
|
mercredi 14 juin 2006 à 15:49:06 |
Re : Adresse IP d'un TcpClient

fcolo
|
Réponse acceptée !
L'idée qui me vient est que plutot d'utiliser une ArrayList pour le TamponMsg, fait plutot un dictionnaire dans lequel la clé serait ton message et pour la valeur l'IP de l'émetteur. Ensuite, lorsque tu traitera le message, tu récupèrera en plus l'IP. Par contre, il faudra que l'emmeteur initial (qui sera ensuite le recepteur pour le message de confirmation) ait en internet un serveur TCP pour réceptionner cette réponse, donc un port d'écoute, donc il faudra aussi connaitre le port. Donc faire une structure IP/Port que tu sauvera dans le dictionnaire plutot que juste l'IP.
Je sais pas si ca peut t'aider et si je dis pas de connerie surtout ...
f.colo
|
|
mercredi 14 juin 2006 à 15:49:30 |
Re : Adresse IP d'un TcpClient

woot6768
|
Si tu veu que quelqu'un te réponde, il va faloir que tu remette ton message en forme je pense;) Parce-que perso j'ai même pas envie de lire ton morceau de code. +
_________________________________________________________________________ Woot Alias Wouter Tjon.
|
|
mercredi 14 juin 2006 à 16:04:33 |
Re : Adresse IP d'un TcpClient

Thufenn
|
Réponse acceptée !
Merci F.colo pour ta réponse. Ce que j'ai mis n'ai qu'une version très très simplifié de ce que j'utilise. Les messages etant un peu complexe la structure utilisé n'est pas une arraylist de string mais une arraylist d'objet dans lequel il y a de quoi stocker un adresse IP.
Mais mon soucis c'est que je ne sais pas comment obtenir IP à partir du TCPClient???
Pour ce qui est de l'envoie de la reponse vue que je compte utilise 'Net Send' il y aura pas besoin de serveur ni de port pour le recevoir (pour info net send fonctionne un 'peu' comme un MessageBox à qui tu donne le nom ou l'adresse ip de l'ordi sur lequel tu veux qu'il s'affiche après c'est windows qui gère)
|
|
mercredi 14 juin 2006 à 16:51:55 |
Re : Adresse IP d'un TcpClient

fcolo
|
Réponse acceptée !
Avec un truc comme ca:
IPAddress ip = ((IPEndPoint)client.Client.RemoteEndPoint).Address;
J'ai pas tester, juste regarder ce que propose visual studio. Ca me semblait bien c'eest tout :)
f.colo
|
|
jeudi 15 juin 2006 à 10:25:50 |
Re : Adresse IP d'un TcpClient

Thufenn
|
Réponse acceptée !
Le soucis c'est que la propriété client de l'objet TCPClient est une propriété protégée, donc je n'y ai pas accès (erreur CS0122)
Neanmoins la piste est assez interresante puisque en fait il semblerait que le seul endroit ou je puisse avoir accès à l'adresse IP soit au niveau du socket. Je vais donc essayer de remplacer :
TcpClient client = MyTCPListener.AcceptTcpClient();
par quelque chose du genre :
Socket MySocket = MyTCPListener.AcceptSocket();
après il faudra aussi modifier la reception des messages.
Merci F.colo
|
|
Cette discussion est classée dans : serveur, client, ip, adresse, bytemsg
Répondre à ce message
Sujets en rapport avec ce message
Récupérer l'adresse IP [ par thebigboss ]
Bonjour,je voudrais savoir comment faire pour récupérer son adresse IP et celle d'un message posté sur un port.Je m'explique, je suis archi nul en rés
client / serveur = > avec adresse ip public [ par 10demon10 ]
Bonjour à tousVoila j'ai modifié une source de client / serveur trouver sur codes sources et tous fonctionne correctement (ajout de plusieurs clients
optenir l'adresse publique de sa machine c# [ par 10demon10 ]
Bonjour à tous Voila j'ai une nouvelle problématique sur mes petites socket, j'ai no-ip de configurer comme il faut ac mon modem-routeur (les ports et
Adresse IP réel [ par jgthibault ]
Bonjour, je voudrais savoir s'il est possible d'avoir l'adresse ip réel (pas l'adresse local) d'un ordinateur.Explication :Je veux faire un petit jeux
CLient/serveur séparés par un proxy [ par thebigboss ]
Salut,je suis toujours en tran de me battre avec mon MSN like. J'ai un serveur et un client. Le client se connecte au serveur via un port et l'IP du s
Socket URL [ par nicompx ]
Bonjour, Je veux ouvrire un socket mais je ne connais pas l'adresse IP du serveur et bien son URL.Comment passer l'URL à la place de l'adresse IP.
problème connexions externe client/serveur [ par azuss14 ]
J'explique mon problème, je souhaite créer une connexion client/serveur, ceci fonctionne très bien en local, les applications échangeant un flux grâce
Chat client serveur c# [ par didygwatinik ]
Salut tout le monde Je suis actuellement en train de faire une application chat en client serveur. Mon programme est séparée en 3 couches : serveur, i
Application chat client / serveur [ par didygwatinik ]
Salut, Je suis en train de faire un chat en c#, pour l'instant tout fonctionne, du coup j'aurai aimé ajouté une fonctionnalité : les discussions priv
Connexion Client/serveur en C# vers C [ par rebelattack ]
Bonjour a tous, Je souhaiterais faire un client en visual sous forme d'une fentre et qui soit relier a un serveur qui lui est en C. Cela est t-il poss
Livres en rapport
|
Derniers Blogs
TECHDAYS PARIS 2010 : CONNECTEZ VOS DONNéES à SHAREPOINT 2010 AVEC LES BUSINESS CONNECTIVITY SERVICESTECHDAYS PARIS 2010 : CONNECTEZ VOS DONNéES à SHAREPOINT 2010 AVEC LES BUSINESS CONNECTIVITY SERVICES par ROMELARD Fabrice
Animé par: Gaetan Bouveret et Julien Chomarat Business Connectivity Services (BCS) est dans SharePoint 2010 la version 2 de Business Data Catalog (BDC dans SharePoint 2007). Il s'agit de la solution permettant de visualiser des données provenan...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice [DIVERS] SUIVRE VOS SéRIES PRéFéRéS SUR LA TOILE[DIVERS] SUIVRE VOS SéRIES PRéFéRéS SUR LA TOILE par orion
Comme de nombreux geek, je suis un grand amateur de série TV et je rate régulièrement des épisodes de mes séries préférés. Une solution s'offre à vous avec ce merveilleux site : Tv Gorge - www.tvgorge.com Moteur de recherche à l'appui, vous pouvez ...
Cliquez pour lire la suite de l'article par orion TECHDAYS PARIS 2010 : LA BI DANS SHAREPOINT 2010TECHDAYS PARIS 2010 : LA BI DANS SHAREPOINT 2010 par ROMELARD Fabrice
Animé par: Vincent Bellet et Baptiste Giraudier La BI dans SharePoint 2010, Les nouveaux services d'application dans SP2010 et SQL Server Reporting services 2008 R2. La BI dans SharePoint est généralisée pour tous afin de permettre à tous les coll...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice TECHDAYS PARIS 2010 : PLAN DE MIGRATION VERS SHAREPOINT 2010TECHDAYS PARIS 2010 : PLAN DE MIGRATION VERS SHAREPOINT 2010 par ROMELARD Fabrice
Animé par: Arnault Nouvel et Antoine Dongois Le processus à prendre : Apprendre (découvrir la plateforme) Préparer (documenter l'historique et choisir la méthode de MAJ) Test (Test de MAJ) Implémenter (Effectuer la MAJ) Valid...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice
Logiciels
DB-MAIN (9.1.0)DB-MAIN (9.1.0)DB-MAIN is a data-modeling and data-architecture tool. It is designed to help developers and anal... Cliquez pour télécharger DB-MAIN Xilisoft DPG Convertisseur (5.1.37.0120)XILISOFT DPG CONVERTISSEUR (5.1.37.0120)Xilisoft DPG Convertisseur offre aux fans de Nintendo DS une bonne solution leur permettant de dé... Cliquez pour télécharger Xilisoft DPG Convertisseur GraphicsGale (2.01.01)GRAPHICSGALE (2.01.01)GraphicsGale est un logiciel de PixelArt avec de nombreuse fonctionnalités permettant de réalisé ... Cliquez pour télécharger GraphicsGale Architecte 3D (Platinum 2010)ARCHITECTE 3D (PLATINUM 2010)Architecte 3D Platinium vous permet de concevoir facilement les plans votre future maison, de l'é... Cliquez pour télécharger Architecte 3D TeamViewer 5 (TeamViewer 5)TEAMVIEWER 5 (TEAMVIEWER 5)Dépanner un ami,expliquer une manipulation devient un jeu d'enfant.
Prise en main d'un autre ord... Cliquez pour télécharger TeamViewer 5
|