V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
hhxx6
V2EX  ›  问与答

如何让虚拟机通过物理机上安装的代理软件上网呢

  •  
  •   hhxx6 · 2019-07-10 09:43:10 +08:00 · 21400 次点击
    这是一个创建于 1962 天前的主题,其中的信息可能已经有所发展或是发生改变。
    物理机是安装了一个代理软件,端口为 127.0.0.1:8080


    试了 proxycap 好像不行,就是在 proxycap 里面设置代理 127.0.0.1:8080,然后添加 rules 让 VMware 的 vmnat.exe 走这个代理
    19 条回复    2021-04-04 09:52:31 +08:00
    titanium98118
        1
    titanium98118  
       2019-07-10 10:24:43 +08:00
    127.0.0.1 表示本机
    虚拟机上设置代理 127.0.0.1,是指连接到虚拟机本机上
    所以,物理机上监听 0.0.0.0 是最简单的方法,虚拟机设置代理时填上物理机的 IP
    cephei
        2
    cephei  
       2019-07-10 10:37:16 +08:00
    proxifier 可以代理 vmnat.exe
    Mervyn
        3
    Mervyn  
       2019-07-10 10:45:39 +08:00
    虚拟机 网络代理 设置 wmware 虚拟的网关 即可。 虚拟的网关其实就是物理机的 127.0.0.1
    hhxx6
        4
    hhxx6  
    OP
       2019-07-10 10:46:10 +08:00
    @titanium98118
    试了一下,好像还是不行
    请问你的意思是不是
    物理机代理软件设置监听 0.0.0.0:8080,这样比如物理机内外 ip 为 192.168.1.1
    然后在虚拟机里面设置代理就为 192.168.1.1:8080
    hhxx6
        5
    hhxx6  
    OP
       2019-07-10 10:49:12 +08:00
    @Mervyn 能具体说一下吗?设置 wmware 虚拟的网关设置多少
    0TSH60F7J2rVkg8t
        6
    0TSH60F7J2rVkg8t  
       2019-07-10 10:50:19 +08:00
    比较简单的办法是:

    1. 虚拟机设置-网路配置里,选择桥接模式,勾上复制物理网络连接状态
    2. 设置你的代理(右键图标,菜单里找到)允许其它设备连入
    3. 直接在虚拟机里设置代理,IP 填入你物理机的 IP 地址,以及你的代理端口

    注意一下,可能每次开机,你的物理机 IP 都会变化,所以在路由器里,绑定一下 arp,固定物理机的 IP。
    hhxx6
        7
    hhxx6  
    OP
       2019-07-10 10:54:52 +08:00
    @ahhui 请问是不是就是我 4 楼写的这样,然后把网络改成桥接? nat 不行吗
    Mervyn
        8
    Mervyn  
       2019-07-10 10:55:18 +08:00
    @hhxx6 vmware 一般会虚拟两个网卡,VMware Network Adapter VMnet1 跟 VMware Network Adapter VMnet8,
    在物理机 console 查看这两个虚拟网卡的 IPV4 地址, 就是所有虚拟机的网关地址 。再看看你虚拟机是哪个网关的。

    在虚拟机代理设置成这个 ip:8080 就行了。
    0TSH60F7J2rVkg8t
        9
    0TSH60F7J2rVkg8t  
       2019-07-10 11:03:29 +08:00
    @hhxx6 可以
    0TSH60F7J2rVkg8t
        10
    0TSH60F7J2rVkg8t  
       2019-07-10 11:04:13 +08:00
    @hhxx6 nat 也行,记得 arp 绑定 ip,不然 ip 变了你连不上
    Tink
        11
    Tink  
       2019-07-10 11:23:53 +08:00
    先改桥接,然后主机和虚拟机在一个 ip 段内,然后配置代理
    Laumm
        12
    Laumm  
       2019-07-10 11:57:54 +08:00
    感觉最简单的就是 代理软件端口改成 0.0.0.0:8080,虚拟机只要能 ping 通物理主机,虚拟机就用物理主机 ip:8080 进行代理
    freshmanc
        13
    freshmanc  
       2019-07-10 12:36:48 +08:00 via Android
    我是加了一张 host only 的网卡…
    Takamine
        14
    Takamine  
       2019-07-10 12:48:07 +08:00 via Android
    我记得 VMware 在创建的时候有这个可选项来着。(。ò ∀ ó。)
    Fxhcu7By
        15
    Fxhcu7By  
       2019-07-10 14:50:54 +08:00
    最近正好解决了这个问题,需要的话你可以留个邮箱,我把笔记发你。
    v2lf
        16
    v2lf  
       2019-07-10 15:02:11 +08:00
    不用那么麻烦,配置系统的手动代理,ip 直接设置成宿主机的 ip
    v2lf
        17
    v2lf  
       2019-07-10 15:02:30 +08:00
    使用 pac 的话 也设置成宿主机的 ip
    z775781
        18
    z775781  
       2019-07-10 15:08:27 +08:00
    我是这样设置的,将虚拟机的网络设置成物理连接,这样虚拟机就跟物理机处于一个网段了,然后物理机开启代理软件,虚拟机设置代理为物理机的局域网地址跟端口就行了,
    这样就行了,如果不行,那就是你的物理机的防火墙拦截了,注意放行或者暂时关闭防火墙
    sysy007uuuu
        19
    sysy007uuuu  
       2021-04-04 09:52:31 +08:00
    @cephei 我试了一下 proxifier 好像检测不到 vmnat.exe ,是系统原因吗
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2746 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 12:42 · PVG 20:42 · LAX 04:42 · JFK 07:42
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.