【Windows Server上級 第2回】ネットワークサービスの要。DHCP冗長化とIPAMによるIPアドレス完全管理

「ExcelのIP管理台帳」を、今すぐ捨てなさい。

こんにちは!「LINUX工房」管理人の「リナックス先生」です。
前回は、WSFCによるクラスタリングの基礎を学びました。
サーバーの可用性はこれで確保できましたが、ネットワークがつながらなければ何の意味もありません。

皆さんの現場では、IPアドレスをどうやって管理していますか?
「共有フォルダにあるExcelファイルに手入力」していませんか?
そして、「DHCPサーバーが1台しかなくて、再起動中は誰もネットに繋がらない」なんてことになっていませんか?

コウ君

先生、ギクリとしました……。
うちはLinuxの isc-dhcp-server を1台立ててるだけです。
冗長化しようとして設定ファイルを同期するのが面倒で放置してます。
IP管理台帳も、誰かが更新し忘れてて、固定IPを振ったら「IP競合エラー」が出て怒られるのが日常茶飯事です。
Windows Serverなら、こういうのスマートに解決できるんですか?

リナックス先生

コウ君、それは典型的な「運用負債」ね。
Windows ServerのDHCP機能は非常に強力よ。
設定ファイルの同期なんて不要で、標準機能だけで「アクティブ-アクティブ」の冗長構成が組めるの。
さらに、IPAM(アイパム)という機能を使えば、ネットワーク上のIP利用状況を自動でスキャンして可視化できるわ。
今回もウィンドウズ先生に、ネットワーク管理の極意を教えてもらいましょう!

ウィンドウズ先生

はい、ウィンドウズ先生です。
Linuxエンジニアの方は、DHCPを「設定して終わり」の静的なものと捉えがちですが、Windows環境ではActive DirectoryやDNSと動的に連携する重要なコンポーネントです。
特にWindows Server 2012以降の「DHCPフェイルオーバー」は革命的です。
今回は、絶対に止まらないDHCPの構築と、人間がIP管理をしなくて済むIPAMの世界へご案内します。

本記事では、Windows DHCPサーバーの構築、DHCPフェイルオーバーによる冗長化、PowerShellによる管理自動化、そしてIPAMによる統合管理基盤の構築までを徹底解説します。

🟥 Windows Server【上級】講座(全12回)カリキュラム

現在地:【第2回】ネットワークサービスの要。DHCP冗長化とIPAMによるIPアドレス管理

  • 【第1回】Pacemakerと何が違う?Windowsクラスタリング(WSFC)の仕組みと構築手順
  • 【第2回】ネットワークサービスの要。DHCP冗長化とIPAMによるIPアドレス管理
  • 【第3回】DNSの深淵。スプリットブレインDNS、ゾーン転送、DNSSECの構築
  • 【第4回】証明書基盤 (AD CS)。OpenSSL使いが知るべきエンタープライズPKI
  • 【第5回】リモートアクセスの要塞。RDS (Remote Desktop Services) とVDI入門
  • 【第6回】Infrastructure as Code (IaC)。PowerShell DSCによる構成管理の自動化
  • 【第7回】Software Defined Storage。記憶域スペースダイレクト (S2D) の構築
  • 【第8回】バックアップと災害復旧。Windows Server BackupとVSSの深層
  • 【第9回】ID連携の架け橋。AD FS (Federation Services) とSAML/OIDC連携
  • 【第10回】セキュリティの硬化。AppLockerと監査ログによる要塞化
  • 【第11回】ハイブリッドクラウド管理。Azure Arcによるオンプレミスサーバーのクラウド化
  • 【第12回】マイグレーション戦略。FSMO移行、OSインプレースアップグレードの極意

※入門編(全8回)の復習はこちら:Windows Server入門講座 アーカイブ


第1章:Windows DHCPサーバーの構築。Linuxとの決定的な違い

まずは基本となるDHCPサーバーを構築します。
Linuxの isc-dhcp-server と機能的には同じですが、Windowsならではの作法があります。

1. 構築手順(PowerShell)

GUIの「役割と機能の追加」でも可能ですが、PowerShellなら一瞬です。

# DHCP役割のインストール
Install-WindowsFeature DHCP -IncludeManagementTools

