ค้นหาเว็บไซต์

นำเข้าที่อยู่ IP ระยะไกลไปยังตัวเชื่อมต่อการรับ Exchange


เราต้องการนำเข้าที่อยู่ IP ระยะไกลไปยัง Exchange รับตัวเชื่อมต่ออย่างรวดเร็ว ในตัวอย่างของเรา เป็นตัวเชื่อมต่อการรับใหม่ที่มีการกำหนดค่าที่อยู่ IP เพียงไม่กี่รายการ การเพิ่มที่อยู่ IP และช่วงที่อยู่ IP ทีละรายการใน Exchange Admin Center ต้องใช้เวลาพอสมควร วิธีที่เร็วกว่าในการบรรลุเป้าหมายของเราคืออะไร? ในบทความนี้ เราจะใช้สคริปต์ PowerShell เพื่อนำเข้าที่อยู่ IP ระยะไกลไปยังตัวเชื่อมต่อการรับ Exchange

ตรวจสอบที่อยู่ IP ระยะไกลใน Exchange Admin Center

ลงชื่อเข้าใช้ศูนย์การจัดการ Exchange คลิกในช่องคุณลักษณะบน การรับส่งอีเมล และตามด้วย ตัวเชื่อมต่อการรับ ในแท็บ เลือก Exchange Server ซึ่งมีตัวเชื่อมต่อการรับเพื่อเพิ่มที่อยู่ IP ระยะไกล คลิก รับตัวเชื่อมต่อ ในมุมมองรายการ และคลิกไอคอน แก้ไข ในแถบเครื่องมือ

ในตัวอย่างของเรา คือ Exchange Server EX02-2016.exoip.local และตัวเชื่อมต่อการรับ SMTP Relay

เราจะเห็นว่ามีการเพิ่มที่อยู่ IP ระยะไกลสองรายการ

หากต้องการเพิ่มที่อยู่ IP ทีละรายการใน Exchange Admin Center สามารถทำได้แต่ไม่แนะนำ ใช้เวลานานและคุณอาจพลาดที่อยู่ IP ได้

เราจะเพิ่มที่อยู่ IP ลงใน Exchange รับตัวเชื่อมต่ออย่างรวดเร็วได้อย่างไร PowerShell เพื่อช่วยเหลือ

เตรียมไฟล์ CSV ที่อยู่ IP

คุณมีรายการที่อยู่ IP ที่คุณต้องการเพิ่มแล้วหรือยัง? เยี่ยมมาก ถ้าไม่เช่นนั้น คุณสามารถสร้างใหม่ได้ตามหน้าจอด้านล่าง หากคุณต้องการใช้ที่อยู่ IP จากตัวเชื่อมต่อการรับ โปรดอ่านบทความส่งออกที่อยู่ IP ระยะไกลจากตัวเชื่อมต่อการรับ Exchange

CSV ที่มีที่อยู่ IP มีลักษณะอย่างไร สองรายการแรกเป็นช่วงที่อยู่ IP สองสามช่วง และช่วงอื่นๆ เป็นที่อยู่ IP เดียว ตรวจสอบให้แน่ใจว่าใช้ชื่อไฟล์ CSV และส่วนหัวเดียวกัน “นิพจน์”

วางไฟล์ CSV ชื่อ RelayIPsExpression.csv ในโฟลเดอร์ C:\temp

เรียกใช้ Exchange Management Shell ในฐานะผู้ดูแลระบบ ตรวจสอบว่า PowerShell สามารถอ่านไฟล์ CSV ด้วย Import-Csv cmdlet

[PS] C:\>Import-Csv "C:\temp\RelayIPsExpression.csv"

Expression
----------
192.168.1.70-192.168.1.80
192.168.1.75-192.168.1.80
192.168.1.99
192.168.1.174
192.168.1.221
192.168.1.222
192.168.1.234
192.168.1.235
192.168.1.240

เตรียมเพิ่มที่อยู่ IP เพื่อรับสคริปต์ PowerShell ของตัวเชื่อมต่อ

ดาวน์โหลดสคริปต์ Add-IPReceiveConnector.ps1 หรือคัดลอกและวางโค้ดด้านล่างใน Notepad ตั้งชื่อให้ว่า Add-IPReceiveConnector.ps1 และวางไว้ในโฟลเดอร์ C:\scripts สร้างโฟลเดอร์สคริปต์หากคุณไม่มี

ตรวจสอบให้แน่ใจว่าไฟล์ไม่ได้ถูกบล็อกเพื่อป้องกันข้อผิดพลาดเมื่อเรียกใช้สคริปต์ อ่านเพิ่มเติมในบทความไม่มีข้อผิดพลาดในการเซ็นชื่อแบบดิจิทัลเมื่อเรียกใช้สคริปต์ PowerShell

# Fill in the path of your csv file and receive connector
$Csv = "C:\temp\RelayIPsExpression.csv"
$RC = "EX02-2016\SMTP Relay"

