繁体   English   中英

转发IP服务器时如何连接到TCP / IP客户端

[英]HOw to connect to a TCP/IP client while haveing forwarded IP server

我有一台通过动态IP连接到Internet的计算机。 因此,我无法通过TCP / IP连接到我编写的C#的TCP / IP服务器程序,但是通过静态IP可以很好地工作。 我决定在DuckDNS.Org和http://freedns.afraid.org/上使用IP转发 DNS服务,以便能够通过以下网址对我的计算机执行ping操作: test.mooo.com

现在可以通过该Web子域ping我的计算机了,但是我的问题是:

如何修改最初只使用IP来连接到我的计算机的客户端程序 ,该程序在特定端口上运行服务器以使用网址连接到我的计算机?

我试过了:

 client = new TcpClient("test.mooo.com", (int)Activity1.settingObj.port);

但这行不通。 提前致谢。 我正在使用C#,但是我想这是一般的TCP / IP问题。

Ping仅验证ICMP。 那不是TCP。 即使没有其他允许,许多防火墙都设置为响应或通过ICMP。

您的PC可能位于NAT防火墙/网关的后面。 如果您使用任何类型的DSL或电缆路由器的Linksys / Netgear类型,则需要检查其是否支持端口转发。 通常,您可以设置规则以将端口转发到局域网上的单个私有IP地址。

还要检查PC本身的防火墙。 确认Windows防火墙已禁用,或添加端口例外。

在极端情况下,某些ISP也会阻止传入连接,但这通常并非如此。

经过许多努力,我们有两种方法可以实现它。 首先,当我们能够设置路由器设置来为我们提供静态IP时,在许多情况下这是不可能的。 第二种方法是使用为我们提供静态“专用” IP的VPN服务。 这些服务不是免费的,并且为此设施收取月租费。 但是,它起作用。 我尝试了http://vpnstaticip.com/,他们给出了非常有限的试用期来测试vpn。 我已经测试过,结果很不错,它们使IP静态。 尽管它很昂贵,但它对我有用,我需要查看使用它的充分理由。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM