如何在两台计算机之间建立TCP通信

本文关键字:之间 计算机 建立 TCP 通信 两台 | 更新日期: 2023-09-27 17:50:25

我试图使用TCP协议与System.Net.Sockets库让一台计算机发送字符串到另一台计算机。这是我的主机代码的一部分。侦听器对象应该用客户端IP地址还是主机IP地址声明(就像下面的代码一样)?

IPAddress ipAddr = Dns.GetHostEntry(Dns.GetHostName()).AddressList[0]; //Automatically retrieves IPAddress. 
int port = 135; //specify port number.
TcpListener listener = new TcpListener(ipAddr, port);

还有,这是我的一段客户端代码。我应该使用哪个构造函数?

TcpClient client = new TcpClient();

如何在两台计算机之间建立TCP通信

侦听器对象监听主机的 IP。构造函数将其作为参数,因为你的计算机上可能有多个IP,它不知道你想监听哪一个。

就客户端而言,您可以选择您想要的构造函数。通过使用参数化的构造函数,您可以立即连接,而默认情况下需要调用Connect的一个重载。这主要取决于您是否想在实例化时进行连接。

下面是一个TCP服务器示例代码:

int port = 135; //specify port number.
TcpListener listener = new TcpListener(IPAddress.Any, port);
// Start listening for client requests
listen.Start();

然后您可以选择使用轮询方法来创建一个简单的同步TCP服务器。

客户机(PowerShell):

$Address = [System.Net.Dns]::GetHostAddresses("<hostName>")
$Port = 135
$client = New-Object System.Net.Sorckets.TcpClient
$Client.Connect($Address, $Port)