一次失败的 DNSSEC 轮换导致 .al 瘫痪。现在 1.1.1.1 可告知你验证被绕过的情况
当一次失败的 DNSSEC 密钥轮换导致 .al TLD 不可用时,我们部署了 Negative Trust Anchor 来恢复解析。不过这一次,客户端无需仅凭我们的说明:1.1.1.1 直接在响应中返回 EDE 33——这一新增的 DNS 错误码用于……
A broken DNSSEC rollover took down .al. Now 1.1.1.1 tells you when validation is bypassed
详细说明
Blog 1.1.1.1 DNS DNSSEC +3 Show 3 more tags
6 Tags Show 6 tags
Incident Report Reliability Standards
1.1.1.1 DNS DNSSEC Incident Report Reliability Standards
July 14, 2026
- Selected Tags
- 1.1.1.1 DNS DNSSEC Incident Report Reliability Standards
- All tags
- Matching tags
- No tags found
- 1.1.1.1
- 2FA
- Abuse
- Access
- Access Control Lists (ACLs)
- Accessibility
- Account Takeover
- Acquisitions
- Addressing
- Advanced Certificate Manager
- Advanced DDoS
- Advertising
- Aegis
- Africa
- Afroflare
- Agent Readiness
- Agents
- Agents Week
- AI
- AI Bots
- AI Gateway
- AI Search
- AI-SPM
- AI WAF
- AI Week
- Alertmanager
- Always Online
- AMD
- AMP
- Analytics
- Anonymous
- Anti Malware
- Anycast
- API
- API Gateway
- API Security
- API Shield
- APJC
- Apple
- Application Security
- Application Services
- Area 1 Security
- Argo Smart Routing
- ASCII
- Asia
- Athenian Project
- Atlassian
- Attacks
- Audit Logs
- Austin
- Australia
- Authentication
- Authy
- Automatic HTTPS
- Automatic Platform Optimization
- Automation
- AutoMinify
- Auto Rag
- Awards
- AWS
- Baidu
- Bandwidth Alliance
- Bandwidth Costs
- Best Practices
- Beta
- Better Internet
- BGP
- Birthday Week
- Blackbird
- Black Friday
- Bot Fight Mode
- Bot Management
- Botnet
- Bots
- BPF
- Brand
- Brand Protection
- Brazil
- Browser Insights
- Browser Rendering
- Browser Run
- Bug Bounty
- Bugs
- BYOIP
- Cache
- Cache Purge
- Cache Reserve
- Cache Rules
- California
- Canada
- Cap'n Proto
- CAPTCHA
- Careers
- CASB
- Categories
- CDN
- CDNJS
- Certificate Authority
- Certificate Pinning
- Certificate Transparency
- Certification
- CFSSL
- Challenge Page
- ChatGPT
- China
- China Network
- Christmas
- Chrome
- CIO Week
- CISA
- Claire
- CLI
- ClickHouse
- Clientless
- Clientless Web Isolation
- Cloud Connector
- Cloud Email Security
- Cloudflare Access
- Cloudflare Apps
- Cloudflare Area 1
- Cloudflare Calls
- Cloudflare Email Service
- Cloudflare for Campaigns
- Cloudflare for SaaS
- Cloudflare for Startups
- Cloudflare Gateway
- Cloudflare History
- Cloudflare Images
- Cloudflare Media Platform
- Cloudflare Meetups
- Cloudflare Network
- Cloudflare One
- Cloudflare One Client
- Cloudflare One User Risk Score
- Cloudflare One Week
- Cloudflare Pages
- Cloudflare Polish
- Cloudflare Queues
- Cloudflare Realtime
- Cloudflare Stream
- Cloudflare Tunnel
- Cloudflare TV
- Cloudflare Workers
- Cloudflare Workers KV
- Cloudflare Workers KV (ES)
- Cloudflare Workers (PT)
- Cloudflare Zero Trust
- Cloudforce One
- Cloudy
- Code Orange
- Coinbase
- Colombia
- Community
- Compliance
- Compression
- Config Rules
- Configuration Management
- Congestion Control
- Connectivity
- Connectivity Cloud
- Consumer Services
- Containers
- Content Independence Day
- Content Scanning
- Context
- Core
- COVID-19
- Crawler Hints
- CrowdStrike
- Cryptography
- Crypto Week
- CSAM Reporting
- Customers
- Customer Success
- Customer Zero
- CVE
- CVE-2023-50387
- Cyber Readiness
- Cybersecurity
- D1
- Dashboard
- Data
- Database
- Data Catalog
- Data Center
- Data Localization
- Data Localization Suite
- Data Loss
- Data Loss Prevention
- Data Platform
- Data Privacy Day
- Data Protection
- Data Sovereignty
- Data Transfer Bucket
- DDoS
- DDoS Alerts
- DDoS Reports
- Debugging
- Deep Dive
- Descaler
- Design
- Deskope
- Developer Documentation
- Developer Platform
- Developers
- Developer Spotlight
- Developers Storage
- Developer Week
- Device Security
- DevOps
- DEX
- Digital Experience Monitoring
- Digital Forensics
- Disrupt
- Distributed
- Distributed Systems
- Distributed Web
- Diversity
- DLP
- DMARC
- DNS
- DNS Filtering
- DNS Flood
- DNSSEC
- DNS Security
- Dogfooding
- DoH
- Domain Rankings
- Domain Scoped Roles
- dosd
- Drupal
- Due Process
- Durable Execution
- Durable Objects
- Early Hints
- Earth Day
- eBPF
- EC2
- eCommerce
- Edge
- Edge Computing
- Edge Database
- Edge Rules
- Education
- Egress
- Elastic
- Elections
- Election Security
- Elliptic Curves
- Email Routing
- Email Security
- Email Workers
- EmDash
- Emissions
- Employee Resource Groups
- Encrypted SNI
- Encryption
- Engineering
- Enterprise
- Entropy
- EPYC
- Ethereum
- Europe
- European Union
- Events
- Exploit
- Fancy Bear
- Fast Fonts
- FCC
- Feature Flags
- FedRAMP
- FedRAMP High
- FedRAMP Moderate
- Firefox
- Firewall
- Firmware
- Florida
- Football
- Formal Methods
- Forrester
- Fortran
- Foundation DNS
- Founders' Letter
- France
- Fraud
- Free
- Freedom of Speech
- Front End
- Full Stack
- Full Stack Week
- Fun
- Gartner
- Gatebot
- GA Week
- GDPR
- General Availability
- Generative AI
- Gen X
- Geo Key Manager
- Germany
- GitHub
- Go
- Google Analytics
- Google Cloud
- Google Workspace
- Government Innovation
- Grace Hopper
- Grafana
- GraphQL
- Green
- Grinch
- Growth
- gRPC
- Guest Post
- Hackathon
- Halloween
- Hardware
- HashiCorp
- Hertzbleed
- Heuristics
- History
- Holidays
- Holocaust
- Hong Kong
- Hosting Con
- Hostnames
- HTTP2
- HTTP3
- HTTPS
- Human Rights
- Hurricane
- Hybrid Cloud
- Hyperdrive
- IBM
- ICANN
- iCloud Private Relay
- Identity
- IETF
- IL4
- Image Optimization
- Image Recognition
- Image Resizing
- Image Storage
- Impact
- Impact Week
- I'm Under Attack Mode
- Incident Report
- Incident Response
- India
- Indicators of Compromise
- Indonesian
- Infrastructure
- Infrastructure as Code
- Insights
- Intel
- Interconnection
- Internal DNS
- Internet Performance
- Internet Quality
- Internet Regulation
- Internet Shutdown
- Internet Summit
- Internet Traffic
- Internet Trends
- Internship Experience
- Intrusion Detection
- Investors
- IoCs
- iOS
- IoT
- IPFS
- IPsec
- IPv4
- IPv6
- IRAP
- Israel
- Italy
- IWD
- JAMstack
- Japan
- JavaScript
- Jengo
- Jengo Policy
- Joomla
- Judeoflare
- Kafka
- Kernel
- Keyless SSL
- KeyTrap
- Key Value
- Killnet
- Korea
- Kubernetes
- LangChain
- Latency
- Latin America
- Latinflare
- LavaRand
- Lazarus group
- Leaked Credential Checks
- Legal
- Legal Patents Sable
- LGBTQIA+
- Life at Cloudflare
- Linux
- Lisbon
- Live Streaming
- Llama
- LLM
- Load Balancing
- Localization
- Log4J
- Log4Shell
- Logging
- Log Push
- Logs
- LUA
- Machine Learning
- Magecart
- Magic Firewall
- Magic Network Monitoring
- Magic Transit
- Magic WAN
- Magic WAN Connector
- Malicious JavaScript
- Malware
- Managed Components
- Managed Rules
- March of Cloudflare
- MASQUE
- MCP
- Meerkat
- MeetUp
- Meris
- Message Protocol
- Mexico
- Micro-frontends
- Microsoft
- Microsoft 365
- Microsoft Azure
- Middle East
- Migration Hub
- Milestones
- Miniflare
- Mirage
- Mirai
- Mitel
- Mitigation
- Mixed Content Errors
- MLops
- Mobile
- Mobile SDK
- Model Context Protocol
- Moldova
- Monitoring
- Multi-Cloud
- Multi-User
- MySQL
- NaaS
- Net Neutrality
- Network
- Networking
- Network Interconnect
- Network Performance Update
- Network Protection
- Network Services
- New Year
- NGINX
- Ninjas
- NIST
- Node.js
- North America
- Notebooks
- Notifications
- NSEC3
- OAuth
- Observability
- Oceania
- OCSP
- Offices
- Okta
- Olympics
- Onboarding
- OpenAI
- Open API
- OpenBMC
- OpenDNS
- Open Source
- OpenSSL
- OpenTelemetry
- Optimization
- Origin Rules
- Outage
- Oxy
- Pacific Northwest
- Page Rules
- Page Shield
- Parallels
- Partners
- Partnership
- Password-reuse
- Passwords
- Passwords (PT)
- Patents
- PAYGO
- Payments
- Pay Per Crawl
- PCI Certified
- Peering
- Performance
- Phishing
- php
- Phython
- Pingora
- Pipelines
- PlanetScale
- Plans
- Platform Engineering
- Platform Week
- Plesk
- Policy & Legal
- Politics
- Portugal
- Postgres
- Post Mortem
- Post-Quantum
- Precursor
- Prepared Statements
- Prisma
- Privacy
- Privacy Pass
- Privacy Week
- Private IP
- Private Network
- Product Design
- Product News
- Programming
- Programming (PT)
- Project Fair Shot
- Project Galileo
- Project Honey Pot
- Project Pangea
- Project Safekeeping
- Project Turpentine
- Prometheus
- Protocols
- Proudflare
- Proxying
- Public Sector
- Python
- Queues
- QUIC
- QUICHE
- Quicksilver
- R2
- R2 Super Slurper
- Radar
- Radar Alerts
- Radar API
- Radar Maps
- Railgun
- Randomness
- Ransom Attacks
- Rapid Reset
- Raspberry Pi
- Rate Limiting
- RC4
- RDDoS
- React
- Reading List
- Real-time
- Recruiting
- Regional Services
- Registrar
- Reliability
- Remote Browser Isolation
- Remote Desktop Protocol
- Remote Work
- Replication
- Research
- Resolver
- Restreaming
- Retreat
- Reverse Engineering
- REvil
- Risk Management
- Road to Zero Trust
- Rocket Loader
- RocksDB
- Routing
- Routing Security
- RPKI
- RRDNS
- RSA
- Russia
- Rust
- Rust Workers
- SaaS
- SAAS Security
- Sable
- Salt
- Sampling
- Sandbox
- SASE
- Save The Web
- SDK
- Search Engine
- Secrets Store
- Secure Web Gateway
- Security
- Security Analytics
- Security Center
- Security Posture
- Security Posture Management
- Security Service Edge
- security.txt
- Security Week
- SEO
- Serverless
- Serverless AI
- Serverless (PT)
- Serverless Week
- Server Push
- Servers
- SIEM
- Signed Exchanges (SXG)
- SIM
- Singapore
- Single Sign On (SSO)
- Smart Placement
- Smart Shield
- Snippets
- SOC as a Service
- South Africa
- South America
- Spain
- spdy
- Spectrum
- Speed
- Speed Brain
- Speed & Reliability
- Speed Week
- Spoofing
- Sports
- SQL
- SRE
- SSE
- SSH
- SSL
- Standards
- Startup Enterprise Plan
- Statistics
- StopTheHacker
- Storage
- Sumo Logic
- Super Bowl
- Supercloud
- Supply Chain Attacks
- Support
- Sustainability
- SWAG
- SWG
- Swift
- Switzerland
- SXSW
- SYN
- SYN Flood
- Syria
- TCP
- Team
- Teams Dashboard
- TechCrunch
- Technical Writing
- Tech Talks
- Terraform
- Testimonials
- Testing
- Texas
- Thanksgiving
- The Serverlist Newsletter
- Threat Data
- Threat Feeds
- Threat Intelligence
- Threat Operations
- Threats
- Tiered Cache
- TikTok
- TLS
- TLS 1.3
- Tools
- Tor
- Tracing
- Traffic
- Transform Rules
- Transparency
- Trends
- Trust & Safety
- TTFB
- TTL
- TURN
- TURN Server
- Turnstile
- TypeScript
- UDP
- Ukraine
- United Kingdom
- Universal SSL
- URL Scanner
- USA
- User Research
- VDI
- Vectorize
- Vetflare
- Video
- Visibility
- Vite
- VoIP
- VPC
- VPN
- Vulnerabilities
- WAF
- WAF Attack Score
- WAF Rules
- Waiting Room
- WARP
- WARP Connector
- WASM
- Web3
- Web Application Firewall
- WebAssembly
- Web Asset Discovery
- Webinars
- WebP
- WebRTC
- WebSockets
- Wildebeest
- Womenflare
- WordPress
- Workers AI
- Workers Launchpad
- Workers Logs
- Workers Observability
- Workers Sites
- Workers Unbound
- Workers VPC
- Workflows
- World IPv6 Day
- Wrangler
- x402
- Year in Review
- Z3
- Zaraz
- Zero Day Threats
- Zero Trust
- Zero Trust Week
- Zone Versioning
A broken DNSSEC rollover took down .al. Now 1.1.1.1 tells you when validation is bypassed
Sebastiaan Neuteboom
8 minute read
COPY URL
On July 3, 2026, the Albanian communications authority (AKEP), the operator of the .al country-code top-level domain (TLD) of Albania, attempted a DNSSEC key rollover. Something went wrong, resulting in DNSSEC validation failures. Any validating DNS resolver receiving these signatures was required by the DNSSEC specification to reject them and return errors to clients. That includes 1.1.1.1 , the public DNS resolver operated by Cloudflare.
The .al TLD is the online home of Albanian government services, banks, and media; it ranks #191 on Cloudflare Radar's TLD ranking . Anyone trying to visit those sites, using a validating resolver, found them unreachable during the incident. The failure had the potential to affect every .al domain, regardless of where it was hosted or which authoritative nameservers served it.
Just two months earlier, a similar incident struck .de , the TLD of Germany. As we described in our blog post on the incident , our response was to install a Negative Trust Anchor (NTA) for .de , temporarily suspending DNSSEC validation in 1.1.1.1 to keep domains reachable while the registry resolved the issue. We did the same for . al .
NTAs restore resolution, but silently. A client receiving a response served under an NTA has no way to tell, from the response alone, that DNSSEC validation was bypassed, leaving it unable to distinguish a legitimate answer from a spoofed one. For the .al incident, 1.1.1.1 addressed that gap for the first time, returning a new Extended DNS Error (EDE) code alongside every affected response to signal that the answer was not DNSSEC-validated due to the presence of an NTA.
The graph below shows the SERVFAIL and NOERROR rates for .al queries on 1.1.1.1 throughout July
- The SERVFAIL rate climbs as cached records expire and resolvers are forced to revalidate. It drops sharply when the NTA is applied at 17:15 UTC, restoring resolution.
What happened to .al
We discussed how DNSSEC works in more detail in our prior blog post . A brief recap:
DNSSEC builds a chain of trust from the root zone down to individual domain names. The root zone holds a Delegation Signer (DS) record for each signed TLD, a fingerprint of that TLD's DNSKEY. A resolver verifying .al checks that the DNSKEY served by .al 's nameservers matches the DS record in the root. If it does, the resolver trusts that DNS responses from .al 's nameservers are authentic. The same pattern repeats one level down: .al holds DS records for its signed child zones, each with a matching DNSKEY. A break anywhere in that chain, such as a DS record pointing to a key that no longer exists, causes validation to fail for everything below it.
Before the incident, the root zone held a DS record matching the DNSKEY served by the .al nameservers, as illustrated below.
At around 14:15 UTC, the .al operator published a new DNSKEY and stopped serving the old one. The DS record in the root zone still pointed to the old DNSKEY (id=26319), so any resolver attempting to validate .al responses found no matching key and failed.
At roughly 17:00 UTC, the .al operator removed the new DNSKEY without restoring the old one. The zone now had no DNSKEY records at all, while the DS record in the root still pointed to id=26319, and resolution continued to fail.
At roughly 19:15 UTC, the .al operator removed the DS record from the root zone. Without a DS record, resolvers no longer expected DNSSEC validation for .al , and resolution was restored, though the entire TLD was now unsigned.
As of publishing, .al remains unsigned. The DS record has not been restored to the root zone by the .al operators. Without a DS record, every .al domain is unable to use DNSSEC protections.
Why Negative Trust Anchors are used
Having a broken DNSSEC configuration can be painful, especially when it impacts an entire TLD at once. As we covered in our .de incident blog , recursive DNS operators can install a Negative Trust Anchor (NTA) as defined in RFC 7646 , which tells a resolver to treat a zone as unsigned and bypass validation. Before installing the NTA, we attempted to reach the .al operator directly and posted on the DNS-OARC Mattermost to alert the community. We received no response, in part because the operator's contact addresses were themselves under .al , making them unreachable during the outage.
We applied the NTA for .al and rolled it out to all 1.1.1.1 users by 17:15 UTC, roughly three hours after the chain broke.
The tradeoff is the same as it was for .de : a Negative Trust Anchor suspends DNSSEC validation, which means .al domains were no longer protected against DNS spoofing for the duration. We judged this acceptable for the same reason: the failure was public, confirmed, and affecting every validating resolver equally.
The Negative Trust Anchor was removed the following day, once the .al operator had removed the DS record from the root zone. With no DS record present, resolvers no longer expected DNSSEC for .al and the NTA was no longer needed.
The problem with Negative Trust Anchors
Installing a Negative Trust Anchor is an aggressive measure. We suspend DNSSEC validation to keep domains reachable, accepting that responses are no longer cryptographically verified for the duration. Users get answers instead of SERVFAIL, but those answers carry no DNSSEC guarantee.
What makes this harder is that, up until now, nothing in the DNS response signalled this to the client; a response served under an NTA looked identical to a fully validated one. RFC 7646 acknowledges this gap and recommends that operators publicly disclose which NTAs they have in place, but that disclosure is out-of-band. For both the .de and .al incidents we published status pages, but a status page requires the user to go looking. An application, a monitoring tool, or a user querying 1.1.1.1 had no way to tell, from the response alone, that DNSSEC validation was bypassed.
Bringing transparency to Negative Trust Anchors
Extended DNS Error (EDE) codes, defined in RFC 8914 , allow resolvers to include additional context alongside any DNS response, whether that is an error or a successful answer. Babak Farrokhi at Quad9 proposed an Internet-Draft to signal the presence of a Negative Trust Anchor directly in the DNS response, using a new EDE code: Disclosure of Negative Trust Anchors in DNS Responses . We joined as co-authors, and 1.1.1.1 now implements it.
During the .al incident, any query for a .al name returned both the answer and the new EDE code while the Negative Trust Anchor was installed. Here is what that looked like:
$ kdig @1.1.1.1 google.al
;; ->>HEADER
;; Flags: qr rd ra; QUERY: 1; ANSWER: 1; AUTHORITY: 0; ADDITIONAL: 1
;; EDNS PSEUDOSECTION:
;; Version: 0; flags: ; UDP size: 1232 B; ext-rcode: NOERROR
;; EDE: 9 (DNSKEY Missing): 'no SEP matching the DS found for al.'
;; EDE: 33 (Negative Trust Anchor): 'a Negative Trust Anchor has been applied for this query (see RFC 7646)'
;; ANSWER SECTION:
google.al. 300 IN A 142.251.142.196
The response is a NOERROR with a valid answer: google.al resolves, but two EDE codes accompany it. EDE 9 (DNSKEY Missing) surfaces the underlying DNSSEC failure: the chain of trust was broken and validation failed. EDE 33 (Negative Trust Anchor) signals that 1.1.1.1 applied a Negative Trust Anchor and served the response anyway. Together they give clients and operators full visibility into what happened: the answer is real, but it was not DNSSEC-validated.
1.1.1.1 returns EDE 33 on any response generated while an NTA is active, regardless of whether the query itself would have failed DNSSEC validation. A query for a domain that does not use DNSSEC at all will still carry EDE 33 if it falls under an active NTA. This is intentional: the NTA covers the entire zone, and transparency applies equally to every response served under it. This also resolves an issue we flagged in our .de blog, where 1.1.1.1 incorrectly returned EDE 22 (No Reachable Authority) instead of surfacing the underlying DNSSEC error. During the .al incident, 1.1.1.1 correctly returned EDE 9 (DNSKEY Missing) alongside EDE 33.
The Internet-Draft is an individual submission and EDE 33 has been assigned by the Internet Assigned Numbers Authority (IANA) . Thanks to our co-author, Babak Farrokhi at Quad9, the kdig tool from the Knot project now recognizes EDE 33 by name , and a pull request for Unbound is under review. We hope other resolver implementations will follow. The Internet-Draft has been submitted to the Internet Engineering Task Force (IETF) DNSOP Working Group , and will be discussed in the DNSOP Working Group at the IETF meeting, taking place in Vienna from July 18 to July 24.
Closing the gap
TLD-level DNSSEC failures are rare, but when they happen they affect every domain underneath the affected TLD simultaneously, and every validating resolver equally. The .al incident, following closely behind .de , shows that Negative Trust Anchors are a necessary operational tool, but one that has, until now, been invisible to the users they affect.
EDE 33 closes a gap that RFC 7646 left open. A response served under a Negative Trust Anchor now says so directly, giving operators, monitoring tools, and users the information they need to understand what the resolver did and why.
The Internet-Draft is available at the IETF datatracker . If you have thoughts on it, the IETF DNSOP mailing list is the right place to share them.
If you want to learn more about how DNSSEC works, visit our page How does DNSSEC work? And you can always follow real-time DNS trends and TLD data on Cloudflare Radar .
Related tags
1.1.1.1 DNS DNSSEC Incident Report Reliability Standards
Follow on Social Media
- Cloudflare