去评论
海欣资源

网络启动设备 AR1 失败. 错误代码: 40. 详细: 启动失败

perll
2022/05/28 21:41:32
一、报错内容
    启动设备 AR1 失败. 错误代码: 40. 详细: 启动失败。我在启动路由器的时候,总是出现这个问题。大部分人可以按照官网解决这个问题,但我的情况不一样。

二、原因
    Windows 10 在安装 VirtualBox 的时候,虚拟网卡的名称是 VirtualBox Host-Only Ethernet Adapter #2。(至少我的是这样),查询之后,貌似是 VirtualBox 在卸载的时候,没有卸载干净,VirtualBox Host-Only Ethernet Adapter 变成了 VirtualBox Host-Only Ethernet Adapter #2。
    但是 eNSP 默认是使用 VirtualBox Host-Only Ethernet Adapter,所以 eNSP 在启动路由器的时候就会报错。

三、解决方法
    解决办法有两种:
    删除卸载 VirtualBox(注册表的也都删干净);
    编辑 AR_Base.vbox 文件,更改 HostOnlyInterface 内容。
    这里我就不说第一种了,因为我不能保证一定卸载的干净,直接开始第二种。

1、寻找 AR_Base.vbox 文件
    AR_Base.vbox 在 F:\Program Files\Huawei\eNSP\vboxserver\ARBaseBackup\AR_Base 目录下,我的不在 C 盘。


2、编辑 AR_Base.vbox 文件
    可以使用 notepad++ 打开该文件,搜索 HostOnlyInterface,我的 eNSP 是 v1.3.00.100 版本。是在 42 行。


可以看到 HostOnlyInterface 的 name 为 VirtualBox Host-Only Ethernet Adapter,跟本机 VirtualBox 虚拟出来的网卡不同。
<HostOnlyInterface name="VirtualBox Host-Only Ethernet Adapter"/>
    这时候就需要将 HostOnlyInterface 的 name 改成和 VirtualBox 虚拟出来的网卡同样的名称。
<HostOnlyInterface name="VirtualBox Host-Only Ethernet Adapter #2"/>


3、重启 eNSP
    配置结束后,第一次打开是以管理员身份打开 eNSP,让 VirtualBox 加载设置,如果不用管理员身份打开,肯定会报错。


打开之后,先不着急做图,先注册一下设备,菜单 → 工具 → 注册设备。

勾选 AR_Base,点击 注册,显示如图之后,点击 退出 即可。之后就可以不使用管理员身份也是没有问题的了。

四、其他
    上述配置完毕后,在启动 eNSP 的 路由器 的时候出现下面情况。都是 #,就是启动不了路由器。那就需要接下来的配置了。


1、配置 IPv4 地址
    给 VirtualBox 虚拟出来的网卡配置 IP 地址,必须是 192.168.56.1/24 的。至于为什么,母鸡呀。因为当我配置不是这个地址时(比如: 192.168.57.1),eNSP 启动 路由器 的情况如上面显示图片一样,都是 # 号。


配置 IP 地址 时如果出现 下列情况。原因是旧网卡已经不再使用,但它的 IP信息 有残留,导致正在使用的网卡不能改回原来的 IP,其实就是IP冲突。但有时候我们必须使用回原来的IP。那就需要删除注册表中残留的信息。

2、删除注册表
    Win + R,输入 regedit。


找到下面框内的选项。
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet0x\Services\Tcpip\Parameters\Interfaces


先查看 IP 地址: 192.168.56.1 是否有其他网卡占用,如果有占用,先把那个网卡的 IP 地址 更改成其他的。确保没有网卡占用这个 IP 地址 后,再把这个注册表删除即可。
然后 VirtualBox Host-Only Ethernet Adapter #2 这个网卡就可以配置 192.168.56.1 这个地址了。


3、再次重启 eNSP
    此时的重启 eNSP 和第三步的 重启 eNSP 一样,重做一次那个步骤,然后再在 eNSP 中启动 路由器,终于可以了。


五、附加(2022 - 04 - 18 更新)
    如果上述还是无法解决问题,还是报 启动设备 AR1 失败. 错误代码: 40. 详细: 启动失败,可以试试将虚拟化管理关掉。
# 以管理员身份运行命令提示符
bcdedit /set hypervisorlaunchtype off