c#socket函数中获取通讯IP和通讯端口
时间: 2024-10-09 14:10:34 浏览: 58
在 C# 中,Socket 类用于网络通信,它通常不会直接提供获取对方 IP 和端口的方法,因为这些信息需要在网络连接建立后通过 Socket 的属性或方法来获取。当你创建一个 Socket 对象并连接到远程服务器时,你可以使用以下步骤:
```csharp
using System.Net;
using System.Net.Sockets;
// 创建一个 TCP 客户端 socket
TcpClient client = new TcpClient();
try
{
// 连接到服务器
IPEndPoint remoteEP = new IPEndPoint(IPAddress.Parse("服务器地址"), 端口号); // 用实际的服务器 IP 和端口号替换这里
client.Connect(remoteEP);
// 获取本地连接的 IP 地址和端口
IPEndPoint localEP = (IPEndPoint)client.Client.LocalEndPoint;
string localIP = localEP.Address.ToString();
int localPort = localEP.Port;
Console.WriteLine($"Local IP: {localIP}, Port: {localPort}");
// 关闭连接
client.Close();
}
catch (Exception ex)
{
Console.WriteLine($"Error: {ex.Message}");
}
```
在这里,`localEP.Address.ToString()` 返回的是本地 IP,而 `localEP.Port` 是连接使用的端口。
阅读全文