# Import IP addresses from CSV file
$IPs = Import-Csv $Csv

# Get receive connector
$RCon = Get-ReceiveConnector $RC

# Get receive connector remote IP addresses
$RemoteIPRanges = $RCon.RemoteIPRanges

# Loop through each IP address
foreach ($IP in $IPs) {
    $IPEx = $IP.Expression

    # Check if IP addres already exist
    if ($RemoteIPRanges -contains $IPEx) {
        Write-Host "IP address $($IPEx) already exist in receive connector $($RC)" -ForegroundColor Red
    }
    
    # If IP address not exist than add IP address
    else {
        $RemoteIPRanges += $IPEx

        # Remove the -WhatIf parameter after you tested and are sure to add the remote IP addresses
        Set-ReceiveConnector $RC -RemoteIPRanges $RemoteIPRanges -WhatIf
        Write-Host "IP address $($IPEx) added to receive connector $($RC)" -ForegroundColor Green
    }
}

ข้อมูลสคริปต์ PowerShell Add-IPReceiveConnector.ps1

สคริปต์จะไม่ลบที่อยู่ IP ใด ๆ ในตัวเชื่อมต่อการรับ มันจะตรวจสอบว่ามีการกำหนดค่าที่อยู่ IP หรือไม่ หากใช่ ระบบจะแสดงว่ามีที่อยู่ IP อยู่แล้ว และไปยัง IP ถัดไปในไฟล์ CSV

ตัวอย่าง

เรามีตัวเชื่อมต่อการรับที่มีที่อยู่ IP สองแห่งอยู่แล้ว:

  • 192.168.1.100 ไม่ได้อยู่ในไฟล์ CSV

  • 192.168.1.222 ในไฟล์ CSV

ในขั้นตอนถัดไป เราจะเรียกใช้สคริปต์และดูการทำงานจริง

เพิ่มที่อยู่ IP จำนวนมากเพื่อรับสคริปต์ PowerShell ของตัวเชื่อมต่อ

เรียกใช้ Exchange Management Shell ในฐานะผู้ดูแลระบบ ไปที่เส้นทางสคริปต์และเรียกใช้สคริปต์ Add-IPReceiveConnector.ps1 สคริปต์จะผ่านแต่ละที่อยู่ IP ในรายการ

หมายเหตุ: สิ่งที่ควรทราบคือมีการเพิ่มพารามิเตอร์ -WhatIf ในสคริปต์ หากคุณเรียกใช้สคริปต์ จะไม่มีอะไรเกิดขึ้นในสภาพแวดล้อม คุณจะได้รับผลลัพธ์ที่แสดงว่าอะไรจะเกิดขึ้น

ในตัวอย่างของฉัน สคริปต์จะพยายามเพิ่มที่อยู่ IP เก้ารายการจำนวนมากให้กับตัวเชื่อมต่อการรับที่ระบุ จะไม่เพิ่มที่อยู่ IP เดียวเนื่องจากมีอยู่แล้ว ดังที่แสดงในภาพด้านบน

หลังจากรันสคริปต์แล้ว ให้ยืนยันที่อยู่ IP และตัวเชื่อมต่อการรับ

[PS] C:\>cd \scripts
[PS] C:\scripts>.\Add-IPReceiveConnector.ps1
What if: Configuring Receive connector "EX02-2016\SMTP Relay".
IP address 192.168.1.70-192.168.1.80 added to receive connector EX02-2016\SMTP Relay
What if: Configuring Receive connector "EX02-2016\SMTP Relay".
IP address 192.168.1.75-192.168.1.80 added to receive connector EX02-2016\SMTP Relay
What if: Configuring Receive connector "EX02-2016\SMTP Relay".
IP address 192.168.1.99 added to receive connector EX02-2016\SMTP Relay
What if: Configuring Receive connector "EX02-2016\SMTP Relay".
IP address 192.168.1.174 added to receive connector EX02-2016\SMTP Relay
What if: Configuring Receive connector "EX02-2016\SMTP Relay".
IP address 192.168.1.221 added to receive connector EX02-2016\SMTP Relay
IP address 192.168.1.222 already exist in receive connector EX02-2016\SMTP Relay
What if: Configuring Receive connector "EX02-2016\SMTP Relay".
IP address 192.168.1.234 added to receive connector EX02-2016\SMTP Relay
What if: Configuring Receive connector "EX02-2016\SMTP Relay".
IP address 192.168.1.235 added to receive connector EX02-2016\SMTP Relay
What if: Configuring Receive connector "EX02-2016\SMTP Relay".
IP address 192.168.1.240 added to receive connector EX02-2016\SMTP Relay

เราจะเห็นว่าทุกอย่างดูดี และเราสามารถลบพารามิเตอร์ -WhatIf ได้

