我有一个编码为C的服务器。在accept()
之后,我想从sockaddr获取IP地址。 但我得到的IP地址是来自我所在的VM的:10.0.x.x,而不是互联网IP。虚拟机托管在具有真实IP的计算机上,这是我想得到的。如何从struct sockaddr(不是路由器IP)获得Internet IP?
端口转发已完成。 示例:我有两台计算机运行相同的VM,因此它们具有相同的VM本地IP(10.0.x.x)。第一台VM启动服务器,第二台使用telnet连接使用真实服务器的IP(147.x.x.x)。连接建立正确,但我在sockaddr中获得的IP是虚拟机。
你知道如何解决它吗?
您是否试过从远程网络上的机器连接? – 2012-03-28 09:26:42