windows下转发虚拟机中的服务

PC C:\Users\leejoker> netsh interface portproxy add v4tov4 listenport=8080 listenaddress=10.10.1.233 connectport=8080 connectaddress=192.168.0.233

这个命令即可实现将虚拟机中的服务映射出去。

  • listenport:物理机监听端口,其他局域网内的机器通过这个端口访问虚拟机中的服务
  • listenaddress:物理机监听的地址,本机ip
  • connectport:虚拟机中服务暴露给本机的端口
  • connect address:虚拟机映射到本机的ip地址

其他命令参考

  1. 查看所有端口转发

    PC C:\Users\leejoker> netsh interface portproxy show all
    
  2. 删除端口转发配置(删除时需要增加类型参数,例如v4tov4)

    PC C:\Users\leejoker> netsh interface portproxy delete v4tov4 listenport=8080 listenaddress=10.10.1.233
    
  3. 清空端口转发配置

    PC C:\Users\leejoker> netsh interface portproxy reset
    

结语

这个功能在windows里还是很好用的,尤其是需要在虚拟机里跑服务,你需要透传给同事进行测试的时候XD

如果你不知道怎么把虚拟机里的服务映射到物理机,那么你可以去百度,或者用vagrant构建虚拟机。