Powershell 检索DHCP作用域

Powershell 检索DHCP作用域,powershell,scope,dhcp,Powershell,Scope,Dhcp,我的脚本在本地运行时工作,我试图从远程服务器获取所有DHCP作用域信息,我收到脚本下面的错误 $A = "TestDH01" ForEach ($B in $A) { Get-DHCPServerv4Lease -ScopeID $_.ScopeID -AllLeases | where {$_.AddressState -like '*Reservation'} } Select-Object ScopeId,IPAddress,HostName,ClientID,AddressStat

我的脚本在本地运行时工作,我试图从远程服务器获取所有DHCP作用域信息,我收到脚本下面的错误

$A = "TestDH01"
ForEach ($B in $A) {

Get-DHCPServerv4Lease -ScopeID $_.ScopeID -AllLeases | where 
{$_.AddressState -like '*Reservation'}

} Select-Object ScopeId,IPAddress,HostName,ClientID,AddressState | ExportCsv "\\TermServer\d$\New\Steve\$($A)-Reservations1.csv" -NoTypeInformation
Get-DhcpServerv4Lease:无法验证参数上的参数 “ScopeId”。参数为null或为空。提供一个 请不要为null或空,然后重试该命令。第4行字符:36 +Get-DHCPServerv4Lease-ScopeID$.ScopeID-AllLeases |其中{$。。。 + ~~~~~~~~~~ +CategoryInfo:InvalidData:(:)[Get-DhcpServerv4Lease],参数BindingValidationException +FullyQualifiedErrorId:ParameterArgumentValidationError,Get-DhcpServerv4Lease


我假设你在找这样的东西:

#Get all DHCP Servers
$ServerList = Get-DhcpServerInDC | select IPADdress, DNSName
foreach ($server in $serverlist)
{
#Get the scopes from each server
    Get-DHCPServerv4Scope -ComputerName $server.IPAddress | select ScopeID | 
#Get the lease information for each scope
    ForEach-Object {Get-DHCPServerv4Lease -ScopeId $_.ScopeId -ComputerName $Server.DNSName -AllLeases  | 
        where {$_.AddressState -like "*Reservation"} | Select-Object ScopeId,IPAddress,HostName,ClientID,AddressState }
}

您没有将任何内容传输到
$\uuuuu
中,因此
$\uuu.ScopeID
将始终为空。请执行类似于
-ScopeID$B
的操作,这至少会给我带来不同的错误,“ScopeID”无法将值“TestDH01”转换为类型“System.Net.IPAddress”。错误:“指定了无效的IP地址”ScopeID参数需要IPv4地址,并指定检索地址租约的范围。