2. ADによる「承認 (Authorize)」の罠

ここがLinuxエンジニアが最もハマるポイントです。
Windows ServerのDHCPは、インストールしただけでは動作しません。
Active Directoryによって「このサーバーは正規のDHCPサーバーである」と承認されない限り、サービスが起動してもクライアントにIPを配布しないのです。
これは、勝手に持ち込まれたルーター等がDHCPを撒き散らす「不正DHCP(Rogue DHCP)」を防ぐためのセキュリティ機能です。

# ADにDHCPサーバーを承認させる(ドメイン管理者権限が必要)
Add-DhcpServerInDC -DnsName "dhcp01.corp.example.com" -IPAddress 192.168.1.10

第2章:スコープ設計とオプション設定

IPアドレスの配布範囲(スコープ)を作成します。

スコープ作成コマンド

# スコープ名: Office_LAN, 範囲: 192.168.1.100 - 192.168.1.200
Add-DhcpServerv4Scope -Name "Office_LAN" `
    -StartRange 192.168.1.100 -EndRange 192.168.1.200 `
    -SubnetMask 255.255.255.0 -State Active

オプション設定(DNS, Gateway)

Linuxの option routersoption domain-name-servers に相当します。

# ゲートウェイ(003)とDNSサーバー(006)の設定
Set-DhcpServerv4OptionValue -ScopeId 192.168.1.0 `
    -OptionId 3 -Value 192.168.1.1
Set-DhcpServerv4OptionValue -ScopeId 192.168.1.0 `
    -OptionId 6 -Value 192.168.1.10, 192.168.1.11

DHCP予約(Reservation)

プリンターやサーバーなど、特定のMACアドレスに常に同じIPを振りたい場合の設定です。

Add-DhcpServerv4Reservation -ScopeId 192.168.1.0 `
    -IPAddress 192.168.1.150 -ClientId "00-15-5D-00-01-02" `
    -Description "Office Printer"

第3章:止まらないDHCP。「DHCPフェイルオーバー」の構築

DHCPサーバーが1台だとSPOF(単一障害点)になります。
昔のWindows Server(2008 R2以前)では、WSFCを使ったクラスタ構成にするか、スコープを「80%と20%」に手動で分割するしかありませんでした。
しかし、Windows Server 2012以降、標準機能として「DHCPフェイルオーバー」が実装されました。

2つのモード

  1. 負荷分散(Load Balance)モード:
    2台のサーバーが同時に稼働し、リクエストを分散処理します(アクティブ-アクティブ)。
    通常はこちらを使います。
  2. ホットスタンバイ(Hot Standby)モード:
    1台が稼働し、もう1台は待機します(アクティブ-パッシブ)。

構築手順

もう1台のサーバー(dhcp02)を用意し、DHCP役割をインストールしておきます(スコープは空でOK)。

Primaryサーバー(dhcp01)で実行:

