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

การกำหนด Multiple IP Addresses (Aliases) ให้ Network Interface เดียว

บทนำ

ในบางกรณี Administrator ต้อง Config Multiple IP Addresses บน Network Interface (NIC) เดียวใน Windows ตัวอย่างสถานการณ์: รัน Multiple Sites ที่มี Unique IP Addresses และ SSL Certificates (เช่น SSL Certificates จาก Let's Encrypt) บน IIS หรือ Apache Server เตรียมเปลี่ยน IP Addressing ใน Subnet ผูก Applications กับ IP Addresses ต่างๆ ฯลฯ

บทความนี้แสดงวิธีเพิ่ม Additional Static IP Address บน Network Interface ใน Windows 10 (เพิ่ม IP Address ให้ NIC บน Windows Server ทำได้เหมือนกัน) ก่อนอื่นตรวจสอบว่า NIC มี IP Address เดียวเท่านั้น รันคำสั่ง:

ipconfig

เห็นว่ามี IP Address เดียว (192.168.1.90) บน Local Area Connection (ชื่อ Ethernet0 ในตัวอย่าง)

วิธีที่ 1: เพิ่ม Additional IP Address ผ่าน Windows GUI

  1. Control Panel → Network and Internet → Network and Sharing Center → Change adapter settings (หรือรัน ncpa.cpl)
  2. Properties ของ Network Interface
  3. Select TCP/IP v4 ใน Protocol List → Properties
  4. คลิก Advanced → กด Add ใน IP Addresses Section
  5. ระบุ Additional IP Address, Subnet Mask → Add
  6. Save Changes ด้วย OK หลายครั้ง

ตรวจสอบด้วย ipconfig ว่า IP Address ที่ 2 ปรากฏบน Interface นี้แล้ว

ทดสอบ Availability ของ IP Address ที่ 2 จาก Computers อื่นใน Network เดียวกันด้วย ping ควรตอบสนอง

Flag SkipAsSource

ข้อเสียหลักของการเพิ่ม IP Address ที่ 2 ด้วยวิธีนี้ คือ Flag SkipAsSource (SkipAsSource=False) ไม่ได้ Enable สำหรับมัน หาก SkipAsSource Enabled (True) IP Address นั้นจะไม่ถูกใช้โดย System สำหรับ Outbound Connections เว้นแต่ Application ใด Application หนึ่งใช้มันโดยเฉพาะ นอกจากนี้ หาก Flag Enabled IP Address ที่ 2 จะไม่ Register ใน DNS (แม้ Dynamic Registration จะ Enabled) โดยทั่วไปตั้งค่า Main IP Address ด้วย SkipAsSource Parameter

วิธีที่ 2: กำหนด Second IP Address ด้วย Netsh Command

กำหนด Additional IP Address จาก Command Prompt ด้วย Utility Netsh คำสั่งนี้ตั้งค่า SkipAsSource ให้ IP Address ได้

เปิด Command Prompt as Administrator รัน:

Netsh int ipv4 add address name="Local Area Connection" 192.168.1.92 255.255.255.0 SkipAsSource=True

วิธีที่ 3: เพิ่ม Secondary IP Address ด้วย PowerShell

ใช้ NetIPAddress PowerShell Cmdlets (ปรากฏใน PowerShell Version ของ Windows 2012 / Windows 8)

แสดงรายการ Interfaces ที่มี:

Get-NetIPAddress | ft IPAddress, InterfaceAlias, SkipAsSource
IPAddress        InterfaceAlias    SkipAsSource
---------        --------------    ------------
172.23.53.241    vEthernet         False
192.168.1.90     Ethernet0         False
127.0.0.1        Loopback Pseudo-Interface 1  False

เพิ่ม Additional IP Address สำหรับ Ethernet0 NIC:

New-NetIPAddress –IPAddress 192.168.1.92 –PrefixLength 24 –InterfaceAlias “Ethernet0” –SkipAsSource $True
IPAddress : 192.168.1.92
InterfaceIndex : 11
InterfaceAlias : Ethernet0
AddressFamily : IPv4
Type : Unicast
PrefixLength : 24
PrefixOrigin : Manual
SuffixOrigin : Manual
AddressState : Tentative
ValidLifetime : Infinite ([TimeSpan]::MaxValue)
PreferredLifetime : Infinite ([TimeSpan]::MaxValue)
SkipAsSource : True
PolicyStore : ActiveStore

แก้ไข SkipAsSource Parameter เพื่ออนุญาต Outbound Traffic จาก IP Address นี้ของ Network Interface:

Get-NetIPAddress 192.168.1.92 | Set-NetIPAddress -SkipAsSource $False