ある企業でFortiGateを導入した際、既存のWindowsサーバーと役割分担せずにDHCPサーバーを設定したところ、ネットワーク全体でIPアドレスの重複が発生し大混乱になりました。FortiGateのDHCP機能は強力ですが、適切な設計と設定が不可欠です。
特にスコープ設定やリース時間、既存DHCPサーバーとの共存には細心の注意が必要です。この記事では、実際の運用を踏まえた設定手順とトラブル対処法を解説します。
DHCP(Dynamic Host Configuration Protocol)は、ネットワーク上のデバイスに対してIPアドレスやネットワーク設定を自動的に割り当てるプロトコルです。FortiGateは、ファイアウォール機能に加えてDHCPサーバー機能を内蔵しており、小規模から中規模のネットワークで単独のDHCPサーバーとして運用できます。
FortiGateでDHCPサーバーを構成する主なメリットは、ネットワーク機器の集約による管理の簡素化と、ファイアウォールポリシーとの統合管理です。特に支店やリモートオフィスでは、FortiGate単体でルーティング、セキュリティ、DHCP機能を兼ねることでコスト削減と運用効率化を実現できます。
図1: DHCPサーバーの利用シーン別割合
FortiGateでDHCPサーバーを有効化する最も簡単な方法はGUIを使用することです。以下の手順で設定を進めます。
Network > Interfaces からDHCPサーバーを有効化したいインターフェースを選択し、Editをクリックします。
Addressing欄で「DHCP Server」を有効化し、IPアドレス範囲、ネットマスク、デフォルトゲートウェイを設定します。
DNS Server、NTP Server、ドメイン名などのオプション情報を必要に応じて設定し、OKで保存します。
CLIを使用すると、より詳細な設定や一括設定が可能です。以下は基本的なDHCPサーバー設定例です。
config system dhcp server
edit 1
set dns-service default
set default-gateway 192.168.10.1
set netmask 255.255.255.0
set interface "internal"
config ip-range
edit 1
set start-ip 192.168.10.100
set end-ip 192.168.10.200
next
end
set dns-server1 8.8.8.8
set dns-server2 8.8.4.4
set lease-time 86400
set domain "example.local"
next
endこの設定では、internal インターフェースで192.168.10.100から192.168.10.200までのIPアドレスを配布し、リース時間を24時間(86400秒)に設定しています。DNSサーバーにはGoogleのパブリックDNSを指定しています。
IPアドレスプールは、DHCPサーバーがクライアントに割り当て可能なIPアドレスの範囲です。適切なプール設計には以下の考慮が必要です。
主要なDHCPオプション設定項目
| 設定項目 | 説明 | 推奨値 |
|---|---|---|
| リース時間 | IPアドレスの貸出期間 | 86400秒(24時間) |
| DNSサーバー | 名前解決用DNSサーバーアドレス | 社内DNS推奨 |
| NTPサーバー | 時刻同期サーバーアドレス | ntp.nict.jp等 |
| ドメイン名 | クライアントに配布するドメイン | 会社ドメイン |
| WINSサーバー | Windows環境のNetBIOS名前解決 | 必要時のみ |
リース時間を短く設定しすぎると、DHCPサーバーとクライアント間の通信量が増加し、ネットワーク負荷が高まります。固定的に使用するオフィス環境では24時間以上が推奨です。
特定のデバイスに常に同じIPアドレスを割り当てたい場合、MACアドレスベースの予約設定が有効です。プリンターやサーバーなど、IPアドレスが変わると困る機器に使用します。
config system dhcp server
edit 1
config reserved-address
edit 1
set ip 192.168.10.50
set mac 00:0c:29:3a:4b:5c
set description "Office Printer"
next
edit 2
set ip 192.168.10.51
set mac 00:0c:29:6d:7e:8f
set description "NAS Server"
next
end
next
endこの設定により、指定したMACアドレスのデバイスには必ず同じIPアドレスが割り当てられます。GUIでは、System > DHCP Server > Reserved Addresses から設定できます。
DHCPリレーエージェントは、異なるサブネット間でDHCP要求を中継する機能です。複数のVLANやセグメントがある環境で、単一のDHCPサーバーから全セグメントにIPアドレスを配布する際に使用します。
例えば、本社にDHCPサーバーがあり、支店のFortiGateがリレーエージェントとして動作するケースです。
config system dhcp server
edit 2
set status disable
next
end
config system interface
edit "internal"
set dhcp-relay-service enable
set dhcp-relay-ip 10.1.1.100
next
endこの設定では、internalインターフェースで受信したDHCP要求を、10.1.1.100のDHCPサーバーに転送します。リレーエージェントを使用する場合、該当インターフェースのDHCPサーバー機能は無効にする必要があります。
図2: DHCP設定パターン別推奨構成
DHCPサーバーが正常に動作しているか、どのクライアントにIPアドレスが割り当てられているかを確認するには、以下のコマンドを使用します。
diagnose ip dhcp lease list
# 出力例
IP MAC address Hostname Expires
192.168.10.101 00:0c:29:1a:2b:3c PC-001 23h 45m
192.168.10.102 00:0c:29:4d:5e:6f PC-002 22h 12m
192.168.10.103 00:0c:29:7g:8h:9i PC-003 20h 33mリース一覧から、割り当て済みIPアドレス、MACアドレス、ホスト名、残りリース時間を確認できます。プールの枯渇や特定デバイスの割り当て状況をチェックする際に有効です。
DHCPトラブルシューティングチェックリスト
| 症状 | 原因 | 対処法 |
|---|---|---|
| IPアドレス取得失敗 | DHCPサーバー未有効化、プール枯渇 | 設定確認、プール拡張 |
| IPアドレス重複 | 複数DHCPサーバー稼働、手動設定と競合 | スコープ分離、サーバー統合 |
| DNS解決不可 | DNSサーバー設定誤り | dns-server設定修正 |
| 予約が効かない | MACアドレス入力ミス、スコープ外IP指定 | MAC再確認、IP範囲確認 |
| リレー動作しない | ルーティング不通、ポリシー設定不足 | 経路確認、UDP67/68許可 |
特にIPアドレス重複は深刻な問題です。FortiGate以外にDHCPサーバーが存在していないか、既存サーバーとスコープが重複していないかを必ず確認してください。以下のコマンドでDHCPサーバーの設定状態を確認できます。
show system dhcp server
# DHCPサーバーのデバッグログを有効化
diagnose debug application dhcps -1
diagnose debug enable
# DHCPリース強制削除(慎重に実行)
execute dhcp lease-clear <DHCP server ID>DHCPリースの強制削除は、全クライアントの通信に影響を与える可能性があります。実行前に必ず影響範囲を確認し、メンテナンス時間帯に実施してください。
DHCPの通信がFortiGateを正常に通過しているかを確認するには、パケットキャプチャが有効です。
diagnose sniffer packet internal 'port 67 or port 68' 4 0 l
# 出力例でDHCP Discover/Offer/Request/Ackの流れを確認
# 4はverbosity level、0は無制限、lはヘッダ表示正常なDHCP通信では、DHCP Discover → DHCP Offer → DHCP Request → DHCP Ack の4ウェイハンドシェイクが確認できます。途中で途切れている場合、その段階で問題が発生していると判断できます。
FortiGateのDHCPサーバー機能は、小規模から中規模のネットワークで非常に有効です。適切なスコープ設計とリース時間の設定により、安定したIPアドレス管理を実現できます。トラブル発生時は、リース状況の確認とパケットキャプチャによる通信フローの検証が重要です。
- GUIとCLIの両方でDHCPサーバー設定が可能。CLIはより詳細な制御に有効
- MACアドレス予約で特定機器への固定IP割り当てを実現
- diagnoseコマンドでリース状況を確認し、トラブル時は既存DHCPサーバーとの競合をチェック



