RRAS不会以8007042a或事件ID 7024开始,即“路由远程访问无法加载Iprtrmgr.dll”

历史:这个错误的历史大部分都没有解决,可以追溯到Windows 2000。

受影响的平台:Windows Server 2008 R2,Server 2008,Server 2003 R2,Server 2003,Server 2000(影响32位和64位安装)。

错误消息

  1. Event ID: 7024 The Routing and Remote Access service terminated with service-specific error 2 (0x2).
  2. Event ID: 7024 The Routing and Remote Access service terminated with service-specific error 31 (0x1F).
  3. Event ID: 7024 The Routing and Remote Access service terminated with service-specific error 20205 (0x4EED).
  4. Event ID: 7024 The Routing and Remote Access service terminated with service-specific error 193 (0xC1).
  5. Event ID: 20103 Unable to load C:\WINDOWS\System32\iprtrmgr.dll 。 (32位安装)。
  6. Event ID: 20103 Unable to load C:\WINDOWS\SysWOW64\iprtrmgr.dll 。 (64位安装)。

(这是KCotreau的原始答案,但他把它包含在这个问题中,作为实际的答案重新发布)

原因 :这个错误有两个基本原因。

  1. 如果您运行的是IPv6,则registry中的密钥不正确。
  2. TCP / IPv4损坏。

相关原因

这发生在我身上的几台具有Broadcom NetXtreme II适配器的戴尔Windows 2003 R2 64位服务器上。 我的问题是上面的第二个原因,TCP / IP损坏,我相信,当您安装Broadcom适配器的驱动程序时出于某种原因。 当然,其他适配器也可能会发生这种情况,但互联网上有大量未解决的情况与各种Broadcom适配器有关。

其他因素

即使在干净的安装中,也会发生这种情况,因为我使用特定于Dell的Windows Server 2003 R2介质和从批量许可证网站下载的Microsoft介质进行了testing。 它发生在任何媒体。

故障排除不适合我,或者互联网上的大多数人:

  1. 重新安装干净。
  2. 运行SFC / SCANNOW(我没有错误)。
  3. 比较并replace工作服务器上的iprtrmgr.dll。
  4. 从设备pipe理器中删除它们后重新安装网卡。
  5. 运行NETSH INT IP RESET C:\reset.logNETSH RESET WINSOCK
  6. 运行NETSH WINSOCK RESET
  7. 在设置devmgr_show_nonpresent_devices=1之后检查devmgr_show_nonpresent_devices=1适配器,然后在设备pipe理器中显示隐藏的设备(我没有)。
  8. 重新注册Oledb32.dll和Oledb32r.dll,并重命名C:\Windows\System32\ias \dnary.mdbias.mdb文件并重新启动RRAS。 这些文件位于64位系统上的C:\Windows\SysWOW64目录中。 这是在KB840696 http://support.microsoft.com/kb/840686

解决scheme

  1. 如果你有Server 2008,并运行TCP / IPv6,你的问题可能不是TCP / IPv4损坏,而是你有这个额外的密钥, HKEY_LOCAL_MACHINE\System\currentcontrolset\services\remoteaccess\routermanagers\IPV6 ,你将删除之后通过导出备份它。 删除这个密钥是一个简单的解决scheme,广泛帮助互联网上的许多人。 如果你仍然想使用TCP / IPv6协议,你可能需要做更多的事情。 由于我没有应用到我的服务器上,而且我也无法testing,所以您可能仍然存在IPv6损坏,并且可能需要通过删除并重新安装TCP / IPv6来排除故障,类似于下面的解决scheme。 上述解决scheme可能只是掩盖了潜在的腐败,避免了这个问题。
  2. 如果您没有运行IPv6,则有可能导致TCP / IPv4损坏,解决办法是重新安装。 如果你从来没有注意到,如果你尝试卸载TCP / IP,它是灰色的。 为了解决这个问题,我遵循KB 325356: http : //support.microsoft.com/kb/325356 。 这说明它是为域控制器,但也在成员服务器上工作。 步骤是:

    • 以防万一,禁用RRAS mmc中的RRAS,因为这将卸载它。
    • 备份您的registry。
    • 忽略步骤1-4,如果您刚好在成员服务器上,则步骤21。
  3. 重新启动域控制器。
  4. 出现BIOS信息时,按F8键。
  5. select目录服务还原模式,然后按ENTER键。
  6. 使用目录服务还原模式密码login。
  7. 单击开始,然后单击运行。
  8. 在打开框中,键入regedit,然后单击确定。
  9. find以下registry子项:
    • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Winsock
    • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Winsock2
  10. 用鼠标右键单击每个项,然后单击删除。
  11. 单击是以确认删除每个密钥。
  12. closuresRegedit。
  13. find%winroot%\ inf中的Nettcpip.inf文件,然后在记事本中打开该文件。
  14. find[MS_TCPIP.PrimaryInstall]部分。
  15. 编辑Characteristics = 0xa0条目并用0x80代替0xa0。
  16. 保存该文件,然后退出记事本。
  17. 在“控制面板”中,双击“networking连接”,右键单击“本地连接”,然后select“属性”。
  18. 在常规选项卡上,单击安装,select协议,然后单击添加。
  19. 在“selectnetworking协议”窗口中,单击“从磁盘安装”。
  20. 在复制制造商的文件从:文本框中键入c:\windows\inf ,然后单击确定。
  21. selectInternet协议(TCP / IP),然后单击确定。 (注意:这一步将返回到本地连接属性屏幕,但现在卸载button可用)。
  22. selectInternet协议(TCP / IP),单击卸载,然后单击是。
  23. 重新启动计算机,然后select步骤2 – 4中提到的目录服务还原模式。
  24. 在“控制面板”中,双击“networking连接”,右键单击“本地连接”,然后select“属性”。
  25. 在常规选项卡上,单击安装,select协议,然后单击添加。
  26. 在“selectnetworking协议”窗口中,单击“从磁盘安装”。
  27. 在复制制造商的文件从文本框中键入c:\windows\inf ,然后单击确定。
  28. selectInternet协议(TCP / IP),然后单击确定。
  29. 重启你的电脑。

configuration和启用路由和远程访问。 此时,您的RRAS应该启动。

相关问题和解决scheme:

当我input一个静态IP地址时,虽然它会保持静态,但属性会重置为“自动获取IP地址”。 导航到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Network并删除Config项。 重新input你的静态设置,他们应该保持,并重build该configuration键。

我希望这能解决你们中许多人的难题。

我知道这是一个老式的post,但是即使在Server 2016中也会出现同样的无用的错误。

幸运的是,对我来说,原因是IIS和RRAS之间的证书不匹配。

该修补程序是为我在RRAS中使用的默认IIS站点使用相同的证书。