windows netsh设置代理服务器/端口转发

前言

最近项目使用git做版本控制,但公司内部网络不能上外网。想想现在git版本也是很火热的版本管理,所以就自己在虚拟机中搭建了gitlab。由于IP资源限制,虚拟机和物理主机是NAT网络关系。那么问题来了其它IP如何访问NAT下的虚拟机呢?

正文

其实就是把虚拟机的端口映射到物理主机的端口上,关系如下图。
windows netsh设置代理服务器/端口转发_第1张图片

linux/unix中使用ssh命令,而windows中也有类似的命令netsh。客户端链接物理主机的“服务端口a”和“服务端口b”从而访问虚拟机中的服务。

命令如下

可以查看存在的转发
netsh interface portproxy show all

添加一个IPV4到IPV4的端口映射
netsh interface portproxy add v4tov4 listenport=22 connectaddress=ip connectport=port
删除指定转发端口
netsh interface portproxy delete v4tov4 listenport=port

例子

  • 假定需要通过192.168.1.8的14941端口连接192.168.1.118的22端口,则需要在192.168.1.8主机的命令行输入如下语句
  • 如果已经安装IPV6,该条语可以不需要
    netsh interface ipv6 install
  • 操作系统开启了主机防火墙,需要放行TCP 14941的入站连接
    netsh interface portproxy add v4tov4 listenport=14941 connectaddress=192.168.1.118 connectport=22
  • 取消上面配置的端口转发,可以用如下语句:
    netsh interface portproxy delete v4tov4 listenport=14941
  • 如果想查看已经配置了哪些端口转发,可以用如下语句:
    netsh interface portproxy show v4tov4

参考

实战VMware的三种网络模式

公众号二维码

你可能感兴趣的:(工作总结)