我需要根据 IP 地址列表或范围在本地 LAN 上扫描和定位SQL Server 实例,我正在寻找以下信息:
- sql server 正在侦听的端口(常规为1433/1434,但可以更改),
- 机器的IP地址,
- 运行 sql server 的机器的主机名,
- 实例版本如10.5.2500.0
- 实例名称信息,例如Joe\SQLExpress
我将无权访问 Windows 或 sql 服务器的任何凭据。赌注是使用 Windows 身份验证,但我更喜欢基于发现的方法。此外,我不想在扫描期间发出错误警报,并且扫描必须是非侵入性的。扫描必须执行几个漏洞测试(稍后),这将涉及检查和进一步的信息,因此不需要每个服务器的任何访问凭据。
此外,某些实例可能已禁用SQL Server Browser 服务或已停止SQL Server 代理服务。
我需要能够查询给定 IP 地址范围的所有 SQL Server 实例。我一直在尝试在这里使用参数:
和
基于 AC# 的解决方案也可以提供帮助,只要它返回所有实例,无论 SQL Server Browser 或 SQL Server 代理是否正在运行。
但我希望我的扫描尽可能不打扰。