运行时服务器的IP地址

时间:2012-06-27 08:04:12

标签: c

我在C中开发了一个客户端任务,在C中开发了一个服务器任务。客户端需要服务器IP地址才能连接到服务器。问题是:我事先不知道哪台机器将运行客户端,哪台机器将运行服务器,所以我只能在运行时知道服务器的IP地址 我的问题:如何在运行时客户端知道服务器的IP地址?

4 个答案:

答案 0 :(得分:3)

正如评论者所说,您可能只使用DNS。如果由于某种原因无法获得DNS条目,或者服务器和客户端将在同一网络上运行,您可能会考虑使用某种mDNS,因为您不需要使用DNS-Server进行记录并运行。访问http://en.wikipedia.org/wiki/MDNS#Multicast_DNS了解简介

答案 1 :(得分:0)

使用客户端和服务器提前知道的第三方代理服务器。

只需在具有已知IP地址的任何地方设置服务器即可。 (使用云服务器是一种便宜且快速的选择。)

当服务器启动时,它会将其IP地址发送到代理服务器,当客户端启动时,它会查询代理服务器以获取要连接的服务器。

当然你必须为此编写一个协议,但它可以非常简单。

答案 2 :(得分:0)

首先,您必须记住要搜索的网络有多大? 如果它对您来说有点问题,那么您可以使用它真正有用的DNS .....

答案 3 :(得分:0)

如果您的服务器和客户端将在本地网络上运行,请使用这个漂亮的MAC地址:FF-FF-FF-FF-FF-FF ...;)但如果名称保持不变,DNS将是最好用的相同。