ユーザ用ツール

サイト用ツール


ja:windows:powershell:dhcpサーバを操作する

文書の過去の版を表示しています。


DHCPサーバ設定をPowerShellで行う

今までnetshコマンドを使ってDHCPサーバの制御を行っていたのですが、いつの間にかnetshでのDHCPサポートは将来削除されるかもしれませんよー!と警告が出るようになっていたので、将来削除されちゃっても良いようにPowerShellでやってみようかと。
なお、作業には管理者権限が必要なので、PowerShellのプロンプトを起動する時やスクリプトを実行する時には管理者権限に昇格するように!

モジュール

PowerShellでDHCPサーバを制御する為にはDhcpServerモジュールが必要です。

PS C:\Windows\system32> Import-Module DhcpServer

とりあえず、処理を行う前に実行しとけばおk。
モジュール内にあるコマンドも確認しておくと良い。

PS C:\Windows\system32> Get-Command -Module DhcpServer

ついでに出てきたコマンドの詳細を知りたい場合は

Get-Help コマンド

Get-Help コマンド -examples

ってすると幸せになれます。

スコープを作成する

書式

Add-DhcpServerv4Scope -StartRange 開始IP -EndRange 終了IP -SubnetMask サブネットマスクIP -Name "名前" -State InActive

PS C:\Windows\system32> Add-DhcpServerv4Scope -StartRange 192.168.1.50 -EndRange 192.168.1.60 -SubnetMask 255.255.255.0 -Name "サンプルスコープ" -State InActive

他にもいろいろオプション付けられるけど、とりあえずこのくらいかと。
-StateオプションはActiveにしておくとスコープ作成直後から有効になってしまうので、スコープの作成後にオプションを設定したりするのであれば、一旦InActiveにして非アクティブ状態で作成されるようにしておくと良い。

スコープIDを確認する

スコープを作成すると、その後でオプションの設定時等にやたらとスコープIDを入力するシーンが出てくる。
IDと言っても生成したスコープのネットワークアドレスなんだけど、それを一覧で確認したい場合はGet-DhcpServerv4Scopeコマンドで参照できる

PS C:\Windows\system32> Get-DhcpServerv4Scope
ScopeId         SubnetMask      Name            State    StartRange      EndRange        LeaseDuration
-------         ----------      ----            -----    ----------      --------        -------------
192.168.1.0     255.255.255.0   サンプルスコープ InActive  192.168.1.50    192.168.1.60    8.00:00:00
ja/windows/powershell/dhcpサーバを操作する.1422590972.txt.gz · 最終更新: 2015/01/30 04:09 by makoto