Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> ระบบ >> Windows Server

วิธีติดตั้งและกำหนดค่า DHCP Server บน Windows Server 2019/2016

ในคู่มือนี้ เราจะแนะนำวิธีติดตั้งและกำหนดค่า DHCP Server บน Windows Server 2019 เราจะครอบคลุมทั้งวิธีปกติในการกำหนดค่าตัวเลือก DHCP Server ผ่านคอนโซล GUI และการกำหนดค่า DHCP จากบรรทัดคำสั่ง PowerShell บทความนี้อธิบายรายละเอียดการติดตั้งและกำหนดค่าบทบาท DHCP บน Windows Server การสร้าง DHCP Scopes การกำหนดค่า Scope Options และการจองที่อยู่ IP แบบคงที่

การติดตั้งบทบาท DHCP Server บน Windows Server 2019/2016

ในตัวอย่างนี้ เราจะติดตั้ง DHCP Server บนโฮสต์ Windows Server 2019 ที่มีที่อยู่ IP 192.168.13.4 คุณสามารถใช้ทั้ง Windows Server Core และ Full GUI ในโครงสร้างพื้นฐานขนาดเล็ก ยอมรับได้ที่จะติดตั้ง DHCP Server บนเซิร์ฟเวอร์ที่มีบทบาท Active Directory Domain Controller

⚠ สำคัญ: ต้องกำหนดที่อยู่ IP แบบคงที่ให้โฮสต์ DHCP Server ก่อน เมื่อติดตั้งบทบาท DHCP จากคอนโซล PowerShell บนเซิร์ฟเวอร์ที่มีที่อยู่ IP แบบไดนามิก จะปรากฏคำเตือน

คุณสามารถติดตั้งบทบาท DHCP Server จากคอนโซล Server Manager (Add Roles and Features -> Server Roles)

หลังจากติดตั้งบทบาท DHCP แล้ว คุณต้องทำการกำหนดค่าหลังการติดตั้ง (Post-deployment configuration) ในคอนโซล Server Manager ให้คลิกที่การแจ้งเตือนและเลือก Complete DHCP configuration

คุณจะได้รับแจ้งให้อนุญาต DHCP Server ใหม่ใน Active Directory (หน้าจอ Authorization) เพื่ออนุญาต DHCP Server ใน AD บัญชีของคุณต้องเป็นสมาชิกของกลุ่มโดเมน Enterprise Admins

หากคุณไม่มีสิทธิ์อนุญาต DHCP ใน AD คุณสามารถระบุได้ว่า DHCP Server ของคุณสามารถเริ่มต้นได้โดยไม่ต้องตรวจสอบการอนุญาตโดเมน:

Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\DHCPServer\Parameters" -Name DisableRogueDetection -Value 1 -Force

การติดตั้งและกำหนดค่าผ่าน PowerShell

คุณสามารถใช้คำสั่งต่อไปนี้ในคอนโซล PowerShell เพื่อติดตั้งและกำหนดค่าบทบาท DHCP Server บน Windows Server:

Install-WindowsFeature DHCP –IncludeManagementTools

ตรวจสอบว่าบทบาท DHCP และเครื่องมือจัดการ RSAT-DHCP ถูกติดตั้งแล้ว:

Get-WindowsFeature -Name *DHCP* | Where Installed

อนุญาต DHCP Server ใน Active Directory (ระบุชื่อ DNS ของเซิร์ฟเวอร์และที่อยู่ IP ที่จะใช้โดยไคลเอนต์ DHCP):

Add-DhcpServerInDC -DnsName hq-dc01.woshub.com -IPAddress 192.168.13.4

สร้างกลุ่มความปลอดภัยท้องถิ่นสำหรับ DHCP Server:

Add-DhcpServerSecurityGroup

เพื่อหยุดไม่ให้ Server Manager แสดงการแจ้งเตือนว่าบทบาท DHCP ต้องการการกำหนดค่าเพิ่มเติม ให้รันคำสั่ง:

Set-ItemProperty -Path HKLM:\SOFTWARE\Microsoft\ServerManager\Roles\12 -Name ConfigurationState -Value 2

รีสตาร์ทบริการ DHCPServer:

Restart-Service -Name DHCPServer -Force

ฐานข้อมูลและล็อกของ DHCP Server ถูกเก็บใน %systemroot%\system32\dhcp:

  • dhcp.mdb — ไฟล์ฐานข้อมูล DHCP Server;
  • j50.log – ไฟล์ Transaction Log (ใช้เมื่อกู้คืนการกำหนดค่า DHCP);
  • j50.chk — ไฟล์ Checkpoint;
  • tmp.edb — ไฟล์ทำงานชั่วคราวของ DHCP Server

การกำหนดค่า DHCP Scopes บน Windows Server 2019

