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

Hyper-V 内运行的虚拟机在路由器里找不到信息,导致无法进行端口转发。

  •  
  •   my101du · 2019-11-16 22:04:38 +08:00 · 2605 次点击
    这是一个创建于 1832 天前的主题,其中的信息可能已经有所发展或是发生改变。

    场景如下:

    荣耀路由器 pro2:192.168.3.1,开启 DHCP

    windows 10 + Hyper-V: 192.168.3.15 (使用 外部网络 虚拟交换机)

    • 虚拟机 Ubuntu: 192.168.3.16
    • 黑群晖:192.168.3.17

    macbook: 192.168.3.2

    现在情况是

    • macbook 能远程桌面 192.168.3.15
    • 也能 ssh 登陆到虚拟机 Ubuntu 192.168.3.16
    • windows10 物理机和 Ubuntu 虚拟机能互相访问到

    但是,在 路由器 的设置界面 端口转发联网设备 里,只能找到这台 windows 10 物理机,找不到任何它运行的两个虚拟机的信息,导致无法设置端口转发。

    我查了资料,有说是华为、荣耀系路由器的问题,官方一直回避,有的 TP-LINK 反而可以识别到虚拟机设备名。

    有的说是需要在 Hyper-V 上再添加一个 内部网络 的虚拟交换机,然后用 netsh 命令手动增加端口映射,实现

    路由器段端口 -> windows 10 端口 -> hyper-V 内部虚拟机端口

    请问有人遇到过这个问题吗?

    9 条回复    2019-11-18 18:38:46 +08:00
    LFUNWF
        1
    LFUNWF  
       2019-11-16 22:11:23 +08:00 via Android
    虚拟机改一下主机名然后换个 IP 试试呢
    kokutou
        2
    kokutou  
       2019-11-16 22:17:27 +08:00
    我知道如果 virtualbox 是桥接网卡的话,会从路由器的 dhcp 获取 ip,路由器就能看到。
    tp-link、腾达等传统路由或者是 openwrt 都没问题的。

    hyperv 的网络不熟悉,看和宿主一样的网段,感觉应该就是路由器的问题吧
    flynaj
        3
    flynaj  
       2019-11-17 01:36:51 +08:00 via Android   ❤️ 1
    路由器的问题,就是没有使用的 IP 也应该可以配置才正确,还没有见过哪个路由器会这样,ROS,openwrt
    ysc3839
        4
    ysc3839  
       2019-11-17 01:39:31 +08:00 via Android   ❤️ 1
    对呀,难道不给你手动输入 IP 地址吗?如果是这样的话我只能说是 SB 设计。
    binux
        5
    binux  
       2019-11-17 01:40:59 +08:00 via Android   ❤️ 1
    你先随便给 PC 或者手机设置个端口转发,然后把虚拟机 IP 改成它就好了
    my101du
        6
    my101du  
    OP
       2019-11-17 14:43:04 +08:00 via Android
    @LFUNWF 不行 路由器找不到任何虚拟机设备名 但是 ip 是可以分配的。


    @kokutou
    @ysc3839
    @flynaj
    是荣耀 pro2 我看到官网论坛有人反馈过这个问题,但是他们一直没正面回应。


    @binux 好的 我晚上试试
    victor97
        7
    victor97  
       2019-11-17 14:44:22 +08:00 via Android
    是不是虚拟机 MAC 的问题
    ps1aniuge
        8
    ps1aniuge  
       2019-11-17 19:20:13 +08:00
    路由器不要用荣耀,硬件太好,软件外包,功能不行,bug 修的慢。

    3 楼正解。端口转发只需要下列参数:
    1 不需要输入外网 ip。
    2 需要输入外网端口。
    3 需要输入内网 ip。
    4 需要输入内网端口。
    5 需要输入协议,tcp,udp,或者两者。

    当某个内网 ip,端口,关机或不存在时,路由器的端口转发,也应该正常工作。
    不可能一台内网机子关了,端口转发就垮了,或者路由器就夯了。
    venster
        9
    venster  
       2019-11-18 18:38:46 +08:00
    稀奇了,难道华为的路由器端口转发只能从已有设备列表里面选择?这样的话怕不是开发人员脑袋被门板夹了吧?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1167 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 18:07 · PVG 02:07 · LAX 10:07 · JFK 13:07
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.