จัดการ DHCP ด้วย PowerShell บน Windows Server 2025 แบบมืออาชีพ

DHCP คือบริการสำคัญที่ช่วยแจก IP Address ให้เครื่อง Client, Server, Printer, IP Phone, Access Point และอุปกรณ์เครือข่ายอื่น ๆ โดยอัตโนมัติ หาก DHCP มีปัญหา เครื่องลูกข่ายอาจเข้า Network ไม่ได้ หรือได้ IP ผิดช่วงจนใช้งานระบบองค์กรไม่ได้

บน Windows Server 2025 ผู้ดูแลระบบสามารถจัดการ DHCP ผ่าน PowerShell ได้รวดเร็วกว่า GUI มาก โดยเฉพาะงานที่ต้องสร้าง Scope หลายชุด ตรวจสอบ Lease จำนวนมาก หรือทำรายงาน DHCP ในองค์กร


① DHCP คืออะไร

DHCP ย่อมาจาก Dynamic Host Configuration Protocol

หน้าที่หลักคือแจกค่าระบบเครือข่ายให้อุปกรณ์อัตโนมัติ เช่น

  • IP Address
  • Subnet Mask
  • Default Gateway
  • DNS Server
  • Lease Time
  • Domain Name

ถ้าไม่มี DHCP ผู้ดูแลระบบต้องตั้งค่า IP เองทีละเครื่อง ซึ่งไม่เหมาะกับองค์กรที่มีอุปกรณ์จำนวนมาก


② ทำไมต้องจัดการ DHCP ด้วย PowerShell

PowerShell ช่วยให้ Admin ทำงานได้เร็วขึ้น เช่น

  • ติดตั้ง DHCP Role
  • สร้าง Scope
  • ตั้งค่า Gateway
  • ตั้งค่า DNS
  • ตรวจสอบ IP Lease
  • ลบ Lease
  • Export รายงาน
  • Backup และ Restore DHCP

เหมาะมากกับองค์กรที่มีหลาย VLAN หลาย Site หรือหลาย Scope


③ ติดตั้ง DHCP Server Role

ใช้คำสั่ง

Install-WindowsFeature DHCP -IncludeManagementTools

หลังติดตั้งเสร็จ ควร Restart Server หากระบบร้องขอ

ตรวจสอบสถานะ Role ได้ด้วย

Get-WindowsFeature DHCP

④ ตรวจสอบ DHCP Server

ใช้คำสั่ง

Get-DhcpServerInDC

คำสั่งนี้ใช้ดู DHCP Server ที่ได้รับอนุญาตใน Active Directory

หากยังไม่ Authorize อาจแจก IP ใน Domain ไม่ได้


⑤ Authorize DHCP Server ใน Active Directory

ตัวอย่าง

Add-DhcpServerInDC `
-DnsName "dhcp01.company.local" `
-IPAddress "192.168.1.10"

หลังจากนั้นตรวจสอบอีกครั้ง

Get-DhcpServerInDC

⑥ สร้าง DHCP Scope ใหม่

ตัวอย่าง

Add-DhcpServerv4Scope `
-Name "Office LAN" `
-StartRange 192.168.1.100 `
-EndRange 192.168.1.200 `
-SubnetMask 255.255.255.0

Scope คือช่วง IP ที่ DHCP จะใช้แจกให้ Client


⑦ ตรวจสอบ Scope ทั้งหมด

Get-DhcpServerv4Scope

คำสั่งนี้จะแสดง Scope ID, ชื่อ Scope, ช่วง IP และสถานะการใช้งาน


⑧ เปิดใช้งาน Scope

หาก Scope ยังไม่ Active

Set-DhcpServerv4Scope `
-ScopeId 192.168.1.0 `
-State Active

⑨ ปิดใช้งาน Scope

ตัวอย่าง

Set-DhcpServerv4Scope `
-ScopeId 192.168.1.0 `
-State InActive

เหมาะสำหรับหยุดแจก IP ชั่วคราวในบาง Network


⑩ ตั้งค่า Default Gateway

ตัวอย่าง

Set-DhcpServerv4OptionValue `
-ScopeId 192.168.1.0 `
-Router 192.168.1.1

Gateway คือทางออกไปยัง Network อื่นหรือ Internet


⑪ ตั้งค่า DNS Server

ตัวอย่าง

Set-DhcpServerv4OptionValue `
-ScopeId 192.168.1.0 `
-DnsServer 192.168.1.10,192.168.1.11

สำหรับองค์กรที่ใช้ Active Directory ควรชี้ DNS ไปยัง DNS ภายในเสมอ


⑫ ตั้งค่า Domain Name

ตัวอย่าง

Set-DhcpServerv4OptionValue `
-ScopeId 192.168.1.0 `
-DnsDomain "company.local"

ช่วยให้ Client ได้ค่า Domain ถูกต้อง


⑬ ตรวจสอบ Option ของ Scope

Get-DhcpServerv4OptionValue `
-ScopeId 192.168.1.0

ใช้ตรวจสอบว่า Gateway, DNS และ Domain ถูกตั้งค่าครบหรือไม่


⑭ ดูรายการ IP Lease

Get-DhcpServerv4Lease `
-ScopeId 192.168.1.0

จะแสดงเครื่องที่ได้รับ IP จาก DHCP เช่น

  • IP Address
  • Client ID
  • Host Name
  • Lease Expiry
  • Address State

