Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/323.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 使用套接字在internet上发送数据_C#_Sockets - Fatal编程技术网

C# 使用套接字在internet上发送数据

C# 使用套接字在internet上发送数据,c#,sockets,C#,Sockets,当我在局域网上使用C#on C#中的套接字发送数据时,一切正常,但如何通过internet发送数据呢。如何在我创建的服务器使用来自我计算机的ip(专用ip)时发送 有人能建议我如何做到这一点吗?基本上,我应该能够在互联网上的任何地方发送数据,而不仅仅是在局域网上。现在大多数计算机之间都有一个带防火墙的路由器。路由器,通过安全设计,停止直接访问其背后的计算机及其本地网络 是的,你要么必须 将路由器配置为通过特定端口映射到您的一台计算机 或者,更常见的方法是使用中央集线器,即Web服务作为中介。这样

当我在局域网上使用C#on C#中的套接字发送数据时,一切正常,但如何通过internet发送数据呢。如何在我创建的服务器使用来自我计算机的ip(专用ip)时发送


有人能建议我如何做到这一点吗?基本上,我应该能够在互联网上的任何地方发送数据,而不仅仅是在局域网上。

现在大多数计算机之间都有一个带防火墙的路由器。路由器,通过安全设计,停止直接访问其背后的计算机及其本地网络

是的,你要么必须

  • 将路由器配置为通过特定端口映射到您的一台计算机

  • 或者,更常见的方法是使用中央集线器,即Web服务作为中介。这样就不需要防火墙,因为两台计算机只连接一条路(出口)。您可以使用wcf服务、Web api或许多技术来实现这一点,通常您会使用数据库来存储游戏状态,从而使其持久化


  • 如果我理解正确,您正在尝试让客户端连接到本地tcp/ip服务器,您将需要通过一个端口从路由器映射到您的pc。internet上有很多关于这方面的信息。您的意思是我应该研究NAT?。我的意思是,我想连接两台计算机并互相发送数据。用一种简单的方式,我在下国际象棋。我想在两台不同的电脑上玩。