AFD custom domain validation never starts for one specific hostname — new hostname on same profile validates in 2 minutes, same hostname on a brand-new profile stays Pending forever

CHEN KUAN CHIEH 0 評価のポイント
2026-08-03T06:10:43.8566667+00:00
## Problem

Custom domain **api.gtn-connect.tokyo** on Azure Front Door Standard profile `fd-gtn-stg` cannot obtain an AFD managed certificate. Domain ownership validation **never starts**: since 2026-07-31 the hostname has been claimed **10 times across three different profiles** (including a throwaway profile created solely as a test), and every claim shows the identical signature:

- `domainValidationState: Pending` (never transitions to Rejected / Timeout / InternalError)
- `deploymentStatus: NotStarted`
- no validation activity in the Activity Log
- no certificate ever issued

The previous managed certificate expired 2026-07-30, so this hostname has been down since.

## The fault follows the hostname, not our configuration

Controlled experiments — same profile, same Azure DNS zone, same settings, TXT published the same way:

| Hostname | Profile | Result |
|---|---|---|
| `api-probe.gtn-connect.tokyo` | existing `fd-gtn-stg` | **Approved + certificate in 2m30s** |
| `api2.gtn-connect.tokyo` | existing `fd-gtn-stg` | **Approved + certificate in 2m30s** |
| `api3.gtn-connect.tokyo` | existing `fd-gtn-stg` | **Approved + certificate in ~6m** |
| `api.gtn-connect.tokyo` | existing `fd-gtn-stg` | Pending forever (3+ days) |
| `api.gtn-connect.tokyo` | **brand-new throwaway profile** | Pending forever |

The validation pipeline is demonstrably healthy for any other hostname. Only this one is stuck, and it stays stuck across profile boundaries and resource re-creation.

## Azure's own diagnostic contradicts the state

The in-portal diagnostic (latest run 2026-08-03 02:12 UTC) reports:

> The public DNS TXT record of `_dnsauth.api.gtn-connect.tokyo` **correctly matches** the expected value `_f3la7ql38qfczfoy037xnu88sasar4k`

…while `domainValidationState` remains `Pending`. Both statements cannot be true.

## Ruled out (all verified)

- DNS: TXT and CNAME verified at all four authoritative name servers; TTL 60
- CAA: no CAA records; CAA queries return NOERROR; zone is not DNSSEC-signed
- Hostname registry: with **all claims released for 24 hours**, `checkHostNameAvailability` returned `nameAvailable: true` — no stale or foreign claim
- Classic Front Door: none in any of our subscriptions
- Edge residue: with claims released, SNI probes return only the platform fallback certificate
- Resource-level corruption: full delete + recreate ×3 (same ARM name, different ARM name, different profile)
- Documented remedies: token regeneration ×3, the empty-PATCH method from the docs (HTTP 200, no async operation header — correlation ID `6103ac71-a421-44b5-b5c3-62952c1dfabd`, 2026-08-01 04:21 UTC), 24h release-and-reclaim
- Quota: far below limits

## Likely origin (pointer for internal logs)

The domain sat in `PendingRevalidation` with an **expired** validation token (token expired 2026-02-06) from ~June 2026 until the certificate expired on 2026-07-30. We suspect the validation job for this hostname died during that window and is never re-created, no matter how the domain is re-claimed.

## Similar recent reports

This looks like the same June–July 2026 pattern as Q&A questions **5930104** (half of domains stuck; asker is a Microsoft employee), **5956768** (four domains stuck 48h+; moderator suggested "open Azure Support for backend validation reset"), and **5926514** (subset of domains no longer revalidating; escalated to the Front Door team).

## Request

Could Microsoft perform (or arrange) a **backend validation reset** for hostname `api.gtn-connect.tokyo` on profile `fd-gtn-stg`, and share what the stuck server-side state was? The resource (`domain-connect-api`) is live, Terraform-managed, DNS fully in place — once the backend state is cleared, validation should complete end-to-end without any action on our side.

We can provide the subscription ID, timestamps for every attempt, and additional correlation IDs privately on request. Interim mitigation is in place (traffic moved to `api2.gtn-connect.tokyo`), so this is Severity-B-equivalent, but the hostname itself is unrecoverable from the customer side.
Azure DNS
Azure DNS

Azure でドメイン ネーム システム (DNS) ドメインをホストできるようにする Azure サービス。


1 件の回答

並べ替え方法: 最も役に立つ
  1. Ganesh Patapati 12,170 評価のポイント Microsoft 外部スタッフ モデレーター
    2026-08-03T22:39:05.7066667+00:00

    Hello CHEN KUAN CHIEH

    This behavior is typically related to the Azure Front Door managed certificate revalidation process.

    • Azure Front Door managed certificates are automatically renewed.
    • During certificate issuance and renewal, Azure Front Door revalidates domain ownership using the _dnsauth TXT record.
    • If validation cannot be completed, the domain may transition to: Pending revalidation,Domain validation needed,Certificate needed.

    NOTE: A common mistake with DNS providers is how the hostname is entered. Some providers append the domain name automatically. Ensure you haven't entered _dnsauth.yourdomain.com as the host, which results in _dnsauth.yourdomain.com.yourdomain.com. Try entering just _dnsauth as the host.

    This can occur even when:

    • The _dnsauth TXT record exists
    • DNS has not changed
    • The domain has been working correctly for a long time

    Validation may fail temporarily due to reasons such as:

    • Transient DNS resolution or propagation delays
    • The managed certificate approaching expiry (~45 days prior), triggering a required revalidation.
    • Timeouts during CA validation checks
    • Internal certificate revalidation cycles within Azure Front Door

    When validation fails, Azure Front Door pauses certificate renewal until ownership can be confirmed again.

    Selecting “Regenerate” under Validate custom domain ownership:

    • Generates a new _dnsauth validation token
    • Restarts the domain validation workflow on the Azure Front Door side

    Once the DNS TXT record is updated with the new value, validation completes and certificate renewal proceeds successfully. This explains why the issue was resolved immediately after regenerating the token.

    The best practice to resolve it is to:

    • Confirm the TXT value currently stored on the Azure Front Door custom domain resource.
    • Confirm the public _dnsauth.<subdomain> TXT record exactly matches that value.
    • If the domain remains Pending, regenerate the validation token from Azure Front Door.
    • Update DNS with the new TXT token.
    • Wait for DNS TTL and refresh the domain validation state.
    • If it remains stuck after the regenerated token is publicly visible, delete and recreate the custom domain

    References:

    Can you please update us if the action plan provided was helpful?

    Please "Accept Answer" and “up-vote” wherever the information provided helps you, this can be beneficial to other community members.

    この回答は役に立ちましたか?


お客様の回答

質問作成者は回答に "承認済み"、モデレーターは "推奨" とマークできます。これにより、ユーザーは作成者の問題が回答によって解決したことを把握できます。