หลังจากติดตั้งบทบาท DHCP แล้ว คุณต้องสร้าง DHCP Scopes ที่อธิบายช่วงที่อยู่ IP และพารามิเตอร์อื่นๆ ที่เซิร์ฟเวอร์มอบหมายให้ไคลเอนต์

คอนโซล dhcpmgmt.msc ใช้จัดการ DHCP Server (คุณสามารถจัดการ DHCP Server ท้องถิ่นหรือจากคอมพิวเตอร์ระยะไกลที่ติดตั้ง RSAT) เปิดคอนโซล DHCP ขยายเซิร์ฟเวอร์ของคุณ คลิกขวา IPv4 แล้วเลือก New Scope

ขั้นตอนการสร้าง Scope

  1. ตั้งชื่อ DHCP Scope
  2. ระบุช่วงที่อยู่ IP ที่จะถูกมอบหมายโดย DHCP Scope นี้ และ Subnet Mask (ตัวอย่าง: ใช้สำหรับเครือข่าย 192.168.100.0/24 DHCP จะมอบหมาย IP แบบไดนามิกจากช่วง 192.168.100.50 - 192.168.100.250)
  3. เพิ่ม Exclusions ในช่วงนี้ (Add Exclusions and Delay) หากต้องการ
  4. ระบุระยะเวลาการเช่า (Lease Duration) ของที่อยู่ IP ไคลเอนต์ DHCP (ค่าเริ่มต้น 8 วัน ไม่ควรเปลี่ยนหากไม่มีความจำเป็นพิเศษ)
  5. เลือกว่าต้องการกำหนดค่า DHCP Scope Options เพิ่มเติมหรือไม่
  6. ระบุที่อยู่ IP ของ Default Gateway ในเครือข่ายที่ควรมอบหมายให้ไคลเอนต์ (ตัวอย่าง: 192.168.100.1)
  7. ระบุชื่อโดเมนและที่อยู่ IP DNS Server ที่จะเผยแพร่ให้ไคลเอนต์ DHCP
  8. เปิดใช้งาน DHCP Scope (อนุญาตให้ให้บริการไคลเอนต์)

DHCP Scope Options

DHCP Server สามารถมอบหมายการตั้งค่าต่างๆ ให้ไคลเอนต์ (นอกจากที่อยู่ IP) Scope Options ถูกใช้สำหรับสิ่งนี้

ใน Windows Server DHCP คุณสามารถกำหนดค่าการตั้งค่า Scope ทั่วไป (Global) หรือ Scope Options สำหรับแต่ละ Scope

เราได้กำหนดค่า Scope Options 3 รายการไว้ก่อนหน้านี้:

  • 003 Router
  • 006 DNS Server
  • 015 DNS Domain Name

ตัวเลือกอื่นๆ สามารถเพิ่มได้ (NTP Server, PXE Settings ฯลฯ)

ในส่วน Server Options ของ DHCP Server คุณสามารถกำหนดค่าตัวเลือกทั่วไปที่จะถูกสืบทอดโดยทุก Scope อย่างไรก็ตาม คุณสามารถแทนที่การตั้งค่าทั่วไปในการตั้งค่าของแต่ละ Scope ได้ (Scope Options มีความสำคัญมากกว่า Server Options)

💡 หมายเหตุ: DHCP Server เดียวสามารถให้บริการซับเน็ตและ VLAN หลายร้อยได้ ดังนั้นคุณสามารถสร้างหลาย Scopes บนมันได้ สิ่งสำคัญคือ DHCP Relay Agent ต้องถูกกำหนดค่าบนแต่ละซับเน็ตที่ส่งต่อคำขอ DHCP แบบ Broadcast ไปยัง DHCP Server ของคุณ ในศัพท์ Cisco DHCP Relay เรียกว่า ip helper คุณแม้แต่สามารถกำหนดค่า DHCP Relay บนโฮสต์ Windows Server ได้

DHCP ใช้โปรโตคอล UDP เป็น Transport Packets จากไคลเอนต์ไปเซิร์ฟเวอร์ถูกส่งผ่านพอร์ต 67 UDP และกลับมาผ่าน UDP 68

การกำหนดค่าการจองที่อยู่ IP บน DHCP Server

โดยค่าเริ่มต้น DCHP Server ให้ที่อยู่แบบไดนามิกแก่ไคลเอนต์ หมายความว่าที่อยู่ IP ของไคลเอนต์ใดๆ สามารถเปลี่ยนแปลงได้ หากคุณต้องการให้อุปกรณ์บางอย่างได้รับที่อยู่ IP แบบคงที่จาก DHCP Server เสมอ คุณสามารถจองได้ (เช่น สำหรับเครื่องพิมพ์เครือข่ายที่เชื่อมต่อกับคอมพิวเตอร์ของผู้ใช้)

