我正在编写一个mac应用程序,它将是一个为每个用户的移动设备提供文件的服务器。
这个问题当然是获取服务器主机的实际IP /端口,因为它通常位于家庭网络内部。如果ip / port发生变化,我的计划首先将该信息发送给中间人服务器,然后让我的移动应用程序从那里获取信息。
我已尝试使用https://code.google.com/p/tcmportmapper/ upnp,但即使我知道我的路由器支持upnp,但该库无法按预期工作。
我甚至尝试在我的amazon ec2实例上运行TURN服务器,但我很难确定如何与它通信以获取我需要的信息。
自昨晚以来,我一直在试用谷歌的libjingle,但我很难获得提供的ios示例。
有关完成这项看似艰巨任务的建议吗?
答案 0 :(得分:0)
您应用的端口不会更改。可以通过每小时或任何您想要的时间段将服务器IP发布到Web服务来处理IP更改。
服务器应该运行一个URL http://your-web-service.com/serverip.php?ip=your-updated-ip,然后让你的serverip.php处理其余的(将它放入mySQL数据库或其他东西)
当您的客户端启动时,它应该向您的站点询问IP,然后使用它连接到您的服务器。
这是处理此类事情的一种非常常见的方式。