前書き#
国外の大手ドメインプラットフォームでドメインを購入した後、NS を Cloudflare に変更すると、次のような状況がよく発生します。

そうです、Cloudflare は役に立たない多くのレコードをスキャンしています。
1000 以上のレコード、700 以上のレコードがあり、非常に抽象的と言えます。
この問題を解決するために、API を繰り返し呼び出して問題を解決しましょう。
チュートリアル#
始める前に、API に関する 2 つの情報を取得する必要があります。
グローバルキー#
まず、Cloudflare アカウントのグローバルキーを取得する必要があります(安全のために、自分で領域を変更する DNS レコードの権限を持つキーを作成することもできますが、私は手間を省くためにグローバルキーを使用しています)。
Cloudflare の右上にある人をクリックし、プロフィールを選択します。

次に、API トークンを見つけるために左側に移動します。

下にスクロールしてグローバルキーを見つけ、表示をクリックします。

パスワードを入力して表示できます。

ゾーン ID#
Cloudflare ダッシュボードでドメインをクリックし、右側にスクロールするとゾーン ID が表示されます。

これら 2 つの情報を覚えておく必要があります。後で使用します。
スクリプト#
ここでは Powershell スクリプトを使用しています。誰かのものに問題があったので、修正しました。
$ZONE_ID   = "YOUR_ZONE_ID"
$baseUrl = "https://api.cloudflare.com/client/v4/zones/$ZONE_ID/dns_records"
$headers = @{
  'X-Auth-Key' = 'YOUR_GLOBAL_KEY'
  'X-Auth-Email' = 'YOUR_EMAIL'
  'Content-Type'  = "application/json"
}
$listUrl = $baseUrl + '?per_page=500'
Write-Host $listUrl
$records = Invoke-RestMethod -Uri $listUrl -Method 'GET' -Headers $headers
$records = $records | Select-Object -ExpandProperty result
foreach ($record in $records) {
  Write-Host "Deleting $($record.name) that points to $($record.content)"
  $deleteUrl = $baseUrl + '/' + $record.id
  Invoke-RestMethod -Uri $deleteUrl -Method 'DELETE' -Headers $headers
  Write-Host $deleteUrl
}
上記のファイルを自分の情報に置き換えて、メモ帳にコピーし、保存して拡張子を.ps1に変更します。
その後、右クリックして「Powershell で実行」を選択します。

一度では完全に削除されない場合は、何度か実行してください。
その後、Cloudflare ダッシュボードに戻ります。
ああ、気持ちいいです。

この記事はMix Spaceから xLog に同期されています。
元のリンクはhttps://blog.nekorua.com/posts/coding/24.htmlです。