2011-08-19 76 views
0

我试图通过端口“xxxx”获取数据“www.example.com”,我的IP地址是“192.168.10.6”。服务器必须通过端口“yyyy”将响应发送到我的应用程序。我向服务器发送了一个请求,但服务器将响应发送到ip“203.146.0.9”端口“yyyy”。服务器将日志显示为“连接被203.146.0.9:yyyy(端口)拒绝”。iPhone中的端口访问

我是网络编程的初学者。据我所知,服务器将响应发送到我的DNS /路由器。不接受该端口上的通信。

我的iPhone应用程序侦听设备的端口,而不是dns端口。如何让我的应用程序监听DNS端口,或者如何让DNS将响应从特定服务器转发到本地iP。 我经历了一些帖子,一些指定了“Bonjour”。但我不知道这一点。任何人都可以通过指出这些例子或文档来帮助我解决这个问题吗?

+0

为什么服务器必须指定一个端口发回? – ader

+0

其PACS服务器。它为安全目的连接对等模型。它的通信发送和接收都是通过端口发生的。 –

回答

0

简短的回答:你不能 龙答:

当你通过你的iPhone连接到服务器,手机将请求转发到通过3G或GPRS或其他一些协议的运营商的路由器,它转发连接到目标服务器。在接收端,服务器看到路由器的IP地址,而不是电话。实际上,手机的IP地址只存在于运营商的路由器上,而不存在于互联网上的其他地方。您无法从iPhone创建公共服务器(只能在本地WiFi连接上,或者运营商将电话分配给公共可路由IP地址)。因此,您无法从服务器向某个iPhone发起连接。如果您想要双向通信,则可以使用iPhone连接到服务器,并在服务器端使用该通道将数据发送到iPhone。 NAT可能是另一种解决方案,但再一次,它需要您的运营商提供特殊条款,这可能是您的选择,但通常不是您的客户使用iPhone。

+0

感谢您的回复。现在我正在坚持无线连接。我看到一些应用程序通过无线连接端口获取数据。 –