<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Duplicate on Wirez</title>
    <link>https://wirez.top/tags/duplicate/</link>
    <description>Recent content in Duplicate on Wirez</description>
    <generator>Hugo</generator>
    <language>en</language>
    <lastBuildDate>Wed, 17 Jun 2026 00:00:00 +0000</lastBuildDate>
    <atom:link href="https://wirez.top/tags/duplicate/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Duplicate query patterns: Why resolvers overload servers</title>
      <link>https://wirez.top/posts/duplicate-query-patterns-why-resolvers-overload-servers/</link>
      <pubDate>Wed, 17 Jun 2026 00:00:00 +0000</pubDate>
      <guid>https://wirez.top/posts/duplicate-query-patterns-why-resolvers-overload-servers/</guid>
      <description>&lt;!-- wp:html --&gt;&#xA;&lt;meta charset=&#34;utf-8&#34;&gt;&#xA;&lt;style&gt;&#xA;/* Platform CSS v3.0 */&#xA;:root {&#xA;  --primary-color: #4285f4;&#xA;  --primary-dark: #0057cc;&#xA;  --success-color: #34a853;&#xA;  --warning-color: #fbbc05;&#xA;  --error-color: #ea4335;&#xA;  --text-primary: #333333;&#xA;  --text-secondary: #666666;&#xA;  --text-light: #888888;&#xA;  --border-color: #e0e0e0;&#xA;  --background-light: #f8f9fa;&#xA;  --background-card: #ffffff;&#xA;  --background-code: #f5f5f5;&#xA;  --spacing-xs: 0.5rem;&#xA;  --spacing-sm: 1rem;&#xA;  --spacing-md: 1.5rem;&#xA;  --spacing-lg: 2rem;&#xA;  --border-radius: 8px;&#xA;  --border-radius-sm: 4px;&#xA;  --box-shadow: 0 2px 8px rgba(0,0,0,0.08);&#xA;  --box-shadow-hover: 0 4px 16px rgba(0,0,0,0.12);&#xA;}&#xA;.section-title {&#xA;  color: var(--text-primary);&#xA;  margin: var(--spacing-lg) 0 var(--spacing-sm);&#xA;  font-size: clamp(1.2rem, 3vw, 1.4rem);&#xA;  font-weight: 600;&#xA;  line-height: 1.3;&#xA;}&#xA;.subsection-title {&#xA;  color: var(--text-primary);&#xA;  margin: var(--spacing-md) 0 var(--spacing-xs);&#xA;  font-size: clamp(1.1rem, 2.5vw, 1.2rem);&#xA;  font-weight: 600;&#xA;}&#xA;.std-text {&#xA;  font-size: 1rem;&#xA;  line-height: 1.6;&#xA;  margin-bottom: var(--spacing-sm);&#xA;  color: var(--text-primary);&#xA;}&#xA;.card {&#xA;  border: 1px solid var(--border-color);&#xA;  padding: var(--spacing-sm);&#xA;  background: var(--background-card);&#xA;  border-radius: var(--border-radius);&#xA;  margin-bottom: var(--spacing-md);&#xA;  box-shadow: var(--box-shadow);&#xA;  transition: transform 0.2s ease, box-shadow 0.2s ease;&#xA;}&#xA;.card:hover {&#xA;  transform: translateY(-2px);&#xA;  box-shadow: var(--box-shadow-hover);&#xA;}&#xA;.emoji-list {&#xA;  font-size: 1rem;&#xA;  line-height: 1.7;&#xA;  margin-bottom: 0.8rem;&#xA;  padding: 0.8rem 0;&#xA;  border-bottom: 1px solid var(--border-color);&#xA;  color: var(--text-primary);&#xA;}&#xA;.emoji-list:last-child { border-bottom: none; }&#xA;.emoji-list strong { color: var(--primary-color); font-weight: 600; }&#xA;.table-container {&#xA;  width: 100%;&#xA;  overflow-x: auto;&#xA;  margin-bottom: var(--spacing-md);&#xA;  border-radius: var(--border-radius);&#xA;  box-shadow: var(--box-shadow);&#xA;}&#xA;.table-container + .table-container {&#xA;  margin-top: 1.5rem;&#xA;}&#xA;.data-table {&#xA;  width: 100%;&#xA;  min-width: 600px;&#xA;  border-collapse: collapse;&#xA;  background: white;&#xA;}&#xA;.data-table th, .data-table td {&#xA;  padding: var(--spacing-sm);&#xA;  border: 1px solid var(--border-color);&#xA;  font-size: 0.9rem;&#xA;  text-align: left;&#xA;}&#xA;.data-table th {&#xA;  background: var(--primary-color);&#xA;  color: white;&#xA;  font-weight: 700;&#xA;  white-space: nowrap;&#xA;}&#xA;.data-table td:first-child { font-weight: 700; }&#xA;.data-table tbody tr:nth-child(even) { background: #f8f9ff; }&#xA;.data-table tbody tr:nth-child(even) td { background: #f8f9ff !important; }&#xA;.data-table tbody tr:nth-child(odd) td { background: white !important; }&#xA;.data-table tr:hover td { background: #e8f0fe !important; }&#xA;.responsive-img {&#xA;  max-width: 100%;&#xA;  height: auto;&#xA;  border-radius: var(--border-radius);&#xA;  box-shadow: var(--box-shadow);&#xA;}&#xA;figure {&#xA;  margin: var(--spacing-lg) auto;&#xA;  text-align: center;&#xA;  width: 100%;&#xA;  max-width: 100%;&#xA;  display: block;&#xA;}&#xA;figure img { margin: 0 auto; display: block; max-width: 100%; height: auto; }&#xA;.img-caption {&#xA;  font-size: 0.9rem;&#xA;  color: var(--text-secondary);&#xA;  text-align: center;&#xA;  margin-top: var(--spacing-xs);&#xA;  font-style: italic;&#xA;}&#xA;.responsive-list {&#xA;  padding-left: 1.5rem;&#xA;  margin: var(--spacing-sm) 0;&#xA;  line-height: 1.7;&#xA;}&#xA;.responsive-list li { margin-bottom: var(--spacing-xs); padding-left: 0.5rem; }&#xA;.responsive-list a { color: var(--primary-color); text-decoration: none; font-weight: 600; }&#xA;.responsive-list a:hover { color: var(--primary-dark); text-decoration: underline; }&#xA;.callout { display:flex; gap:16px; padding:20px; border-radius:12px; margin:24px 0; border-left:4px solid; }&#xA;.callout-icon { font-size:24px; flex-shrink:0; }&#xA;.callout-content { flex:1; }&#xA;.callout-expert { background:#f0f7ff; border-color:#2563eb; }&#xA;.callout-info { background:#f0fdf4; border-color:#16a34a; }&#xA;.callout-warning { background:#fffbeb; border-color:#d97706; }&#xA;.faq-section {&#xA;  margin: var(--spacing-lg) 0;&#xA;  padding: var(--spacing-lg) 0;&#xA;  border-top: 2px solid var(--border-color);&#xA;}&#xA;.faq-section-title {&#xA;  color: var(--text-primary);&#xA;  font-size: clamp(1.2rem, 3vw, 1.4rem);&#xA;  font-weight: 700;&#xA;  margin-bottom: var(--spacing-lg);&#xA;  text-align: center;&#xA;}&#xA;.faq-item {&#xA;  background: var(--background-card);&#xA;  border: 1px solid var(--border-color);&#xA;  border-radius: var(--border-radius);&#xA;  margin-bottom: var(--spacing-sm);&#xA;  overflow: hidden;&#xA;  transition: all 0.3s ease;&#xA;}&#xA;.faq-item:hover {&#xA;  border-color: var(--primary-color);&#xA;  box-shadow: var(--box-shadow-hover);&#xA;  transform: translateY(-2px);&#xA;}&#xA;.faq-question {&#xA;  background: var(--background-light);&#xA;  padding: var(--spacing-sm) var(--spacing-md);&#xA;  cursor: pointer;&#xA;  position: relative;&#xA;  transition: all 0.3s ease;&#xA;  border: none;&#xA;  width: 100%;&#xA;  text-align: left;&#xA;  font-family: inherit;&#xA;}&#xA;.faq-question:hover { background: #e8f0fe; }&#xA;.faq-question-text {&#xA;  color: var(--text-primary);&#xA;  font-size: 1rem;&#xA;  font-weight: 600;&#xA;  line-height: 1.5;&#xA;  margin: 0;&#xA;  padding-right: 2rem;&#xA;}&#xA;.faq-answer {&#xA;  max-height: 0;&#xA;  overflow: hidden;&#xA;  transition: max-height 0.4s ease, padding 0.4s ease;&#xA;  padding: 0 var(--spacing-md);&#xA;}&#xA;.faq-item.active .faq-answer {&#xA;  max-height: 1000px;&#xA;  padding: 0 var(--spacing-md) var(--spacing-md);&#xA;}&#xA;.faq-answer-text {&#xA;  color: var(--text-secondary);&#xA;  font-size: 1rem;&#xA;  line-height: 1.7;&#xA;  margin: var(--spacing-sm) 0 0;&#xA;}&#xA;.about-section {&#xA;  background: var(--background-light);&#xA;  border-left: 4px solid var(--primary-color);&#xA;  border-radius: var(--border-radius);&#xA;  padding: var(--spacing-md) var(--spacing-lg);&#xA;  margin: var(--spacing-lg) 0;&#xA;}&#xA;.about-section .std-text {&#xA;  color: var(--text-secondary);&#xA;  font-size: 0.95rem;&#xA;  margin-bottom: 0;&#xA;}&#xA;.conclusion-section {&#xA;  border-top: 2px solid var(--border-color);&#xA;  padding-top: var(--spacing-lg);&#xA;  margin-top: var(--spacing-lg);&#xA;}&#xA;.conclusion-section .std-text {&#xA;  font-size: 1.05rem;&#xA;  line-height: 1.7;&#xA;}&#xA;@media (max-width: 768px) {&#xA;  .card { padding: 0.75rem; }&#xA;  .data-table { min-width: 100%; font-size: 0.8rem; }&#xA;  .data-table th, .data-table td { padding: 0.5rem 0.25rem; }&#xA;  .emoji-list { font-size: 0.95rem; }&#xA;}&#xA;@media (max-width: 480px) {&#xA;  .section-title { margin: var(--spacing-sm) 0 0.5rem; }&#xA;  .card { padding: 0.5rem; }&#xA;  .data-table th, .data-table td { padding: 0.4rem 0.2rem; font-size: 0.75rem; }&#xA;}&#xA;@media (prefers-reduced-motion: reduce) {&#xA;  *, *::before, *::after {&#xA;    animation-duration: 0.01ms !important;&#xA;    transition-duration: 0.01ms !important;&#xA;  }&#xA;}&#xA;&lt;/style&gt;&#xA;&lt;!-- wp:html --&gt;&#xA;&lt;style&gt;&#xA;/* CSS переменные для единообразного стиля */&#xA;:root {&#xA;  --primary-color: #4285f4;&#xA;  --primary-dark: #0057cc;&#xA;  --success-color: #34a853;&#xA;  --warning-color: #fbbc05;&#xA;  --error-color: #ea4335;&#xA;  --text-primary: #333333;&#xA;  --text-secondary: #666666;&#xA;  --text-light: #888888;&#xA;  --border-color: #e0e0e0;&#xA;  --background-light: #f8f9fa;&#xA;  --background-card: #ffffff;&#xA;  --background-code: #f5f5f5;&#xA;  --warning-bg: #fff8f8;&#xA;  --spacing-xs: 0.5rem;&#xA;  --spacing-sm: 1rem;&#xA;  --spacing-md: 1.5rem;&#xA;  --spacing-lg: 2rem;&#xA;  --border-radius: 8px;&#xA;  --border-radius-sm: 4px;&#xA;  --box-shadow: 0 2px 8px rgba(0,0,0,0.08);&#xA;  --box-shadow-hover: 0 4px 16px rgba(0,0,0,0.12);&#xA;}&#xA;&#xA;/* Основные стили */&#xA;.article-marker {&#xA;  background: var(--primary-color);&#xA;  color: white;&#xA;  text-align: center;&#xA;  padding: var(--spacing-sm);&#xA;  margin: var(--spacing-lg) 0;&#xA;  font-size: 1rem;&#xA;  font-weight: 700;&#xA;  border-radius: var(--border-radius-sm);&#xA;  border: 2px dashed var(--primary-dark);&#xA;  box-shadow: var(--box-shadow);&#xA;}&#xA;&#xA;.main-title {&#xA;  margin-bottom: var(--spacing-md);&#xA;  font-size: clamp(1.5rem, 4vw, 2rem);&#xA;  font-weight: 700;&#xA;  color: var(--text-primary);&#xA;  line-height: 1.2;&#xA;}&#xA;&#xA;.section-title {&#xA;  color: var(--text-primary);&#xA;  margin: var(--spacing-lg) 0 var(--spacing-sm);&#xA;  font-size: clamp(1.2rem, 3vw, 1.4rem);&#xA;  font-weight: 600;&#xA;  line-height: 1.3;&#xA;}&#xA;&#xA;.subsection-title {&#xA;  color: var(--text-primary);&#xA;  margin: var(--spacing-md) 0 var(--spacing-xs);&#xA;  font-size: clamp(1.1rem, 2.5vw, 1.2rem);&#xA;  font-weight: 600;&#xA;}&#xA;&#xA;.std-text {&#xA;  font-size: 1rem;&#xA;  line-height: 1.6;&#xA;  margin-bottom: var(--spacing-sm);&#xA;  color: var(--text-primary);&#xA;}&#xA;&#xA;/* Улучшенные карточки */&#xA;.card {&#xA;  border: 1px solid var(--border-color);&#xA;  padding: var(--spacing-sm);&#xA;  background: var(--background-card);&#xA;  border-radius: var(--border-radius);&#xA;  margin-bottom: var(--spacing-md);&#xA;  box-shadow: var(--box-shadow);&#xA;  transition: transform 0.2s ease, box-shadow 0.2s ease;&#xA;}&#xA;&#xA;.card:hover {&#xA;  transform: translateY(-2px);&#xA;  box-shadow: var(--box-shadow-hover);&#xA;}&#xA;&#xA;.warning-box {&#xA;  border: 1px solid var(--error-color);&#xA;  padding: var(--spacing-sm);&#xA;  background: var(--warning-bg);&#xA;  border-radius: var(--border-radius);&#xA;  margin-bottom: var(--spacing-lg);&#xA;  box-shadow: var(--box-shadow);&#xA;}&#xA;&#xA;.warning-title {&#xA;  color: var(--error-color);&#xA;  margin-bottom: var(--spacing-xs);&#xA;  font-weight: 700;&#xA;  font-size: 1.1rem;&#xA;}&#xA;&#xA;/* Emoji списки с лучшими отступами */&#xA;.emoji-list {&#xA;  font-size: 1rem;&#xA;  line-height: 1.7;&#xA;  margin-bottom: 0.8rem;&#xA;  padding: 0.8rem 0;&#xA;  border-bottom: 1px solid var(--border-color);&#xA;  color: var(--text-primary);&#xA;  background: transparent;&#xA;}&#xA;&#xA;.emoji-list:last-child {&#xA;  border-bottom: none;&#xA;  margin-bottom: 0;&#xA;}&#xA;&#xA;.emoji-list strong {&#xA;  color: var(--primary-color);&#xA;  font-weight: 600;&#xA;}&#xA;&#xA;/* Адаптивные таблицы */&#xA;.table-container {&#xA;  width: 100%;&#xA;  overflow-x: auto;&#xA;  margin-bottom: var(--spacing-md);&#xA;  border-radius: var(--border-radius);&#xA;  box-shadow: var(--box-shadow);&#xA;}&#xA;&#xA;.data-table {&#xA;  width: 100%;&#xA;  min-width: 600px;&#xA;  border-collapse: collapse;&#xA;  background: white;&#xA;}&#xA;&#xA;.data-table th,&#xA;.data-table td {&#xA;  padding: var(--spacing-sm);&#xA;  border: 1px solid var(--border-color);&#xA;  font-size: 0.9rem;&#xA;  text-align: left;&#xA;}&#xA;&#xA;.data-table th {&#xA;  background: var(--primary-color);&#xA;  color: white;&#xA;  font-weight: 700;&#xA;  white-space: nowrap;&#xA;}&#xA;&#xA;.data-table td:first-child {&#xA;  font-weight: 700;&#xA;  font-size: 0.9rem;&#xA;}&#xA;&#xA;.data-table tbody tr:nth-child(even) {&#xA;  background: #f8f9ff;&#xA;}&#xA;&#xA;/* Убираем синий фон с первой строки tbody */&#xA;.data-table tbody tr:first-child {&#xA;  background: transparent !important;&#xA;  color: inherit !important;&#xA;}&#xA;&#xA;.data-table tbody tr:first-child td {&#xA;  background: transparent !important;&#xA;  color: inherit !important;&#xA;}&#xA;&#xA;/* Правильное чередование строк */&#xA;.data-table tbody tr:nth-child(even) td {&#xA;  background: #f8f9ff !important;&#xA;}&#xA;&#xA;.data-table tbody tr:nth-child(odd) td {&#xA;  background: white !important;&#xA;}&#xA;&#xA;.data-table tr:hover td {&#xA;  background: #e8f0fe;&#xA;}&#xA;&#xA;.data-table-caption {&#xA;  font-size: 0.9rem;&#xA;  color: var(--text-secondary);&#xA;  text-align: center;&#xA;  margin-top: var(--spacing-xs);&#xA;  font-style: italic;&#xA;}&#xA;&#xA;/* Улучшенные статус-теги */&#xA;.status-tag {&#xA;  display: inline-block;&#xA;  padding: 4px 8px;&#xA;  color: white;&#xA;  border-radius: 16px;&#xA;  font-size: 0.75rem;&#xA;  font-weight: 600;&#xA;  text-transform: uppercase;&#xA;  letter-spacing: 0.5px;&#xA;  box-shadow: 0 2px 4px rgba(0,0,0,0.2);&#xA;}&#xA;&#xA;.status-green { background: linear-gradient(135deg, var(--success-color), #2d8f47); }&#xA;.status-blue { background: linear-gradient(135deg, var(--primary-color), #3367d6); }&#xA;.status-yellow { background: linear-gradient(135deg, var(--warning-color), #f9ab00); color: #333; }&#xA;.status-red { background: linear-gradient(135deg, var(--error-color), #d33b2c); }&#xA;&#xA;/* Адаптивные блоки кода */&#xA;.code-block {&#xA;  font-family: &#39;Courier New&#39;, Consolas, Monaco, monospace;&#xA;  font-size: 0.85rem;&#xA;  background: var(--background-code);&#xA;  color: var(--text-primary);&#xA;  padding: var(--spacing-sm);&#xA;  border: 1px solid var(--border-color);&#xA;  border-radius: var(--border-radius);&#xA;  margin-bottom: var(--spacing-md);&#xA;  overflow-x: auto;&#xA;  line-height: 1.5;&#xA;  box-shadow: var(--box-shadow);&#xA;}&#xA;&#xA;/* Адаптивные изображения */&#xA;.responsive-img {&#xA;  max-width: 100%;&#xA;  height: auto;&#xA;  border-radius: var(--border-radius);&#xA;  box-shadow: var(--box-shadow);&#xA;}&#xA;&#xA;.img-caption {&#xA;  font-size: 0.9rem;&#xA;  color: var(--text-secondary);&#xA;  text-align: center;&#xA;  margin-top: var(--spacing-xs);&#xA;  font-style: italic;&#xA;}&#xA;&#xA;/* Адаптивные списки */&#xA;.responsive-list {&#xA;  padding-left: 1.5rem;&#xA;  margin: var(--spacing-sm) 0;&#xA;  line-height: 1.7;&#xA;}&#xA;&#xA;.responsive-list li {&#xA;  margin-bottom: var(--spacing-xs);&#xA;  padding-left: 0.5rem;&#xA;}&#xA;&#xA;.responsive-list a {&#xA;  color: var(--primary-color);&#xA;  text-decoration: none;&#xA;  font-weight: 600;&#xA;  transition: color 0.2s ease;&#xA;}&#xA;&#xA;.responsive-list a:hover {&#xA;  color: var(--primary-dark);&#xA;  text-decoration: underline;&#xA;}&#xA;&#xA;/* Медиа-запросы для мобильных устройств */&#xA;@media (max-width: 768px) {&#xA;  .article-marker {&#xA;    font-size: 0.9rem;&#xA;    padding: 0.75rem;&#xA;    margin: var(--spacing-sm) 0;&#xA;  }&#xA;&#xA;  .card, .warning-box {&#xA;    padding: 0.75rem;&#xA;    margin-bottom: var(--spacing-sm);&#xA;  }&#xA;&#xA;  .data-table {&#xA;    min-width: 100%;&#xA;    font-size: 0.8rem;&#xA;  }&#xA;&#xA;  .data-table th,&#xA;  .data-table td {&#xA;    padding: 0.5rem 0.25rem;&#xA;  }&#xA;&#xA;  .status-tag {&#xA;    font-size: 0.7rem;&#xA;    padding: 3px 6px;&#xA;  }&#xA;&#xA;  .code-block {&#xA;    font-size: 0.8rem;&#xA;    padding: 0.75rem;&#xA;  }&#xA;&#xA;  .emoji-list {&#xA;    font-size: 0.95rem;&#xA;    line-height: 1.6;&#xA;  }&#xA;&#xA;  .responsive-list {&#xA;    padding-left: 1rem;&#xA;  }&#xA;}&#xA;&#xA;@media (max-width: 480px) {&#xA;  .section-title {&#xA;    margin: var(--spacing-sm) 0 0.5rem;&#xA;  }&#xA;&#xA;  .subsection-title {&#xA;    margin: var(--spacing-sm) 0 0.5rem;&#xA;  }&#xA;&#xA;  .card, .warning-box {&#xA;    padding: 0.5rem;&#xA;  }&#xA;&#xA;  .data-table th,&#xA;  .data-table td {&#xA;    padding: 0.4rem 0.2rem;&#xA;    font-size: 0.75rem;&#xA;  }&#xA;&#xA;  .code-block {&#xA;    font-size: 0.75rem;&#xA;    padding: 0.5rem;&#xA;  }&#xA;}&#xA;&#xA;/* Улучшение доступности */&#xA;@media (prefers-reduced-motion: reduce) {&#xA;  .card, .status-tag, .responsive-list a {&#xA;    transition: none;&#xA;  }&#xA;}&#xA;&lt;/style&gt;&#xA;&lt;!-- /wp:html --&gt;&#xA;&lt;style&gt;:root{--text-primary:var(--text,#333333);--background-card:var(--bg-card,#ffffff);--background-light:var(--bg-subtle,#f8f9fa);--background-code:var(--bg-subtle,#f5f5f5);--border-color:var(--border,#e0e0e0)}&lt;/style&gt;&#xA;&lt;!-- /wp:html --&gt;&#xA;&lt;!-- wp:html --&gt;&#xA;&lt;script type=&#34;application/ld+json&#34;&gt;&#xA;{&#xA;  &#34;@context&#34;: &#34;https://schema.org&#34;,&#xA;  &#34;@type&#34;: &#34;FAQPage&#34;,&#xA;  &#34;mainEntity&#34;: [&#xA;    {&#xA;      &#34;@type&#34;: &#34;Question&#34;,&#xA;      &#34;name&#34;: &#34;Why do recursive resolvers send duplicate DNS queries before timeouts?&#34;,&#xA;      &#34;acceptedAnswer&#34;: {&#xA;        &#34;@type&#34;: &#34;Answer&#34;,&#xA;        &#34;text&#34;: &#34;Resolvers repeat queries early to bypass UDP datagram loss and improve speed. This behavior creates duplicate rates reaching 61% in high latency regions like the Indian Subcontinent.&#34;&#xA;      }&#xA;    },&#xA;    {&#xA;      &#34;@type&#34;: &#34;Question&#34;,&#xA;      &#34;name&#34;: &#34;How does the tragedy of the commons affect authoritative DNS servers?&#34;,&#xA;      &#34;acceptedAnswer&#34;: {&#xA;        &#34;@type&#34;: &#34;Answer&#34;,&#xA;        &#34;text&#34;: &#34;Authoritative servers bear the full computational cost of free duplicate queries sent by resolvers. Measurement data shows these duplicates can comprise 57% of total traffic volume in certain areas.&#34;&#xA;      }&#xA;    },&#xA;    {&#xA;      &#34;@type&#34;: &#34;Question&#34;,&#xA;      &#34;name&#34;: &#34;What limits forensic analysis of DNS query duplication patterns?&#34;,&#xA;      &#34;acceptedAnswer&#34;: {&#xA;        &#34;@type&#34;: &#34;Answer&#34;,&#xA;        &#34;text&#34;: &#34;Short log retention windows prevent long-term study of duplicate query behaviors. Major public resolvers delete logs within approximately 25 hours, restricting deep forensic analysis to a narrow timeframe.&#34;&#xA;      }&#xA;    },&#xA;    {&#xA;      &#34;@type&#34;: &#34;Question&#34;,&#xA;      &#34;name&#34;: &#34;How does parallel querying impact DNS infrastructure load?&#34;,&#xA;      &#34;acceptedAnswer&#34;: {&#xA;        &#34;@type&#34;: &#34;Answer&#34;,&#xA;        &#34;text&#34;: &#34;Parallel querying sends requests to all configured servers simultaneously to minimize latency. This approach instantly doubles the load for single lookups, exacerbating free resource exploitation problems at scale.&#34;&#xA;      }&#xA;    },&#xA;    {&#xA;      &#34;@type&#34;: &#34;Question&#34;,&#xA;      &#34;name&#34;: &#34;What is the expected baseline for UDP query loss rates?&#34;,&#xA;      &#34;acceptedAnswer&#34;: {&#xA;        &#34;@type&#34;: &#34;Answer&#34;,&#xA;        &#34;text&#34;: &#34;Normal network conditions typically show an overall query loss rate of 2% or lower. Operators often mistake higher duplication rates for normal loss, leading to aggressive and unnecessary retry policies.&#34;&#xA;      }&#xA;    }&#xA;  ]&#xA;}&#xA;&lt;/script&gt;&#xA;&lt;!-- /wp:html --&gt;&#xA;&lt;!-- wp:html --&gt;&#xA;&lt;style&gt;&#xA;.faq-section { margin: 24px 0; padding: 24px 0; border-top: 2px solid #e5e7eb; }&#xA;.faq-section-title { color: #1a1a1a; font-size: clamp(1.2rem, 3vw, 1.4rem); font-weight: 700; margin-bottom: 24px; text-align: center; }&#xA;.faq-item { background: #fff; border: 1px solid #e5e7eb; border-radius: 8px; margin-bottom: 12px; overflow: hidden; transition: all 0.3s ease; }&#xA;.faq-item:hover { border-color: #2563eb; box-shadow: 0 4px 6px rgba(0,0,0,0.05); transform: translateY(-2px); }&#xA;.faq-question { background: #f9fafb; padding: 12px 16px; cursor: pointer; position: relative; transition: all 0.3s ease; border: none; width: 100%; text-align: left; font-family: inherit; display: block; }&#xA;.faq-question:hover { background: #e8f0fe; }&#xA;.faq-question-text { color: #1a1a1a; font-size: 1rem; font-weight: 600; line-height: 1.5; margin: 0; padding-right: 2rem; display: inline-block; }&#xA;.faq-answer { max-height: 0; overflow: hidden; transition: max-height 0.4s ease, padding 0.4s ease; padding: 0 16px; }&#xA;.faq-item.active .faq-answer { max-height: 1000px; padding: 0 16px 16px; }&#xA;.faq-answer-text { color: #4b5563; font-size: 1rem; line-height: 1.7; margin: 12px 0 0; }&#xA;&lt;/style&gt;&#xA;&lt;script&gt;&#xA;(function() {&#xA;  function initFAQ() {&#xA;    var qs = document.querySelectorAll(&#34;.faq-question&#34;);&#xA;    for (var i = 0; i &lt; qs.length; i++) {&#xA;      qs[i].addEventListener(&#34;click&#34;, function() {&#xA;        var item = this.closest(&#34;.faq-item&#34;);&#xA;        var wasActive = item.classList.contains(&#34;active&#34;);&#xA;        var allItems = document.querySelectorAll(&#34;.faq-item&#34;);&#xA;        for (var j = 0; j &lt; allItems.length; j++) { allItems[j].classList.remove(&#34;active&#34;); }&#xA;        if (!wasActive) item.classList.add(&#34;active&#34;);&#xA;        this.setAttribute(&#34;aria-expanded&#34;, String(!wasActive));&#xA;      });&#xA;    }&#xA;  }&#xA;  if (document.readyState === &#34;loading&#34;) {&#xA;    document.addEventListener(&#34;DOMContentLoaded&#34;, initFAQ);&#xA;  } else {&#xA;    initFAQ();&#xA;  }&#xA;})();&#xA;&lt;/script&gt;&#xA;&lt;!-- /wp:html --&gt;&#xA;&lt;!-- wp:html --&gt;&#xA;&lt;script type=&#34;application/ld+json&#34;&gt;&#xA;{&#xA;  &#34;@context&#34;: &#34;https://schema.org&#34;,&#xA;  &#34;@type&#34;: &#34;TechArticle&#34;,&#xA;  &#34;headline&#34;: &#34;The Mechanics of Recursive Resolver Over-Querying and UDP Loss&#34;,&#xA;  &#34;description&#34;: &#34;On 1 June 2026, APNIC Labs recorded 35 million advertisement presentations that exposed rampant DNS query duplication across the global internet. This behavi...&#34;,&#xA;  &#34;author&#34;: {&#xA;    &#34;@type&#34;: &#34;Person&#34;,&#xA;    &#34;name&#34;: &#34;Nikita Sinitsyn&#34;&#xA;  },&#xA;  &#34;datePublished&#34;: &#34;2026-06-17&#34;,&#xA;  &#34;url&#34;: &#34;https://blog.apnic.net/2026/06/17/dns-query-duplication/&#34;,&#xA;  &#34;inLanguage&#34;: &#34;en&#34;,&#xA;  &#34;wordCount&#34;: 3042,&#xA;  &#34;publisher&#34;: {&#xA;    &#34;@type&#34;: &#34;Organization&#34;,&#xA;    &#34;name&#34;: &#34;InterLIR&#34;&#xA;  },&#xA;  &#34;speakable&#34;: {&#xA;    &#34;@type&#34;: &#34;SpeakableSpecification&#34;,&#xA;    &#34;cssSelector&#34;: [&#xA;      &#34;.article-intro&#34;,&#xA;      &#34;.faq-answer&#34;&#xA;    ]&#xA;  },&#xA;  &#34;about&#34;: [&#xA;    {&#xA;      &#34;@type&#34;: &#34;Thing&#34;,&#xA;      &#34;name&#34;: &#34;DNS query duplication&#34;&#xA;    }&#xA;  ]&#xA;}&#xA;&lt;/script&gt;&#xA;&lt;!-- /wp:html --&gt;&#xA;&lt;!-- wp:paragraph {&#34;className&#34;:&#34;std-text&#34;} --&gt;&#xA;&lt;!-- /wp:paragraph --&gt;&#xA;&lt;!-- wp:paragraph {&#34;className&#34;:&#34;std-text&#34;} --&gt;&#xA;&lt;p class=&#34;std-text&#34;&gt;On 1 June 2026, &lt;a href=&#34;https://www.apnic.net/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;APNIC&lt;/a&gt; Labs recorded 35 million advertisement presentations that exposed rampant &lt;a href=&#34;https://en.wikipedia.org/wiki/Domain_Name_System&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;DNS&lt;/a&gt; query duplication across the global internet. This behavior exemplifies the &lt;strong&gt;tragedy of the commons&lt;/strong&gt;, where free name resolution queries encourage recursive resolvers to aggressively repeat requests before timeouts expire. Because these duplicate transmissions impose processing burdens solely on authoritative servers rather than the senders, the infrastructure absorbs the penalty for improved resolver responsiveness.&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
