从TcpClient获取源IP

Age*_*000 1 c# sockets tcp tcpclient

我需要一个简单的函数,它将 TcpClient 作为参数。假设TcpClient已连接到服务器。该函数应返回客户端设备用于与服务器设备连接的 IP。不是已建立连接的服务器设备的 IP,而是用于与服务器连接的客户端设备的 IP。由于一台设备可以有多个 IP 地址,我想要与服务器连接的特定 IP。

huy*_*itw 5

tcpClient.Client.LocalEndPoint持有该信息。请参阅MSDN 文档

var localEndPoint = tcpClient.Client.LocalEndPoint as IPEndPoint;
var localAddress = localEndPoint.Address;
var localPort = localEndPoint.Port;
Run Code Online (Sandbox Code Playgroud)

如果你想从TCP服务器端获取它,当然应该使用RemoteEndPoint。