⑮ ค้นหา Lease ของเครื่องใดเครื่องหนึ่ง

ตัวอย่าง

Get-DhcpServerv4Lease `
-ScopeId 192.168.1.0 |
Where-Object {$_.HostName -like "*PC001*"}

เหมาะสำหรับตามหาเครื่องในระบบ Network


⑯ ลบ IP Lease

ตัวอย่าง

Remove-DhcpServerv4Lease `
-ScopeId 192.168.1.0 `
-IPAddress 192.168.1.120

ใช้เมื่อ IP ค้าง หรือ Client ได้ IP ผิดปกติ


⑰ สร้าง DHCP Reservation

Reservation ใช้จอง IP ให้เครื่องสำคัญ เช่น Printer, NAS, Access Point

ตัวอย่าง

Add-DhcpServerv4Reservation `
-ScopeId 192.168.1.0 `
-IPAddress 192.168.1.50 `
-ClientId "00-11-22-33-44-55" `
-Description "Office Printer"

เครื่องที่มี MAC Address ตรงกันจะได้รับ IP เดิมเสมอ


⑱ ตรวจสอบ Reservation

Get-DhcpServerv4Reservation `
-ScopeId 192.168.1.0

ช่วยตรวจสอบ IP ที่ถูกจองไว้ทั้งหมด


⑲ Export DHCP Configuration

ใช้สำหรับ Backup หรือ Migration

Export-DhcpServer `
-ComputerName "dhcp01" `
-File "D:\Backup\dhcp-backup.xml" `
-Verbose

ควรทำก่อนแก้ไข DHCP ครั้งใหญ่เสมอ


⑳ Import DHCP Configuration

ใช้เมื่อต้องการกู้คืนหรือย้าย DHCP Server

Import-DhcpServer `
-ComputerName "dhcp02" `
-File "D:\Backup\dhcp-backup.xml" `
-BackupPath "D:\Backup" `
-Verbose

ควรทดสอบใน Lab ก่อนใช้งานจริงกับ Production


㉑ Export DHCP Lease เป็น CSV

Get-DhcpServerv4Lease `
-ScopeId 192.168.1.0 |
Export-Csv "D:\Reports\dhcp-lease.csv" -NoTypeInformation

เหมาะสำหรับทำรายงาน IP ที่ถูกใช้งานในองค์กร


㉒ ปัญหา DHCP ที่พบบ่อย

ปัญหาที่เจอบ่อย ได้แก่

  • DHCP Server ยังไม่ Authorize
  • Scope เต็ม
  • Gateway ตั้งค่าผิด
  • DNS Server ผิด
  • มี DHCP ซ้ำในระบบ
  • VLAN ไม่มี DHCP Relay
  • Lease ค้าง
  • Firewall หรือ Network Block

PowerShell ช่วยตรวจสอบปัญหาเหล่านี้ได้เร็วกว่าเปิดหลายหน้าต่างผ่าน GUI


㉓ Best Practice สำหรับ DHCP Server

ควรทำดังนี้

  • แยก Scope ตาม VLAN
  • ตั้งชื่อ Scope ให้เข้าใจง่าย
  • ใช้ Reservation กับอุปกรณ์สำคัญ
  • ตรวจสอบ Scope Usage เป็นประจำ
  • สำรอง DHCP Configuration ก่อนแก้ไข
  • ระวัง DHCP ซ้ำจาก Router หรืออุปกรณ์อื่น
  • ใช้ DHCP Failover หากระบบต้องการความต่อเนื่องสูง

DHCP ที่ดีต้องแจก IP ถูกต้อง ตรวจสอบง่าย และไม่สร้างปัญหาซ้ำใน Network


㉔ GUI หรือ PowerShell ดีกว่า

หัวข้อDHCP ConsolePowerShell
เริ่มต้นง่ายดีมากปานกลาง
สร้าง Scope เดียวดีดี
สร้างหลาย Scopeช้าเร็วมาก
Export Reportจำกัดดีมาก
Automationต่ำสูง
เหมาะกับองค์กรใหญ่ปานกลางดีมาก

สำหรับงานเล็ก GUI ยังสะดวก แต่ถ้าเป็นระบบหลาย VLAN หลายสาขา PowerShell จะช่วยประหยัดเวลามากกว่า


㉕ สรุป

การจัดการ DHCP ด้วย PowerShell บน Windows Server 2025 ช่วยให้ผู้ดูแลระบบสร้าง Scope ตั้งค่า Option ตรวจสอบ Lease ทำ Reservation และสำรองค่าระบบได้รวดเร็วและแม่นยำกว่าการคลิกผ่าน GUI เพียงอย่างเดียว

ทีมงาน comsiam แนะนำให้ Admin ใช้ PowerShell กับ DHCP ตั้งแต่งานพื้นฐาน เช่น ตรวจสอบ Lease และสร้าง Reservation ไปจนถึงงานระดับองค์กรอย่าง Export, Import และ Automation เพราะช่วยลดเวลาทำงานได้จริง และ comsiam มองว่า DHCP ที่บริหารดีคือรากฐานสำคัญของ Network ที่เสถียรในองค์กร

คำถามชวนคิด

ถ้าองค์กรของคุณมี VLAN ใหม่ 20 ชุด คุณจะสร้าง Scope และตั้งค่า Gateway, DNS ทีละหน้าต่าง หรือใช้ PowerShell สร้างทุกอย่างให้เสร็จเป็นชุดเดียว?