PowerShell を使用して Exchange ピアリングを作成または変更する
この記事では、PowerShell コマンドレットと Resource Manager デプロイ モデルを使用して、 Microsoft Exchange ピアリングを作成する方法について説明します。 またこの記事では、リソースの状態確認、更新、削除およびプロビジョニング解除の方法も紹介します。
必要に応じて、Azure portal を使用してこのガイドを完了することもできます。
開始する前に
- 構成を開始する前に、前提条件と Exchange ピアリングのチュートリアルを確認します。
- Microsoft との Exchange ピアリングが既にあり、Azure リソースに変換されていない場合は、「PowerShell を使用してレガシの Exchange ピアリングを Azure リソースに変換する」を参照してください。
Azure PowerShell を使用する
コマンドレットを実行するには、無料のインタラクティブ シェルである Azure Cloud Shell を使用できます。 一般的な Azure ツールが事前にインストールされており、アカウントで使用できるように構成されています。 [コピー] を選択してコードをコピーし、Cloud Shell に貼り付けます。 次に、Enter キーを選択して、それを実行します。 Cloud Shell を起動するには、次のようにいくつかの方法があります。
起動方法 | スクリーンショット |
---|---|
ブラウザーで Cloud Shell を開きます。 | |
Azure portal の右上にあるツール バーの [Cloud Shell] ボタンをクリックします。 | |
Azure Cloud Shell を使用しない場合は、代わりにローカルに PowerShell をインストールできます。 PowerShell をローカルにインストールして使用する場合は、必ず Azure Resource Manager PowerShell コマンドレットの最新版をインストールしてください。 PowerShell コマンドレットは、頻繁に更新されます。 最新の機能を利用するには、通常、PowerShell コマンドレットを更新する必要があります。 そうでない場合は、問題が発生する可能性があります。
ローカルで実行されている PowerShell のバージョンを確認するには、'Get-Module -ListAvailable Az' コマンドレットを使用します。 更新するには、「Install the Azure PowerShell module (Azure PowerShell モジュールのインストール)」を参照してください。 詳細については、Azure PowerShell のインストールと構成の方法に関するページを参照してください。
macOS で PowerShell を使用する場合は、「macOS への PowerShell のインストール」の手順に従ってください。
Exchange ピアリングを作成・プロビジョニングする
Azure アカウントにサインインしてサブスクリプションを選択する
構成を開始する前に、必要なモジュールをインストールしてインポートします。 PowerShell でモジュールをインストールするには、管理者特権が必要です。
Az モジュールをインストールしてインポートします。
Install-Module Az -AllowClobber Import-Module Az
Az.Peering モジュールをインストールしてインポートします。
Install-Module -Name Az.Peering -AllowClobber Import-Module Az.Peering
次のコマンドを使用して、モジュールが正しくインポートされたことを確認します。
Get-Module
次のコマンドを使用して Azure アカウントにサインインします。
Connect-AzAccount
アカウントのサブスクリプションを確認し、ピアリングを作成するサブスクリプションを選択します。
Get-AzSubscription Select-AzSubscription -SubscriptionId "subscription-id"
リソース グループがまだない場合は、ピアリングを作成する前に、作成しておく必要があります。 リソース グループを作成するには、次のコマンドを実行します。
New-AzResourceGroup -Name "PeeringResourceGroup" -Location "Central US"
重要
まだ ASN とサブスクリプションを関連付けていない場合は、ピア ASN の関連付けに関するページの手順に従ってください。 この操作はピアリングを要求するために必要です。
Note
リソース グループの場所は、ピアリングを設定するために選択する場所とは関係ありません。
Exchange ピアリングでサポートされているピアリングの場所の一覧を取得する
PowerShell コマンドレット Get-AzPeeringLocation の必須パラメーター Kind
によって、ピアリングの場所の一覧が返されます。これは後述の手順で使用します。
Get-AzPeeringLocation -Kind "Exchange"
Exchange ピアリングの場所には、次のフィールドが含まれます。
- ExchangeName
- PeeringLocation
- Country
- PeeringDBFacilityId
- PeeringDBFacilityLink
- MicrosoftIPv4Address
- MicrosoftIPv6Address
PeeringDB を参照して、そこが目的のピアリング ファシリティであることを確認します。
この例は、ピアリングの場所として Seattle を使用してピアリングを作成する方法を示します。
$exchangeLocations = Get-AzPeeringLocation -Kind Exchange
$exchangeLocation = $exchangeLocations | where {$_.PeeringLocation -eq "Seattle"}
#check the location metadata
$exchangeLocation
ExchangeName : Columbia IX
PeeringLocation : Seattle
Country : US
PeeringDBFacilityId : 99999
PeeringDBFacilityLink : https://www.peeringdb.com/ix/99999
MicrosoftIPv4Address : 10.12.97.129
MicrosoftIPv6Address :
ExchangeName : Equinix Seattle
PeeringLocation : Seattle
Country : US
PeeringDBFacilityId : 11
PeeringDBFacilityLink : https://www.peeringdb.com/ix/11
MicrosoftIPv4Address : 198.32.134.152
MicrosoftIPv6Address : 2001:504:12::15
...
Exchange ピアリングを作成する
次の例では、シアトルの Equinix Internet Exchange で Exchange 接続を作成する方法を示します。 別のプロバイダーと設定を使用する場合は、要求を実行するときにその情報に置き換えてください。
PowerShell コマンドレット New-AzPeeringExchangeConnectionObject を使用して、新しいピアリング要求の生成に使用される PowerShell 接続オブジェクトを作成します。
次の例は、Exchange 接続を作成する方法を示します。
$connection1 = New-AzPeeringExchangeConnectionObject `
-PeeringDBFacilityId $exchangeLocation[1].PeeringDBFacilityId `
-PeerSessionIPv4Address 198.32.134.22 `
-PeerSessionIPv6Address 2001:504:12::22 `
-MaxPrefixesAdvertisedIPv4 2000 `
-MaxPrefixesAdvertisedIPv6 2000 `
指定されたピアリングの場所で冗長性が必要になる場合に備えて、もう 1 つの接続を作成します。
$connection2 = New-AzPeeringExchangeConnectionObject `
-PeeringDBFacilityId $exchangeLocation[1].PeeringDBFacilityId `
-PeerSessionIPv4Address 198.32.134.23 `
-PeerSessionIPv6Address 2001:504:12::23 `
-MaxPrefixesAdvertisedIPv4 2000 `
-MaxPrefixesAdvertisedIPv6 2000 `
PowerShell コマンドレット New-AzPeering を使用して、新しい Exchange ピアリングを作成できます。
$asn = Get-AzPeerAsn
New-AzPeering `
-Name "SeattleExchangePeering" `
-ResourceGroupName "PeeringResourceGroup" `
-PeerAsnResourceId $asn.Id `
-PeeringLocation $exchangeLocation[1].PeeringLocation `
-ExchangeConnection $connection1[, $connection2]
次の例は、一方の接続を使用して要求が実行された場合の応答の例を次に示します。
Name : SeattleExchangePeering
Sku.Name : Basic_Exchange_Free
Kind : Exchange
Connections : {11}
PeerAsn.Id : /subscriptions/{subscriptionId}/providers/Microsoft.Peering/peerAsns/{peerAsnName}
PeeringLocation : Seattle
ProvisioningState : Succeeded
Location : West US 2
Id : /subscriptions/{subscriptionId}/resourceGroups/PeeringResourceGroup/providers/Microsoft.Peering/peerings/SeattleExchangePeering
Type : Microsoft.Peering/peerings
Tags : {}
重要
Microsoft は、要求されたピアリングのプロビジョニングを開始します。進捗状況は、ConnectionState
に反映されます。
プロビジョニング関連の手順の詳細については、「Exchange ピアリングのチュートリアル」を参照してください。
次に示すように、接続状態を確認できます。
$peering = Get-AzPeering -Name "SeattleExchangePeering" -ResourceGroupName "PeeringResourceGroup"
$peering.Connections
PeeringDBFacilityId : 11
PeerSessionIPv4Address : 198.32.134.22
PeerSessionIPv6Address : 2001:504:12::22
SessionStateV4 : PendingAdd
SessionStateV6 : PendingAdd
MaxPrefixesAdvertisedV4 : 2000
MaxPrefixesAdvertisedV6 : 2000
MicrosoftSessionIPv4Address : 198.32.134.152
MicrosoftSessionIPv4Address : 2001:504:12::15
Md5AuthenticationKey :
Exchange ピアリングを取得する
ピアリングの一覧を取得するには、Get-AzPeering コマンドを実行します。
Get-AzPeering ResourceGroupName "PeeringResourceGroup" -Name "SeattleExchangePeering"
次の例は、エンド ツー エンドのプロビジョニングが正常に完了した場合の応答を示します。
Name : SeattleExchangePeering
Sku : Basic_Exchange_Free
Kind : Exchange
PeeringLocation : Seattle
ProvisioningState : Succeeded
PeerAsn : 65000
Connection : ------------------------
PeerSessionIPv4Address : 10.21.31.100
MicrosoftIPv4Address : 10.21.31.50
SessionStateV4 : Established
MaxPrefixesAdvertisedV4 : 20000
PeerSessionIPv6Address : fe01::3e:100
MicrosoftIPv6Address : fe01::3e:50
SessionStateV6 : Established
MaxPrefixesAdvertisedV6 : 2000
ConnectionState : Active
Connection : ------------------------
PeerSessionIPv4Address : 10.21.31.101
MicrosoftIPv4Address : 10.21.31.51
SessionStateV4 : Established
MaxPrefixesAdvertisedV4 : 20000
PeerSessionIPv6Address : fe01::3e:101
MicrosoftIPv6Address : fe01::3e:51
SessionStateV6 : Established
MaxPrefixesAdvertisedV6 : 2000
ConnectionState : Active
Exchange ピアリングを変更する
Exchange ピアリングでは、次の変更操作がサポートされています。
- Exchange ピアリング接続を追加する。
- Exchange ピアリング接続を削除する。
- アクティブな接続で IPv4 または IPv6 セッションを追加する。
- アクティブな接続の IPv4 または IPv6 セッションを削除する。
Exchange ピアリング接続を追加する
次の例では、既存の Exchange ピアリングへの接続を追加する方法について説明します。
$exchangePeering = Get-AzPeering -Name "SeattleExchangePeering" -ResourceGroupName "PeeringResourceGroup"
$connection = New-AzPeeringExchangeConnectionObject `
-PeeringDBFacilityId $exchangeLocation[1].PeeringDBFacilityId `
-PeerSessionIPv4Address 198.32.134.22 `
-PeerSessionIPv6Address 2001:504:12::22 `
-MaxPrefixesAdvertisedIPv4 2000 `
-MaxPrefixesAdvertisedIPv6 2000 `
$exchangePeering.Connections.Add($connection)
$exchangePeering | Update-AzPeering
Exchange ピアリング接続を削除する
次の例では、既存の Exchange ピアリングへの接続を削除する方法について説明します。
$exchangePeering = Get-AzPeering -Name "SeattleExchangePeering" -ResourceGroupName "PeeringResourceGroup"
すべての接続を表示し、削除する接続を選択します。
$exchangePeering
Name : SeattleExchangePeering
Sku.Name : Basic_Exchange_Free
Kind : Exchange
Connections : {11}
PeerAsn.Id : /subscriptions/{subscriptionId}/providers/Microsoft.Peering/peerAsns/{peerAsnName}
PeeringLocation : Seattle
ProvisioningState : Succeeded
Location : West US 2
Id : /subscriptions/{subscriptionId}/resourceGroups/PeeringResourceGroup/providers/Microsoft.Peering/peerings/SeattleExchangePeering
Type : Microsoft.Peering/peerings
Tags : {}
次のコマンドでは、0 ではなく、削除する接続のインデックス番号を入力します。
$connection = $exchangePeering.Connections[0]
$exchangePeering.Connections.Remove($connection)
$exchangePeering | Update-AzPeering
アクティブな接続で IPv4 または IPv6 セッションを追加する
次の例では、既存の Exchange 接続に IPv6 セッションを追加する方法について説明します。
$exchangePeering = Get-AzPeering -Name "SeattleExchangePeering" -ResourceGroupName "PeeringResourceGroup"
$exchangePeering.Connections[0].BgpSession.PeerSessionIPv6Address = "2001:504:12::34"
$exchangePeering | Update-AzPeering
アクティブな接続の IPv4 または IPv6 セッションを削除する
PowerShell では、既存の接続から IPv4 または IPv6 セッションを削除することは現在サポートされていません。 詳細については、Microsoft ピアリングにお問い合わせください。
Exchange ピアリングをプロビジョニング解除する
現在、Azure portal または PowerShell を使ったプロビジョニング解除はサポートされていません。 プロビジョニングを解除するには、Microsoft ピアリングにお問い合わせください。
その他のリソース
次のコマンドを実行することで、すべてのパラメーターの詳細な説明を取得できます。
Get-Help Get-AzPeering -detailed