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

如何模拟多个虚拟网卡提高网速

  •  
  •   fashioncj · 2016-05-26 20:50:38 +08:00 · 10325 次点击
    这是一个创建于 3096 天前的主题,其中的信息可能已经有所发展或是发生改变。

    现在学校网络限制 173K 当 ip 的速度,而且采用丢 tcp 的包来实现限速的。

    我有个想法是现在实验室的局域网有很多空闲的 ip 没有使用,如何在一个物理网卡上模拟多个虚拟网卡然后再把他们串联在一起,这样就可以得到一个比较快的速度了。

    这种想法类似于 PPPOE 的多播,不过我没找到比较好的解决方案~故来求答案~


    是否 openvpn 可行?

    PS.现在已经有路由器能限制 ipv6 的速度了么 0.0 ,我校的 ipv6 国际线路的速度悲惨到不到 100k/s ,不过国内镜像依旧是 10M/s..

    18 条回复    2016-05-29 14:58:26 +08:00
    xujif
        1
    xujif  
       2016-05-26 21:23:13 +08:00   ❤️ 1
    第一个 windows 直接就支持,写多个 ip 到网卡属性里去就好了, 第二个那是出口的问题吧
    Syc
        2
    Syc  
       2016-05-26 21:28:00 +08:00 via Android
    楼上正解,同时路由器刷 openwrt 等固件,创建多个 WAN 并手工设置静态 IP 即可。
    fashioncj
        3
    fashioncj  
    OP
       2016-05-26 22:10:22 +08:00
    @xujif 按照该方法设置了一下。。好像出口的时候还是使用一个 ip 进行访问,并不会并联 0.0
    sec
        4
    sec  
       2016-05-26 22:21:27 +08:00   ❤️ 1
    如果确定是基于 IP 限速而不是基于端口限速的话,可去了解下用于路由器的 openwrt 固件,能够实现一个物理 WAN 口模拟出多个虚拟 WAN 口,部分地区部分运营商的网络可借助它多次拨号提高网速,关键词“ OpenWrt nwan ”
    另外 IPv6 限速早就可以做了,学校这样的大型机构肯定不会用普通的家用路由,而 IPv6 的支持是依赖于软件而非硬件,技术上没障碍,就看管理人员做不做了
    fashioncj
        5
    fashioncj  
    OP
       2016-05-26 22:31:25 +08:00
    @sec 有木有基于 windows 的解决方案。 TAT
    billlee
        6
    billlee  
       2016-05-26 23:07:21 +08:00
    @sec 学校实验室,应该不是 PPPoE 吧。 Openwrt 那个虚拟多 WAN 是用来在一个物理口上虚拟出多个 MAC address 不同的接口的,主要是为了解决 PPPoE 不同的会话需要不同的 MAC address 的问题。

    如果不是 PPPoE, 且基于 IP adreess 限速,那么给一个 WAN 口配多个 IP 就可以了。除非是基于 MAC address 限速, 才需要用那个虚拟多 WAN 口的功能。
    xujif
        7
    xujif  
       2016-05-26 23:17:23 +08:00 via iPhone
    @fashioncj 这个也许支持多线程的网络服务才会支持吧
    sec
        8
    sec  
       2016-05-26 23:44:24 +08:00   ❤️ 1
    我试过在 windows 宿主机下用 vmware 玩 OpenWrt ,通过改 windows 路由表实现了宿主机下 TCP 、 UDP 、 ICMP 流量(其它未测)从虚拟机 OpenWrtt 走,但是能不能做多 wan 没有试过。

    大致说下过程:
    1.参考 https://wiki.openwrt.org/doc/howto/vmware 制作 vmware 虚拟磁盘文件(此步还是需要 linux ……)。
    2.新建虚拟机,选 linux3.x x86 ,默认的虚拟网络适配器选“仅主机”,另外添加一个虚拟网络适配器选“桥接”。
    3.启动 OpenWrt 虚拟机,启动完毕后用 ifconfig 命令查看分配到的用于“仅主机”的 IP 地址,然后用浏览器直接访问这个地址,此时应该能看到 OpenWrt 管理页面,把 OpenWrt 里 lan 接口的 DHCP 关掉。
    4.在宿主机上把“仅共享”网卡的 DNS 服务器设置为你喜欢的 DNS ,然后修改宿主机路由表,把默认路由指向路由器的“仅主机” IP 地址,此时 tracert 到任意一台外网主机应该会看到第一跳是虚拟机里的 OpenWrt ,到这里应该可以把所有流量引至 OpenWrt

    以上操作有风险,理论上 windows 系统重启会重建路由表,但是也不保证不会被玩坏。可以先另开一台 windows 虚拟机( XP 就可以),接入桥接和仅主机两个网卡进行实验

    看了 @billlee 的回帖,在 OpenWrt 15.05 的网页端没有找到添加多 IP 的地方,在 Google 上搜索过 OpenWrt 多 IP 配置,感觉用 OpenWrt 是个比较复杂的解决办法,配置完可能还要设置各 IP 的负载均衡,楼主要不是折腾帝还是算了吧(逃
    msg7086
        9
    msg7086  
       2016-05-27 00:31:36 +08:00
    国际线路的速度悲惨是因为国际线路的速度悲惨,不一定是限速。
    sec
        10
    sec  
       2016-05-27 00:41:10 +08:00
    自己折腾了下,添加双 IP 没有那么复杂,不需要用 nwan ,网络端口里新建一个接口,绑定原有 wan 的硬件接口,两个 wan 都改为固定 IP 并设置不同的 IP 地址,然后就可以用了。这样 OpenWrt 就有两个 IP ,至于优先从那条路走,跟接口设置里的 gateway metric 有关,数值越低优先级越高,优先级一致的话应该是随机决定。但是这样两个接口的 MAC 地址是一致的,对于基于 MAC 地址的限速应该无效。多个接口的负载均衡可以用 mwan 管理,这个在 15.05 的软件包管理里可以安装。
    fashioncj
        11
    fashioncj  
    OP
       2016-05-27 03:00:44 +08:00 via iPhone
    @sec 我试了在 vmvare 中的 xp 三个虚拟网卡桥接模式,每个都能用。但是跃点数一样情况下也只有一个网卡会走流量
    kokutou
        12
    kokutou  
       2016-05-27 08:28:00 +08:00 via Android
    openwrt 的 nwan 太老了。。现在都 mwan3 了。。。
    需要不同 mac 地址就要 kmod-macvlan 。
    ahjsrhj
        13
    ahjsrhj  
       2016-05-27 08:32:30 +08:00 via Android
    @fashioncj 我学校的情况差不多,我的做法是虚拟机添加十块网卡,然后使用软件叠加多网卡网速…软件名字忘记了……你可以查找一下
    JamesR
        14
    JamesR  
       2016-05-27 09:28:55 +08:00
    "如何在一个物理网卡上模拟多个虚拟网卡然后再把他们串联在一起",准确地说是并联,可以的,多条线路绑成一条。

    不过,一般只有 BT 迅雷多线程下载才能看见速度成倍增加,浏览器上网看视频还是单线程没叠加的 173K 速度。

    虚拟机装软路由实现,外网口为实验室局域网 IP ,再做一次 NAT 转发,简单的话用海蜘蛛,高级的话 RouterOS 。
    接着就是分流策略了,按 IP ,端口或数据包进行分流,分的越细,各管道流量越均衡,但网络性能越不稳定,我没试过这种,你可以去试试。
    hicdn
        15
    hicdn  
       2016-05-27 10:15:05 +08:00
    @JamesR +1

    对浏览器没有效果
    fashioncj
        16
    fashioncj  
    OP
       2016-05-27 11:41:26 +08:00 via iPhone
    @ahjsrhj 😂给个关键词呀
    ahjsrhj
        17
    ahjsrhj  
       2016-05-27 13:21:19 +08:00 via Android
    @fashioncj 我在外地 那个软件好久没用了😂
    努力的想了很久 想不起来…等我后天回去发给你
    ahjsrhj
        18
    ahjsrhj  
       2016-05-29 14:58:26 +08:00   ❤️ 1
    @fashioncj Connectify Dispatch 就是这个软件- -
    虽然不知道你找到其它方案没有
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1109 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 20ms · UTC 23:24 · PVG 07:24 · LAX 15:24 · JFK 18:24
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.