跳转至

Quartus II 虚拟机许可证与网络隔离

问题现象

在 VirtualBox 虚拟机中的 Quartus II 编译 Cyclone IV E 工程时,Fitter 报错:

Error (119013): Current license file does not support the EP4CE6E22C8 device
Quartus II 64-Bit Fitter was unsuccessful
Quartus II Full Compilation was unsuccessful

同时,许可证工具中识别到的网卡主机号为 ffffffff0000

运行环境

项目 内容
虚拟化软件 VirtualBox
虚拟机系统 Windows
FPGA 工具 Quartus II
目标器件 EP4CE6E22C8
安全要求 虚拟机不得访问宿主机和外部网络

原因分析

Quartus 的部分许可证会通过网卡 MAC 地址生成或校验主机号。原先虚拟机的网卡未启用,因此许可证管理器无法取得正常的 MAC 地址,显示为 ffffffff0000

该值不是正常的以太网 MAC 地址。VirtualBox 实际分配的 MAC 地址是:

08:00:27:5A:66:B7

注意:错误 119013 的直接含义是当前许可证不支持目标器件。网卡识别异常会导致节点锁定许可证无法匹配;即使网卡恢复正常,许可证文件本身不包含该器件授权时,错误仍会存在。

解决方案

1. 保留虚拟网卡,但切断外部网络

在 VirtualBox 完全关闭虚拟机后,打开“设置 -> 网络”,按以下方式配置“网卡 1”:

配置项 设置值
启用网络连接 勾选
连接方式 内部网络(Internal Network)
名称 quartus-isolated
适配器类型 Intel PRO/1000 MT 桌面版(82540EM)
MAC 地址 0800275A66B7
虚拟有线连接 勾选

同时禁用“网卡 2”“网卡 3”“网卡 4”。不要使用 NAT、桥接网卡或仅主机网络。

“内部网络”是 VirtualBox 内部的隔离二层网络:只有加入同名内部网络的虚拟机可以相互通信;它默认不连接宿主机、物理网卡或互联网。使用唯一名称,并确保没有其他虚拟机在该网络中充当路由器或代理。

提示:不要点击 MAC 地址右侧的重新生成按钮。若许可证按 MAC 地址绑定,修改 MAC 会使已有许可证失效。

2. 在虚拟机内验证网络隔离和 MAC 地址

启动虚拟机后,在命令提示符执行:

ipconfig /all
route print
powershell -Command "Test-NetConnection 1.1.1.1 -Port 443"

预期结果:

  • ipconfig /all 中能看到物理地址 08-00-27-5A-66-B7
  • route print 中没有通过该网卡访问外部网络的默认路由。
  • Test-NetConnectionTcpTestSucceededFalse

以上检查证明该虚拟机没有可用的外部网络出口。若需要最高级别的隔离,还应避免 USB 网卡直通,并确保虚拟机没有其他已启用的网络适配器。

3. 重新检查 Quartus 许可证

重新启动 Quartus II 后,打开:

Tools -> License Setup

根据安装版本处理:

场景 处理方式
Quartus II Web Edition 通常不需要 license.dat。清除错误的许可证文件或服务器路径,并检查 QUARTUS_LICENSE_FILELM_LICENSE_FILE 环境变量。
节点锁定或学校/企业许可证 确认许可证的主机号与 0800275A66B7 一致,并确认许可证授权了 EP4CE6E22C8。不一致时,应向许可证提供方申请匹配当前 MAC 的许可证。
浮动许可证 按单位许可服务器配置;内部网络隔离会使虚拟机无法访问外部许可证服务器。

不要通过修改许可证文件或伪造主机号绕过许可证校验。

验证结果

完成配置后,Quartus II 应能读取正常的虚拟网卡 MAC 地址,同时虚拟机不具备访问互联网的网络路径。

如果完整编译仍报 119013,则继续检查许可证版本、授权器件范围及 License Setup 中配置的许可证来源;此时问题不再是 VirtualBox 网络设置。