繁体   English   中英

如何在客户端程序中指定服务器IP地址?

[英]How do I specify Server Ip address in my Client program?

我当前正在使用TCP / IP套接字,我的客户端控制台程序必须与服务器即我的PC连接,如果客户端程序中的目标被指定为本地主机,则可以正常工作,我需要做的是要通过互联网将客户端与服务器连接起来,我在http://www.whatismyip.com/上查找了我的IP地址,并尝试了一下,但是由于我认为它是网络接口IP地址而无法正常工作,然后我将客户端程序中的目标IP地址专门更改为我希望它作为服务器的计算机的地址,但这也没有用。 这是我的代码。

Ip = (IPAddress.Parse("192.168.1.4"));

MyClient.Connect(Ip,6000);
GetStream = MyClient.GetStream();
Console.WriteLine("CONNECTED TO SERVER");
Read = new BinaryReader(GetStream);
Write = new BinaryWriter(GetStream);

您至少应该注意两件事:

1.要从Internet(从公共地址(通过whatismyip.com获得的地址)中访问Internet)访问计算机,您需要打开路由器的端口(6000),并告诉路由器应该转发传入连接的IP地址。 您可以指定特定的端口,也可以放置DMZ主机,将所有传入的连接路由到该主机/ PC。 阅读路由器手册以了解操作方法。

2.您不能从路由器(内部网)的内部访问公用IP,如果要连接到公用IP,则需要位于另一个网络中。

如果您每次关闭路由器电源后都具有动态IP(默认值),那么该IP很可能会更改,那么您需要通过whatismyip.com进行调查,以了解已分配了哪个IP。 您可以连接到dyndns.org并询问主机名myhost.mydomain.com (.es,.fr等),然后在路由器中告诉DDNS(动态DNS)在IP每次更改时更新该主机。 然后,在客户端程序中,连接到MyClient.Connect("myhost.mydomain.com", 6000);

希望我能很好地解释自己,如果您有任何问题让我知道。

暂无
暂无

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

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