我正在尝试测试在 Windows 7 中运行的应用程序,我想将它生成的数据包发送到本地机器上的服务器虚拟机(我正在使用 VirtualBox),这将作为数据包真正通过互联网发送到远程服务器的模拟。
在某些情况下我需要检查数据包的正确性。在 Windows 上有没有办法获取应用程序生成的数据包,并将其传递给另一个进程(即我的虚拟机),而不是将其传递给我的路由器?
我不想更改应用程序上的任何代码,而是希望找到外部解决方案。Windows 7 有这样的解决方案吗?
答案1
如果您可以使用与单个 IP 地址交互的应用程序进行测试,那么让它直接与 VM IP 地址通信,Windows 将自动路由此流量,而无需任何基于应用程序的复杂路由。
如果您想模拟多个服务器,最好的方法是让多个虚拟机在不同的 IP 地址上运行,然后 Windows 将根据应用程序正在通信的 IP 路由到正确的虚拟机。
您甚至可以在单个 VM 上设置多个 IP 地址,以“某种方式”模拟多个目的地场景,但使用单个 VM。