我正在使用一款 Android 应用,该应用将实时加速度计数据传输到服务器的指定 IP 地址。我用 C 语言编写了一个在 Linux 上运行的“服务器”,该服务器在 VMware 中运行。
我已连接到运行 VMware Workstation 的 Windows7(主机)创建的热点。
所以我的问题是如何将虚拟机连接到与热点相同的网络,以便我可以让手机和“服务器”程序位于同一网络上并将数据传输到服务器程序?
答案1
对于 VM,您有两个选项,您可以将其配置为使用 NAT 模式或桥接模式(或仅主机,但我们将忽略它)。
在 NAT 模式下,您需要在 VMWare 中设置端口转发,该端口转发针对的是服务器应用程序正在监听的特定端口。完成此操作后,Android 应用程序将使用 Win7 主机的 IP 地址。
在桥接模式下,您的 Linux VM 将在与 Win7 机器相同的子网中获得自己的 IP,并且 Android 应用程序将直接指向该地址。
一个好的开始是确定每个设备的 IP 地址并验证它们是否在同一子网中。例如,家庭网络的一个非常常见的子网是 192.168.1.XXX。在桥接模式下,确保您可以从 Linux 服务器 ping Android 设备,反之亦然。如果您无法做到这一点,请不要运行服务器/应用程序,直到问题得到解决。