从Exchange接收连接器中删除远程IP地址

该任务是从Exchange Server接收连接器中删除IP地址。删除IP地址和IP地址范围在Exchange Admin Center中,一个一个接一个时间将花费大量时间。实现目标的最快方法是使用PowerShell。在本文中,您将学习如何使用PowerShell脚本从Exchange接收连接器中删除远程IP地址。

在Exchange Admin Center中检查远程IP地址

登录到交换管理中心。单击功能窗格邮件流并跟随接收连接器在标签中。选择具有接收连接器的Exchange Server从中删除远程IP地址。单击列表视图中的接收连接器,然后单击工具栏中的编辑图标。

在我们的示例中,它是Exchange Server EX02-2016.EXOIP.LOCAL和SMTP继电器接收连接器。

我们可以看到存在的远程IP地址。

可以在交换管理中心中逐一删除IP地址,但不建议进行。这很耗时,您可能会错过一个IP地址。

我们将如何快速删除Exchange接收连接器中的IP地址?Powershell救援。

准备IP地址CSV文件

您是否已经有要删除的IP地址列表?那太棒了。如果不是,则可以创建一个CSV文件,如下屏幕所示。

这是具有IP地址的CSV的样子。前两个是几个IP地址范围,其他是单个IP​​地址。确保使用相同的CSV文件名和标题“表达”

将CSV文件放在名称relayipsexpression.csvC:温度文件夹。

运行Exchange Management Shell作为管理员。验证PowerShell可以使用该文件读取CSV文件进口-CSVcmdlet。

Import-Csv "C:tempRelayIPsExpression.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

从接收连接器PowerShell脚本中删除IP地址

下载remove-ipreceiveconnector.ps1 PowerShell脚本并将其放入C:脚本文件夹。

确保文件未阻止以防止运行脚本时的错误。在运行PowerShell脚本时,请在文章中阅读更多信息。

另一个选择是将下面的代码复制并粘贴到记事本中。给它名字remove-ipreceiveconnector.ps1并将其放在C:脚本文件夹。

# Fill in the path of your csv file and receive connector
$Csv = "C:tempRelayIPsExpression.csv"
$RC = "EX02-2016SMTP 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 address exists
    if ($RemoteIPRanges -contains $IPEx) {
        $RemoteIPRanges = $RemoteIPRanges | Where-Object { $_ -ne $IPEx }

        # Remove the -WhatIf parameter after you tested and are sure to remove the remote IP addresses
        Set-ReceiveConnector $RC -RemoteIPRanges $RemoteIPRanges -WhatIf
        Write-Host "IP address $($IPEx) removed from receive connector $($RC)" -ForegroundColor Green
    }
    else {
        Write-Host "IP address $($IPEx) does not exist in receive connector $($RC)" -ForegroundColor Yellow
    }
}

运行Exchange Management Shell作为管理员,并运行PowerShell脚本以删除IP地址。该脚本将通过列表中的每个IP地址。

笔记:很高兴知道 - whatif参数是在脚本中添加的。如果您运行脚本,则环境中不会发生任何事情。您将获得一个输出,显示将会发生什么。

在我们的示例中,该脚本将尝试批量将9个IP地址删除到指定的接收连接器中。它不会删除一个IP地址,因为它不存在接收连接器中。

C:scripts.Remove-IPReceiveConnector.ps1

运行脚本后,确认IP地址和接收连接器。

What if: Configuring Receive connector "EX02-2016SMTP Relay".
IP address 192.168.1.70-192.168.1.80 removed from receive connector EX02-2016SMTP Relay
What if: Configuring Receive connector "EX02-2016SMTP Relay".
IP address 192.168.1.75-192.168.1.80 removed from receive connector EX02-2016SMTP Relay
What if: Configuring Receive connector "EX02-2016SMTP Relay".
IP address 192.168.1.99 removed from receive connector EX02-2016SMTP Relay
What if: Configuring Receive connector "EX02-2016SMTP Relay".
IP address 192.168.1.174 removed from receive connector EX02-2016SMTP Relay
What if: Configuring Receive connector "EX02-2016SMTP Relay".
IP address 192.168.1.221 removed from receive connector EX02-2016SMTP Relay
What if: Configuring Receive connector "EX02-2016SMTP Relay".
IP address 192.168.1.222 removed from receive connector EX02-2016SMTP Relay
IP address 192.168.1.234 does not exist in receive connector EX02-2016SMTP Relay
What if: Configuring Receive connector "EX02-2016SMTP Relay".
IP address 192.168.1.235 removed from receive connector EX02-2016SMTP Relay
What if: Configuring Receive connector "EX02-2016SMTP Relay".
IP address 192.168.1.240 removed from receive connector EX02-2016SMTP Relay

我们可以看到一切看起来都很好,我们可以删除-如果什么范围。

第23行,删除-如果什么来自PowerShell脚本的参数并重新运行脚本以从Exchange接收连接器中删除IP地址。

C:scripts.Remove-IPReceiveConnector.ps1

输出出现在下面。

IP address 192.168.1.70-192.168.1.80 removed from receive connector EX02-2016SMTP Relay
IP address 192.168.1.75-192.168.1.80 removed from receive connector EX02-2016SMTP Relay
IP address 192.168.1.99 removed from receive connector EX02-2016SMTP Relay
IP address 192.168.1.174 removed from receive connector EX02-2016SMTP Relay
IP address 192.168.1.221 removed from receive connector EX02-2016SMTP Relay
IP address 192.168.1.222 removed from receive connector EX02-2016SMTP Relay
IP address 192.168.1.234 does not exist in receive connector EX02-2016SMTP Relay
IP address 192.168.1.235 removed from receive connector EX02-2016SMTP Relay
IP address 192.168.1.240 removed from receive connector EX02-2016SMTP Relay

验证您的工作

运行PowerShell脚本后,我们可以确认IP地址已从接收连接器中成功删除。

笔记:*远程网络设置中的IP地址在Exchange Admin Center中将按添加日期对IP地址进行排序。您始终可以单击IP地址以对IP地址进行排序。

另请阅读:

让我们列出带有PowerShell的接收连接器中的IP地址,然后按IP地址进行排序。

(Get-ReceiveConnector -Identity "EX02-2016SMTP relay").RemoteIPRanges | Sort-Object | Format-Table

下面的输出出现。

LowerBound    UpperBound    Netmask CIDRLength   RangeFormat Size Expression
----------    ----------    ------- ----------   ----------- ---- ----------
192.168.1.100 192.168.1.100                    SingleAddress ::1  192.168.1.100

就是这样!使用PowerShell工作从接收连接器中删除IP地址。这个为您服务吗?

结论

您了解了如何从Exchange接收连接器中删除远程IP地址。使用PowerShell脚本从接收连接器中删除IP地址非常好。通过从CSV文件中提取IP,您可以确保没有错误。此方法将节省您的时间和精力。

您喜欢这篇文章吗?您可能还喜欢配置Office 365 SMTP继电器。不要忘记关注我们并分享这篇文章。