ในการสร้าง DHCP Reservation ให้เลือก Scope และไปที่ส่วน Reservation เลือก New Reservation จากเมนู

เมื่อสร้าง Reservation คุณต้องระบุที่อยู่ IP ที่คุณต้องการมอบหมายให้อุปกรณ์และที่อยู่ MAC ที่ไม่ซ้ำกันของมัน ที่อยู่ MAC ใน Windows สามารถได้จากผลลัพธ์ของคำสั่ง ipconfig /all หรือโดยใช้ PowerShell (Get-NetAdapter | select Name, Macaddress) เพิ่มเติม คุณสามารถระบุชื่อและคำอธิบายของอุปกรณ์ได้

คุณยังสามารถจองที่อยู่ไดนามิกปัจจุบันสำหรับอุปกรณ์ได้โดยการค้นหามันในส่วน Address Leases ของคอนโซล DHCP คลิกที่อุปกรณ์และเลือก Add to Reservation

วิธีกำหนดค่าและจัดการ DHCP Server ด้วย PowerShell

คุณสามารถดำเนินการทั้งหมดสำหรับการกำหนดค่าและจัดการ DHCP Server ใน Windows Server 2019/2016 จากคอนโซล PowerShell มาดูคำสั่งจัดการ DHCP พื้นฐาน โมดูล DHCPServer ถูกใช้สำหรับสิ่งนี้ นำเข้าโมดูลเข้าสู่เซสชัน PowerShell:

Import-Module DHCPServer

คุณสามารถแสดงรายการ Cmdlet ทั้งหมดในโมดูล DHCP ได้ดังนี้:

Get-Command -Module DHCPServer

คำสั่ง PowerShell ที่ใช้บ่อย

  • แสดงรายการ DHCP Servers ที่ได้รับอนุญาตใน AD: Get-DhcpServerInDC
  • ดึงรายการ DHCP Scopes บนเซิร์ฟเวอร์ที่ระบุ: Get-DhcpServerv4Scope –ComputerName be-dhcp1
  • แสดงการตั้งค่าของ DHCP Scope เฉพาะ: Get-DhcpServerv4Scope –ComputerName be-dhcp1 –ScopeID 192.168.12.0
  • สร้าง DHCP Scope ใหม่แบบ Inactive: Add-DhcpServerv4Scope -Name "NY Branch1 192.168.113.0" -StartRange 192.168.113.50 -EndRange 192.168.113.250 -SubnetMask 255.255.255.0 -State InActive
  • ตั้งค่า DHCP Scope Options (DNS, Domain, Gateway): Set-DhcpServerv4OptionValue -ScopeID 192.168.113.0 -DnsDomain woshub.com -DnsServer 192.168.13.4 -Router 192.168.113.1
  • เพิ่ม Exclusions ใน DHCP Scope: Add-DhcpServerv4ExclusionRange -ScopeID 192.168.113.0 -StartRange 192.168.113.90 -EndRange 192.168.113.100
  • เปิดใช้งาน DHCP Scope: Set-DhcpServerv4Scope -ScopeID 192.168.113.0 -State Active
  • แสดงรายการที่อยู่ IP ที่เช่าออกไปปัจจุบัน: Get-DHCPServerv4Lease -ScopeId 192.168.12.0 -ComputerName be-dhcp1
  • สร้าง Reservation จาก Lease ที่มีอยู่: Get-DhcpServerv4Lease -ComputerName be-dhcp1 -IPAddress 192.168.12.88 | Add-DhcpServerv4Reservation -ComputerName be-dhcp1
  • นำเข้า Reservation จำนวนมากจาก CSV: Import-Csv –Path c:\dhcp\DHCPReservations.csv | Add-DhcpServerv4Reservation -ComputerName be-dhcp1
  • ปิดใช้งาน Scope: Set-DhcpServerv4Scope -ComputerName be-dhcp1 -ScopeId 192.168.12.0 -State InActive
  • ลบ Scope: Remove-DHCPServerv4Scope -ComputerName be-dhcp1 -ScopeId 192.168.12.0 -Force
  • ดูสถิติ DHCP Server: Get-DhcpServerv4Statistics -ComputerName be-dhcp1
  • ส่งออกการกำหนดค่า DHCP Server ไปยัง XML: Export-DHCPServer -ComputerName be-dhcp1 -File C:\dhcp\dhcp-export.xml
  • นำเข้าการกำหนดค่า DHCP Server: Import-DHCPServer -ComputerName be-dhcp2 -File C:\dhcp\dhcp-export.xml -BackupPath C:\dhcpbackup\
💡 เคล็ดลับ: คุณสามารถใช้คำสั่ง Export-DHCPServer ใน Task Scheduler เพื่อสำรองการกำหนดค่า DHCP Server