VMware Fusion中使用迅雷的问题

最近在下载几个3D片源,家里装了联通20Mbp的宽带,网速能达到2.5MB,异常迅猛,我在MacOS里面装了个虚拟机,虚拟机里面装了个Windows2003,Win2003里面安装了迅雷,专门下载3D片源。其实我也知道可以在Mac下直接装迅雷,之所以在虚拟机里安装,纯粹是一个偶然的因素,这是纯粹非技术因素,充其量算我的无知吧!
        迅雷使用P2P方式下载,下载速度越快,网络崩溃的时间就越快,我发现只要速度持续2MB以上达到十分钟左右,NAT模式的虚拟机里面就无法联网了,在宿主机上看进程,发现vmnet-natd这个进程不在了,可是某一次,vmnet-natd程序在的情况下,网络也不可用了,这个问题该如何解决?
        VMWare的nat模式其实是用户态的vmnet-natd来完成的,它本质上是一个代理,多于TCP而言是一个握手代理,对于虚拟机里面外出的每一个连接,vmnet-natd都要有一个TCP连接与之对应,而在Unix/Linux上(MacOS底层是一个Unix),每一个连接都是一个socket,而每一个socket都是一个打开的文件描述符,因此最多能有几个连接受制于Unix进程中最多能打开几个文件描述符,这和Linux的ip_conntrack数量限制是一样的。而对于P2P下载,无疑会有大量的连接,在宿主机上lsof一下vmnet-natd,发现文件描述符达到了几千个,某一次,正是由于文件描述符达到了上限所导致的网络崩溃。
        还有那么一次,我发现vmnet-natd不在了,这肯定就无法上网了,于是重新运行它:
/Applications/VMware\ Fusion.app/Contents/Library/vmnet-natd -s 9 -m /Library/Preferences/VMware\ Fusion/vmnet8/nat.mac -c /Library/Preferences/VMware\ Fusion/vmnet8/nat.conf -D
得到下面的输出:
Using configuration file: /Library/Preferences/VMware Fusion/vmnet8/nat.conf.
IP address: 172.16.49.2
 Subnet: 255.255.255.0
External IP address: 0.0.0.0
Device: vmnet8.
MAC address: 00:50:56:E6:37:3C.
Ignoring host MAC address: 00:50:56:C0:00:08.

然而,当持续高速时,突然出现了下面的报错:
vmnet-natd(2651,0x7fff7b380960) malloc: *** error for object 0x101903ff8: incorrect checksum for freed object - object was probably modified after being freed.
*** set a breakpoint in malloc_error_break to debug

这种错误是没法直接解决的,很明显这是程序的bug导致的,虽然解决不了,总是可以补救,那就是再次手工运行vmnet-natd即可,需要注意的是-s参数,可能不再是原来的。
        还有那么一次,文件描述符没有达到上限,也没有上述的报错,可是虚拟机中的网络还是崩溃了。打开活动监视器,发现vmnet-natd进程的CPU占用达到了100%,进程取样看不出任何异样,很明显这也是vmnet-natd程序本身的问题。重新启动一下vmnet-natd即可。
        太麻烦了,最直接的解决办法:1.直接在Mac上装迅雷;2.使用桥接模式(就像美国电影拍续集一样,在结束本文时,我突然看到了一个进程:vmnet-bridge,理论上,它是不需要的啊,Windows上不是直接在物理网卡上注册一下桥接协已就可以了吗??Linux上不是注册一个ptype_all就可以了吗??)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
虚拟机(Virtual Machine)指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境的完整计算机系统 定义   虚拟机指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境的完整计算机系统。 编辑本段用途   通过虚拟机软件,你可以在一台物理计算机上模拟出一台或多台虚拟的计算机,这些虚拟机完全就像真正的计算机那样进行工作,例如你可以安装操作系统、安装应用程序、访问网络资源等等。对于你而言,它只是运行在你物理计算机上的一个应用程序,但是对于在虚拟机运行的应用程序而言,它就是一台真正的计算机。因此,当我在虚拟机进行软件评测时,可能系统一样会崩溃,但是,崩溃的只是虚拟机上的操作系统,而不是物理计算机上的操作系统,并且,使用虚拟机的“Undo”(恢复)功能,我可以马上恢复虚拟机到安装软件之前的状态。 编辑本段虚拟系统与虚拟机区别   虚拟系统其实以Prayaya迅影V3虚拟系统为代表的,通过生成现有操作系统的全新虚拟镜像,它具有真实windows系统完全一样的功能,进入虚拟系统后,所有操作都是在这个全新的独立的虚拟系统里面进行,可以独立安装运行软件,保存数据,拥有自己的独立桌面,不会对真正的系统产生任何影响 ,而且具有能够在现有系统与虚拟镜像之间灵活切换的一类操作系统。虚拟系统和传统的虚拟机(Vmware,VirtualBox,Virtual pc)不同,虚拟系统不会降低电脑的性能,启动虚拟系统不需要像启动windows系统那样耗费时间,运行程序更加方便快捷。
VMware Fusion 是一款由 VMware 公司开发的虚拟化软件,允许您在 Mac 上运行 Windows 操作系统以及其他操作系统(如 Linux)以及应用软件。通过它,您可以在一个虚拟机内安装和运行不同版本的操作系统,无需重启电脑即可在 macOS 和其他操作系统之间切换。 ### 安装与启动 VMWare Fusion #### 安装过程: 1. **下载 VMware Fusion**:从官方网站下载适用于您的 Mac 的最新版本 VMware Fusion 软件包。 ```shell curl -L https://www.vmware.com/products/fusion/download.html > vmware_fusion.pkg ``` 2. **运行安装程序**:双击下载的 `.pkg` 文件来开始安装过程。按照屏幕上的指示完成安装。 3. **激活 VMware**:如果购买了许可,则需输入激活码来激活软件。 #### 启动 VMware Fusion: 1. 打开位于 `/Applications/VMware\ Fusion.app` 的应用程序图标。 2. 根据提示创建一个新的虚拟机或打开现有的虚拟机文件。 ### 创建新虚拟机 1. **选择操作系统**:在 Fusion 主界面点击 "新建" 来创建新的虚拟机。选择要模拟操作系统的类型(例如 Windows 或者 Linux)并指定所需的内存大小、硬盘空间和处理器数量。 2. **配置虚拟硬件**:调整虚拟机的硬件设置以满足性能需求。例如,可以添加额外的内存、修改硬盘容量或连接网络适配器。 3. **下载和安装操作系统**:Fusion 可能会自动查找适合所选操作系统的 ISO 映像文件,或者您可以通过手动加载 ISO 来安装操作系统。 4. **启动虚拟机**:一旦配置完成,您就可以点击 "开机" 开始安装操作系统了。 ### 使用 VMware Fusion 在虚拟机启动后,您可以在 macOS 系统与虚拟机操作系统之间自由切换,如同在两台独立的机器上工作一样。 ### 相关问题: 1. 如何在 VMware Fusion 共享文件夹? 2. VMware Fusion 是否支持最新的 macOS 版本? 3. 怎样优化 VMware Fusion 的性能?
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值