はじめに
このドキュメントでは、Cisco UmbrellaのダイナミックネットワークでPowerShellを使用してIPアドレスを更新する方法について説明します。
前提条件
要件
このドキュメントに関する固有の要件はありません。
使用するコンポーネント
このドキュメントの情報は、Cisco Umbrellaに基づくものです。
このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されました。このドキュメントで使用するすべてのデバイスは、クリアな(デフォルト)設定で作業を開始しています。本稼働中のネットワークでは、各コマンドによって起こる可能性がある影響を十分確認してください。
概要
この記事は、一般的な概要として使用することを目的としています。UmbrellaをダイナミックIPで更新するためにサポートされているオプションのリストは、ここから入手できます。
APIを使用してIPアドレスを更新するには、任意のスクリプト方式を使用できます。この記事では、PowerShellの使用方法について説明します。
このプロセスを開始する前に:
- ダッシュボードを次のように設定します。
- UmbrellaダッシュボードのDeployments > Networksで、ダイナミックネットワークの名前をメモします。
PowerShellを使用して動的IP (ハードコードされたIP)を更新する
1. このネットワークの現在の外部IPアドレスを決定します。これは、このネットワーク上のマシンから実行する必要があります。
$MyIp = Resolve-DnsName myip.opendns.com | Select -ExpandProperty IPAddress
2. 資格情報を取得します。これらのユーザには、ダッシュボードに対する完全な管理者権限が必要です。
$MyCredential = Get-Credential
ポップアップが開きます。
3. メールアドレスとパスワードを入力します。その後、次のコマンドを使用して、これらのクレデンシャルを使用して更新をポストできます。
Invoke-RestMethod -Uri "https://updates.opendns.com/nic/update?hostname=biscuit&myip=$MyIP" -Credential $MyCredential
ダイナミックIPへのアップデートのスクリプトを許可する方式
この方法では、自動使用のためにクレデンシャルを事前に保存しておく必要があります。
注意:この方法は安全ではなく、例としてのみ提供されています。これは、PowerShell 5.1でのみテストされています。
1. 最初に、パスワードを含む難読化されたファイルを生成します。これは1回だけ実行する必要があります。ダッシュボードの完全な管理者ユーザの電子メールアドレスとパスワードを入力します。
(Get-Credential).Password | ConvertFrom-SecureString | Out-File "C:\MyPassword.txt"
2. このファイルは、完全なスクリプトで使用できます。
$UmbrellaNetwork = "your network name"
$User = "your admin email address"
$MyIp = Resolve-DnsName myip.opendns.com | Select -ExpandProperty IPAddress
$File = "C:\MyPassword.txt"
$MyCredential=New-Object -TypeName System.Management.Automation.PSCredential ` -ArgumentList $User, (Get-Content $File | ConvertTo-SecureString)
Invoke-RestMethod -Uri "https://updates.opendns.com/nic/update?hostname=$UmbrellaNetwork&myip=$MyIp" -Credential $MyCredential