V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
OpenWrt 是一个专门面向嵌入式设备的 Linux 发行版。你可以将 OpenWrt 支持的型号的嵌入式设备,比如各种路由器上的系统,换成一个有更多可能性可以折腾的 Linux 系统。
OpenWrt 官方网站
coolan
V2EX  ›  OpenWrt

记录关于 openwrt 虚拟机桥接无线网卡做旁路由,除宿主机外其他设备无法上网的原因。

  •  1
     
  •   coolan · 322 天前 · 325 次点击
    这是一个创建于 322 天前的主题,其中的信息可能已经有所发展或是发生改变。

    最近有兴趣尝试旁路由,用 hyper-v 桥接无线网卡(允许操作系统共享),把虚拟机 IP 写为网关后,发现所有设备都可以访问 openwrt 配置页面,但本机以外的同 wifi 下设备不能上网。抓包发现只有目的地址为虚拟机 IP 的包进来,目的地址为外网的包都没有。

    经过查证,原因是无线网卡桥接不同于有线,有线桥接时,网卡处于混杂模式,监听所有帧,于是虚拟机可以直接通过物理网卡发出去自己的 mac,网卡仍可以接收到虚拟机 mac 的帧。但是无线网卡不能使用混杂模式,而必须使用真实 mac,所以桥接无线网卡时,系统要进行 mac 地址转换,桥内虚拟机 IP 与 mac 绑定,出桥时统一使用物理无线网卡 mac,回来时根据目的 IP 再修改 mac 为虚拟机 mac 。做网关时,由于数据包的目的 IP 为外网地址,桥无法匹配虚拟机 IP,会自动丢弃这个包,导致连接超时。

    如果使用 vmware,无线网卡直通虚拟机,应该是可以的。

    如果有什么问题,欢迎更正。

    1 条回复    2022-06-30 15:10:09 +08:00
    Vendettar
        1
    Vendettar  
       39 天前
    请教一下,也就是说台式机 vmware 虚拟 openwrt 可以做旁路由但笔记本电脑不行?因为笔记本电脑是无线网卡?
    关于   ·   帮助文档   ·   API   ·   FAQ   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   3858 人在线   最高记录 5497   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 05:37 · PVG 13:37 · LAX 22:37 · JFK 01:37
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.