2016-02-28 1 views
1

J'ai besoin d'une fonction simple qui prend en paramètre un TcpClient. On suppose que le TcpClient est connecté au serveur. La fonction doit renvoyer l'adresse IP utilisée par le périphérique client pour la connexion avec le périphérique serveur. Pas l'adresse IP du périphérique serveur avec lequel la connexion a été établie mais l'adresse IP du périphérique client utilisé pour la connexion avec le serveur. Puisqu'un périphérique peut avoir plus d'une adresse IP, je veux l'adresse IP spécifique qui est connectée au serveur.Obtenir l'adresse IP source de TcpClient

+1

Et qu'avez-vous essayé de trouver dans la documentation? La propriété LocalEndpoint crie "Je pourrais l'être" du nom, ou? – TomTom

Répondre

1

tcpClient.Client.LocalEndPoint contient cette information. Voir MSDN documentation.

var localEndPoint = tcpClient.Client.LocalEndPoint as IPEndPoint; 
var localAddress = localEndPoint.Address; 
var localPort = localEndPoint.Port; 

Si vous voulez l'obtenir du côté serveur TCP, vous devez utiliser RemoteEndPoint bien sûr.