# dhcp02 とのフェイルオーバー関係を作成(負荷分散モード)
Add-DhcpServerv4Failover -Name "DHCP-Failover" `
    -ScopeId 192.168.1.0 `
    -PartnerServer "dhcp02.corp.example.com" `
    -ComputerName "dhcp01.corp.example.com" `
    -LoadBalancePercent 50 `
    -MaxClientLeadTime 1:00:00 `
    -AutoStateTransition $true `
    -StateSwitchInterval 1:00:00

たったこれだけで、スコープの設定、予約情報、現在のリース情報などがすべて dhcp02 に同期されます。
以降、どちらかのサーバーで予約を追加すると、自動的にもう片方にも反映されます(設定による)。
これがWindows Serverの強みです。


第4章:Excel管理からの卒業。「IPAM」による統合管理

サーバー台数が増えてくると、「どのIPが空いているか」「このIPは誰が使っているか」が分からなくなります。
そこで登場するのが IPAM (IP Address Management) 機能です。

IPAMとは?

ネットワーク上のDHCPサーバー、DNSサーバー、ドメインコントローラーから情報を収集し、一元管理する機能です。
エージェントレスで動作し、以下のことができます。

PR

  • IPアドレス空間の可視化: 利用率、空き状況のグラフ表示。
  • IPアドレスの追跡: 「いつ、誰が(どのMACアドレス、どのユーザーID)、どのIPを使っていたか」の履歴検索。
  • 設定の一括変更: 複数のDHCPサーバーの設定を中央から変更。

構築手順(概要)

IPAMは専用のサーバー(または管理用サーバー)にインストールします。
※ドメインコントローラーには同居できないので注意してください。

1. 機能のインストール:

Install-WindowsFeature IPAM -IncludeManagementTools

2. プロビジョニング(GPOベース):

# GPOプレフィックスを指定してプロビジョニング
Invoke-IpamGpoProvisioning -Domain "corp.example.com" `
    -GpoPrefixName "IPAM" `
    -IpamServerFqdn "ipam.corp.example.com"

これにより、IPAM_DHCP, IPAM_DNS, IPAM_DC_NPS という3つのグループポリシー(GPO)が作成されます。

3. サーバー検出と管理:
IPAMコンソールから「サーバー検出の開始」を実行すると、AD内のサーバーが見つかります。
管理対象として「管理」ステータスに変更すると、GPOが適用され、データの収集が始まります。

💡 プロの活用術:監査ログとしてのIPAM
セキュリティインシデント発生時、「この日時に 192.168.1.55 を使っていたのは誰だ?」という調査が必要になります。
DHCPログをgrepするのは大変ですが、IPAMなら検索窓にIPと日時を入れるだけで、ユーザー名まで特定できます。
これだけでも導入する価値があります。


第5章:実践!PowerShellでDHCP運用

日々の運用もGUIではなくPowerShellで行いましょう。

1. 現在のリース状況を確認する

「IPが足りない!」と言われた時、誰が使っているか確認します。

Get-DhcpServerv4Lease -ScopeId 192.168.1.0 | Sort-Object IPAddress

2. CSVから大量予約を追加する

PCの入れ替えなどで、大量の予約を一括登録する場合です。

# mac_list.csv (IP,MAC,Name) を読み込む
Import-Csv "C:\mac_list.csv" | ForEach-Object {
    Add-DhcpServerv4Reservation -ScopeId 192.168.1.0 `
        -IPAddress $_.IP -ClientId $_.MAC -Description $_.Name
}

3. MACアドレスフィルタリング(許可リスト)

セキュリティ強化のため、登録されたMACアドレス以外にはIPを払い出さない設定です。

# フィルタの有効化
Set-DhcpServerv4FilterList -Allow $true -Deny $false

# 許可リストへの追加
Add-DhcpServerv4Filter -MacAddress "00-15-5D-00-01-02" -List Allow -Description "CEO Laptop"

まとめ:ネットワーク管理は「自動化」と「可視化」へ

お疲れ様でした!
上級編第2回は、DHCPの冗長化とIPAMについて解説しました。

今回の重要ポイント:

  • Windows DHCPはADの承認がないと動かない(セキュリティ機能)。
  • DHCPフェイルオーバーを使えば、追加コストなしでアクティブ-アクティブ構成が組める。
  • IPAMを導入すれば、Excel管理から脱却し、監査ログ基盤も手に入る。
  • PowerShellを使えば、数千台のIP予約も一瞬で完了する。
ウィンドウズ先生

コウ君、これでネットワークの足回りは盤石です。
DHCPが止まる恐怖や、IP競合のトラブル対応で時間を浪費することはもうありません。
IPAMの画面を見せれば、上司も「おお、管理されてる感があるな!」と喜ぶはずですよ。

IPアドレスの配布ができるようになったら、次は「名前解決」です。
社内システムの要であるDNSサーバー。
しかし、WindowsのDNSには「スプリットブレインDNS」や「Active Directory統合ゾーン」といった独自の概念があります。

次回、第3回は「DNSの深淵。スプリットブレインDNS、ゾーン転送、DNSSECの構築」です。
LinuxのBINDエンジニアが驚く、ADと完全統合されたDNSサーバーの仕組みと、セキュアな設計手法について解説します。お楽しみに!

▼ 冗長化ネットワークを構築する ▼

DHCPフェイルオーバーを試す
「おすすめVPS」

おすすめVPSを見る

ネットワークエンジニアへ
「ITエンジニア転職」

転職エージェントを見る

コメント