PowerShell DHCPユーザーの迅速な表示とバインド


DHCPが必要なPowerShellは4.0 2012 R 2システム 
このスクリプトはSCOやプログラミングで呼び出すのに便利で、承認フローを作成することができ、ユーザーがIPをバインドする申請を提出するのに便利です.
Get-DhcpServerv4Lease -ComputerName dc.contoso.com  -IPAddress 192.168.136.25|select IPAddress,hostname,addressstate,leaseexpirytime
#      192.168.136.25  IP DHCP   (dc.contoso.com)    
Get-DhcpServerv4Scope -ComputerName dc.contoso.com | Get-DhcpServerv4Lease -ComputerName dc.contoso.com|select IPAddress,hostname,addressstate
#             IP  ,       

Get-DhcpServerv4Lease -ComputerName dc.contoso.com  -IPAddress 192.168.136.25|Set-DhcpServerv4Reservation
  192.168.136.25     ,           
Get-DhcpServerv4Lease -ComputerName dc.contoso.com  -IPAddress 192.168.136.25|select IPAddress,hostname,addressstate,leaseexpirytime
#             IP

いくつかの変数を追加して、管理者が処理しやすいようにすることができます.
$a = Read-Host("     dc.contoso.com  ,     IP  ,  XXX.XXX.XXX.XXX")
Get-DhcpServerv4Lease -ComputerName dc.contoso.com  -IPAddress $a|Set-DhcpServerv4Reservation

もちろん、上記のスクリプトは、異なるIP範囲に適応し、異なるサーバ名を指定することもできます.では、これは少し面倒ですが、ユーザーが範囲に作用する属性値を入力したり、次のようなswitch文を使って属性値を定義したりする必要があります.
$zone1 = Read-Host("         :(1)  ,(2)  ,(3)  ,(4)  ,(5)  ,(6)  :     ")
switch ($zone1) {
            1 {$zone2 = "  "}
            2 {$zone2 = "  "}
            3 {$zone2 = "  "}
            4 {$zone2 = "  "}
            5 {$zone2 = "  "}
            6 {$zone2 = "  "}
            }