ใน บรรทัด 28 ให้ลบพารามิเตอร์ -WhatIf ออกจากสคริปต์ PowerShell และเรียกใช้สคริปต์อีกครั้ง ที่อยู่ IP จะถูกเพิ่มลงในตัวเชื่อมต่อการรับ Exchange ที่อยู่ IP 192.168.1.222 มีอยู่แล้ว และสคริปต์ PowerShell จะไม่เพิ่มที่อยู่ IP นั้น หลังจากนั้นจะเพิ่มที่อยู่ IP ที่เหลือที่อยู่ในรายการต่อไป

[PS] C:\scripts>.\Add-IPReceiveConnector.ps1
IP address 192.168.1.70-192.168.1.80 added to receive connector EX02-2016\SMTP Relay
IP address 192.168.1.75-192.168.1.80 added to receive connector EX02-2016\SMTP Relay
IP address 192.168.1.99 added to receive connector EX02-2016\SMTP Relay
IP address 192.168.1.174 added to receive connector EX02-2016\SMTP Relay
IP address 192.168.1.221 added to receive connector EX02-2016\SMTP Relay
IP address 192.168.1.222 already exist in receive connector EX02-2016\SMTP Relay
IP address 192.168.1.234 added to receive connector EX02-2016\SMTP Relay
IP address 192.168.1.235 added to receive connector EX02-2016\SMTP Relay
IP address 192.168.1.240 added to receive connector EX02-2016\SMTP Relay

ตรวจสอบงานของคุณ

หลังจากเรียกใช้สคริปต์ PowerShell เราสามารถยืนยันได้ว่าเพิ่มที่อยู่ IP ลงในตัวเชื่อมต่อการรับเรียบร้อยแล้ว ทั้งที่อยู่ IP ที่เรามีอยู่แล้วในตัวเชื่อมต่อการรับนั้นมีอยู่และไม่ได้ถูกลบออก นอกจากนี้ สคริปต์ไม่ได้ถูกยกเลิกและไปยังที่อยู่ IP ถัดไปในรายการ

หมายเหตุ: ที่อยู่ IP ใน *การตั้งค่าเครือข่ายระยะไกลใน Exchange Admin Center จะจัดเรียงที่อยู่ IP ตามวันที่เพิ่ม คุณสามารถคลิกที่ที่อยู่ IP เพื่อจัดเรียงที่อยู่ IP ได้ตลอดเวลา

มาแสดงรายการที่อยู่ IP ในตัวเชื่อมต่อรับด้วย PowerShell และจัดเรียงตามที่อยู่ IP

[PS] C:\>(Get-ReceiveConnector -Identity "EX02-2016\SMTP relay").RemoteIPRanges | Sort-Object | Format-Table

LowerBound    UpperBound    Netmask CIDRLength   RangeFormat Size Expression
----------    ----------    ------- ----------   ----------- ---- ----------
192.168.1.70  192.168.1.80                              LoHi ::b  192.168.1.70-192.168.1.80
192.168.1.75  192.168.1.80                              LoHi ::6  192.168.1.75-192.168.1.80
192.168.1.99  192.168.1.99                     SingleAddress ::1  192.168.1.99
192.168.1.100 192.168.1.100                    SingleAddress ::1  192.168.1.100
192.168.1.174 192.168.1.174                    SingleAddress ::1  192.168.1.174
192.168.1.221 192.168.1.221                    SingleAddress ::1  192.168.1.221
192.168.1.222 192.168.1.222                    SingleAddress ::1  192.168.1.222
192.168.1.234 192.168.1.234                    SingleAddress ::1  192.168.1.234
192.168.1.235 192.168.1.235                    SingleAddress ::1  192.168.1.235
192.168.1.240 192.168.1.240                    SingleAddress ::1  192.168.1.240

นำเข้าที่อยู่ IP เพื่อรับตัวเชื่อมต่อที่ใช้งานได้กับ PowerShell สิ่งนี้ได้ผลสำหรับคุณหรือไม่?

อ่านเพิ่มเติม: แสดงรายการที่อยู่ SMTP ทั้งหมดด้วย PowerShell »

บทสรุป

คุณได้เรียนรู้วิธีนำเข้าที่อยู่ IP ระยะไกลไปยัง Exchange รับตัวเชื่อมต่อ เป็นการดีที่จะใช้สคริปต์ PowerShell และเพิ่มที่อยู่ IP ระยะไกลลงในตัวเชื่อมต่อการรับ มันจะทำให้คุณมีเวลาบ้าง สิ่งที่ดีคือสคริปต์จะไม่ลบที่อยู่ IP ที่มีอยู่แล้ว

คุณสนุกกับบทความนี้หรือไม่? คุณอาจต้องการสร้างตัวเชื่อมต่อการส่งใน Exchange อย่าลืมติดตามเราและแบ่งปันบทความนี้

บทความที่เกี่ยวข้อง