{"id":29107,"date":"2025-08-16T12:45:03","date_gmt":"2025-08-16T05:45:03","guid":{"rendered":"https:\/\/dps.media\/check-dns-domain-kiem-tra-thong-tin-ten-mien-mien-phi-online\/"},"modified":"2025-08-16T12:45:14","modified_gmt":"2025-08-16T05:45:14","slug":"check-dns-domain-check-domain-information-free-online","status":"publish","type":"post","link":"https:\/\/dps.media\/en\/check-dns-domain-check-domain-information-free-online\/","title":{"rendered":"Check DNS domain &amp; check domain information free online"},"content":{"rendered":"<?xml encoding=\"utf-8\" ?><p><!-- DNS Bulk Lookup Widget - DPS.MEDIA Branded v\u1edbi CSS Isolated -->\r\n<\/p><div id=\"dnsBulkWidget\"><\/div><script>\r\n(function(){\r\n  const root = document.getElementById('dnsBulkWidget');\r\n  if (!root) return;\r\n\r\n  const POPULAR = ['A','CNAME','MX','NS','TXT'];\r\n  const RECORDS = ['ALL', ...POPULAR];\r\n  const TYPE_CODE = { A:1, CNAME:5, MX:15, NS:2, TXT:16 };\r\n\r\n  \/\/ T\u1ea1o CSS c\u00f4 l\u1eadp v\u1edbi prefix\r\n  const widgetStyles = `\r\n    #dnsBulkWidget {\r\n      all: initial !important;\r\n      font-family: system-ui, -apple-system, \"Segoe UI\", Roboto, Arial, sans-serif !important;\r\n    }\r\n    \r\n    #dnsBulkWidget *,\r\n    #dnsBulkWidget *::before,\r\n    #dnsBulkWidget *::after {\r\n      box-sizing: border-box !important;\r\n      margin: 0 !important;\r\n      padding: 0 !important;\r\n      border: none !important;\r\n      background: none !important;\r\n      outline: none !important;\r\n      text-decoration: none !important;\r\n      list-style: none !important;\r\n      font: inherit !important;\r\n      color: inherit !important;\r\n      vertical-align: baseline !important;\r\n      line-height: normal !important;\r\n    }\r\n\r\n    \/* Container ch\u00ednh *\/\r\n    #dnsBulkWidget .dns-container {\r\n      max-width: 1000px !important;\r\n      margin: 24px auto !important;\r\n      padding: 0 !important;\r\n      border: 1px solid #e5e7eb !important;\r\n      border-radius: 16px !important;\r\n      font-family: system-ui, -apple-system, \"Segoe UI\", Roboto, Arial, sans-serif !important;\r\n      overflow: hidden !important;\r\n      box-shadow: 0 10px 25px -5px rgba(21,21,119,0.1), 0 4px 6px -2px rgba(21,21,119,0.05) !important;\r\n      background: #ffffff !important;\r\n    }\r\n\r\n    \/* Header *\/\r\n    #dnsBulkWidget .dns-header {\r\n      background: linear-gradient(135deg, #151577 0%, #1e1e7a 100%) !important;\r\n      padding: 20px !important;\r\n      color: white !important;\r\n      position: relative !important;\r\n      overflow: hidden !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-header-bg1 {\r\n      position: absolute !important;\r\n      top: -20px !important;\r\n      right: -20px !important;\r\n      width: 100px !important;\r\n      height: 100px !important;\r\n      background: rgba(255,255,255,0.05) !important;\r\n      border-radius: 50% !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-header-bg2 {\r\n      position: absolute !important;\r\n      bottom: -30px !important;\r\n      left: -30px !important;\r\n      width: 80px !important;\r\n      height: 80px !important;\r\n      background: rgba(50,181,97,0.15) !important;\r\n      border-radius: 50% !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-header-content {\r\n      position: relative !important;\r\n      z-index: 1 !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-header-top {\r\n      display: flex !important;\r\n      align-items: center !important;\r\n      justify-content: space-between !important;\r\n      margin-bottom: 8px !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-header-left {\r\n      display: flex !important;\r\n      align-items: center !important;\r\n      gap: 12px !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-icon {\r\n      width: 40px !important;\r\n      height: 40px !important;\r\n      background: linear-gradient(135deg, #32b561, #28a555) !important;\r\n      border-radius: 12px !important;\r\n      display: flex !important;\r\n      align-items: center !important;\r\n      justify-content: center !important;\r\n      font-size: 20px !important;\r\n      font-weight: bold !important;\r\n      color: white !important;\r\n      box-shadow: 0 4px 8px rgba(50,181,97,0.3) !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-title {\r\n      margin: 0 !important;\r\n      font-size: 20px !important;\r\n      font-weight: 700 !important;\r\n      letter-spacing: -0.5px !important;\r\n      color: #fff !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-subtitle {\r\n      margin: 0 !important;\r\n      font-size: 13px !important;\r\n      opacity: 0.8 !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-brand {\r\n      text-align: right !important;\r\n      font-size: 12px !important;\r\n      opacity: 0.7 !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-brand-name {\r\n      font-weight: 600 !important;\r\n      color: #32b561 !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-desc {\r\n      margin: 0 !important;\r\n      font-size: 13px !important;\r\n      opacity: 0.9 !important;\r\n      line-height: 1.4 !important;\r\n    }\r\n\r\n    \/* Main Content *\/\r\n    #dnsBulkWidget .dns-main {\r\n      padding: 20px !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-main-layout {\r\n      display: flex !important;\r\n      flex-direction: column !important;\r\n      gap: 16px !important;\r\n      margin-bottom: 16px !important;\r\n    }\r\n\r\n    \/* Input Section *\/\r\n    #dnsBulkWidget .dns-input-section {\r\n      position: relative !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-textarea {\r\n      width: 100% !important;\r\n      padding: 12px !important;\r\n      border: 2px solid #e5e7eb !important;\r\n      border-radius: 12px !important;\r\n      resize: vertical !important;\r\n      font-family: monospace !important;\r\n      font-size: 13px !important;\r\n      box-sizing: border-box !important;\r\n      transition: border-color 0.3s !important;\r\n      background: #fafbfc !important;\r\n      color: #374151 !important;\r\n      min-height: 120px !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-textarea:focus {\r\n      outline: none !important;\r\n      border-color: #151577 !important;\r\n      box-shadow: 0 0 0 3px rgba(21,21,119,0.1) !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-count {\r\n      position: absolute !important;\r\n      top: 8px !important;\r\n      right: 12px !important;\r\n      background: rgba(21,21,119,0.9) !important;\r\n      color: white !important;\r\n      padding: 4px 8px !important;\r\n      border-radius: 6px !important;\r\n      font-size: 11px !important;\r\n      font-weight: 500 !important;\r\n    }\r\n\r\n    \/* Controls *\/\r\n    #dnsBulkWidget .dns-controls {\r\n      display: flex !important;\r\n      flex-direction: column !important;\r\n      gap: 12px !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-label {\r\n      display: block !important;\r\n      font-size: 13px !important;\r\n      font-weight: 600 !important;\r\n      color: #151577 !important;\r\n      margin-bottom: 8px !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-types {\r\n      display: flex !important;\r\n      flex-wrap: wrap !important;\r\n      gap: 6px !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-type-btn {\r\n      padding: 8px 14px !important;\r\n      border: 1px solid #cbd5e1 !important;\r\n      border-radius: 10px !important;\r\n      background: #fff !important;\r\n      cursor: pointer !important;\r\n      font-size: 12px !important;\r\n      font-weight: 500 !important;\r\n      transition: all 0.3s !important;\r\n      color: #374151 !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-type-btn:hover {\r\n      border-color: #151577 !important;\r\n      color: #151577 !important;\r\n      transform: translateY(-1px) !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-type-btn.active {\r\n      background: linear-gradient(135deg, #151577, #1e1e7a) !important;\r\n      color: #fff !important;\r\n      border-color: #151577 !important;\r\n      box-shadow: 0 4px 12px rgba(21,21,119,0.25) !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-type-btn.active:hover {\r\n      color: #fff !important;\r\n      transform: translateY(-1px) !important;\r\n    }\r\n\r\n    \/* Actions *\/\r\n    #dnsBulkWidget .dns-actions {\r\n      display: flex !important;\r\n      flex-wrap: wrap !important;\r\n      gap: 12px !important;\r\n      align-items: end !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-delay-section {\r\n      flex: 1 !important;\r\n      min-width: 140px !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-delay-label {\r\n      display: block !important;\r\n      font-size: 12px !important;\r\n      color: #151577 !important;\r\n      font-weight: 500 !important;\r\n      margin-bottom: 4px !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-delay-input-group {\r\n      display: flex !important;\r\n      align-items: center !important;\r\n      gap: 6px !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-delay-input {\r\n      width: 70px !important;\r\n      padding: 6px 8px !important;\r\n      border: 1px solid #cbd5e1 !important;\r\n      border-radius: 8px !important;\r\n      font-size: 12px !important;\r\n      transition: border-color 0.3s !important;\r\n      background: #fff !important;\r\n      color: #374151 !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-delay-input:focus {\r\n      outline: none !important;\r\n      border-color: #151577 !important;\r\n      box-shadow: 0 0 0 3px rgba(21,21,119,0.1) !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-delay-unit {\r\n      font-size: 12px !important;\r\n      color: #64748b !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-action-buttons {\r\n      display: flex !important;\r\n      gap: 8px !important;\r\n      flex-wrap: wrap !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-btn {\r\n      padding: 12px 20px !important;\r\n      border: none !important;\r\n      border-radius: 10px !important;\r\n      cursor: pointer !important;\r\n      font-weight: 600 !important;\r\n      font-size: 13px !important;\r\n      white-space: nowrap !important;\r\n      transition: all 0.3s !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-btn-primary {\r\n      background: linear-gradient(135deg, #151577, #1e1e7a) !important;\r\n      color: #fff !important;\r\n      box-shadow: 0 4px 12px rgba(21,21,119,0.3) !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-btn-primary:hover {\r\n      transform: translateY(-1px) !important;\r\n      box-shadow: 0 6px 20px rgba(21,21,119,0.4) !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-btn-secondary {\r\n      border: 2px solid #dc2626 !important;\r\n      background: #fff !important;\r\n      color: #dc2626 !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-btn:disabled {\r\n      background: #6b7280 !important;\r\n      cursor: not-allowed !important;\r\n      box-shadow: none !important;\r\n      transform: none !important;\r\n    }\r\n\r\n    \/* Status Bar *\/\r\n    #dnsBulkWidget .dns-status-bar {\r\n      display: flex !important;\r\n      gap: 10px !important;\r\n      flex-wrap: wrap !important;\r\n      align-items: center !important;\r\n      margin-bottom: 16px !important;\r\n      padding: 12px !important;\r\n      background: linear-gradient(90deg, #f8fafc, #f1f5f9) !important;\r\n      border-radius: 12px !important;\r\n      border: 1px solid #e2e8f0 !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-btn-small {\r\n      padding: 8px 14px !important;\r\n      border-radius: 8px !important;\r\n      cursor: pointer !important;\r\n      font-size: 12px !important;\r\n      font-weight: 500 !important;\r\n      transition: all 0.3s !important;\r\n      background: #fff !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-btn-copy {\r\n      border: 1px solid #32b561 !important;\r\n      color: #32b561 !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-btn-copy:not(:disabled):hover {\r\n      background: #32b561 !important;\r\n      color: white !important;\r\n      transform: translateY(-1px) !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-btn-copy.success {\r\n      background: linear-gradient(135deg, #32b561, #28a555) !important;\r\n      color: #fff !important;\r\n      border-color: #32b561 !important;\r\n      box-shadow: 0 4px 12px rgba(50,181,97,0.3) !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-btn-clear {\r\n      border: 1px solid #cbd5e1 !important;\r\n      color: #374151 !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-btn-clear:hover {\r\n      border-color: #151577 !important;\r\n      color: #151577 !important;\r\n      transform: translateY(-1px) !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-status-right {\r\n      flex: 1 !important;\r\n      min-width: 120px !important;\r\n      display: flex !important;\r\n      align-items: center !important;\r\n      justify-content: end !important;\r\n      gap: 12px !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-progress {\r\n      display: none !important;\r\n      background: #e2e8f0 !important;\r\n      border-radius: 10px !important;\r\n      height: 8px !important;\r\n      width: 120px !important;\r\n      overflow: hidden !important;\r\n      min-width: 80px !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-progress-bar {\r\n      height: 100% !important;\r\n      background: linear-gradient(90deg, #151577, #32b561) !important;\r\n      width: 0% !important;\r\n      transition: width 0.3s !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-status {\r\n      font-size: 12px !important;\r\n      color: #151577 !important;\r\n      font-weight: 600 !important;\r\n      text-align: right !important;\r\n    }\r\n\r\n    \/* Error Display *\/\r\n    #dnsBulkWidget .dns-error {\r\n      display: none !important;\r\n      background: linear-gradient(135deg, #fef2f2, #fee2e2) !important;\r\n      border: 2px solid #fca5a5 !important;\r\n      color: #991b1b !important;\r\n      padding: 12px !important;\r\n      border-radius: 12px !important;\r\n      margin-bottom: 12px !important;\r\n      align-items: center !important;\r\n      gap: 10px !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-error-icon {\r\n      font-size: 18px !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-error-text {\r\n      font-weight: 500 !important;\r\n    }\r\n\r\n    \/* Results *\/\r\n    #dnsBulkWidget .dns-results {\r\n      overflow: auto !important;\r\n      max-height: 60vh !important;\r\n      border: 2px solid #e5e7eb !important;\r\n      border-radius: 12px !important;\r\n      background: #fafafa !important;\r\n      min-height: 120px !important;\r\n      display: flex !important;\r\n      align-items: center !important;\r\n      justify-content: center !important;\r\n      color: #64748b !important;\r\n      font-style: italic !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-empty-state {\r\n      text-align: center !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-empty-icon {\r\n      font-size: 32px !important;\r\n      margin-bottom: 8px !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-empty-text {\r\n      margin-bottom: 4px !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-empty-subtext {\r\n      font-size: 11px !important;\r\n      color: #9ca3af !important;\r\n    }\r\n\r\n    \/* Table - Tr\u00e1nh d\u00f9ng th, td g\u1ed1c *\/\r\n    #dnsBulkWidget .dns-table {\r\n      width: 100% !important;\r\n      border-collapse: collapse !important;\r\n      font-size: 12px !important;\r\n      background: #fff !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-table thead {\r\n      position: sticky !important;\r\n      top: 0 !important;\r\n      background: linear-gradient(135deg, #151577, #1e1e7a) !important;\r\n      z-index: 1 !important;\r\n      color: white !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-table-header {\r\n      padding: 12px 15px !important;\r\n      font-weight: 600 !important;\r\n      font-size: 12px !important;\r\n      text-align: left !important;\r\n      background: inherit !important;\r\n      color: inherit !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-table-header.center {\r\n      text-align: center !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-table tbody .dns-table-row:nth-child(even) {\r\n      background: #f8fafc !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-table tbody .dns-table-row:nth-child(odd) {\r\n      background: #ffffff !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-table-cell {\r\n      padding: 10px 15px !important;\r\n      border-bottom: 1px solid #f1f5f9 !important;\r\n      font-size: 12px !important;\r\n      word-break: break-all !important;\r\n      background: inherit !important;\r\n      color: inherit !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-table-cell.center {\r\n      text-align: center !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-table-cell.type {\r\n      font-weight: 600 !important;\r\n      color: #151577 !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-table-cell.name {\r\n      font-family: monospace !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-table-cell.ttl {\r\n      font-family: monospace !important;\r\n      color: #32b561 !important;\r\n      font-weight: 500 !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-table-header-row {\r\n      display: flex !important;\r\n      background: linear-gradient(135deg, #151577, #1e1e7a) !important;\r\n      color: white !important;\r\n      position: sticky !important;\r\n      top: 0 !important;\r\n      z-index: 1 !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-table-row {\r\n      display: flex !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-table-header:nth-child(1),\r\n    #dnsBulkWidget .dns-table-cell:nth-child(1) {\r\n      flex: 2 !important;\r\n      min-width: 120px !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-table-header:nth-child(2),\r\n    #dnsBulkWidget .dns-table-cell:nth-child(2) {\r\n      flex: 0 0 80px !important;\r\n      text-align: center !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-table-header:nth-child(3),\r\n    #dnsBulkWidget .dns-table-cell:nth-child(3) {\r\n      flex: 1.5 !important;\r\n      min-width: 100px !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-table-header:nth-child(4),\r\n    #dnsBulkWidget .dns-table-cell:nth-child(4) {\r\n      flex: 0 0 60px !important;\r\n      text-align: center !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-table-header:nth-child(5),\r\n    #dnsBulkWidget .dns-table-cell:nth-child(5) {\r\n      flex: 2.5 !important;\r\n      min-width: 150px !important;\r\n    }\r\n\r\n    \/* Footer *\/\r\n    #dnsBulkWidget .dns-footer {\r\n      background: linear-gradient(135deg, #f8fafc, #f1f5f9) !important;\r\n      padding: 12px 20px !important;\r\n      border-top: 1px solid #e2e8f0 !important;\r\n      text-align: center !important;\r\n      font-size: 11px !important;\r\n      color: #64748b !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-footer-content {\r\n      display: flex !important;\r\n      align-items: center !important;\r\n      justify-content: center !important;\r\n      gap: 8px !important;\r\n      flex-wrap: wrap !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-footer-brand {\r\n      color: #151577 !important;\r\n      font-weight: 700 !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-footer-link {\r\n      color: #32b561 !important;\r\n      text-decoration: none !important;\r\n      font-weight: 600 !important;\r\n    }\r\n\r\n    #dnsBulkWidget .dns-footer-link:hover {\r\n      text-decoration: underline !important;\r\n    }\r\n\r\n    \/* Mobile Responsive *\/\r\n    @media (min-width: 768px) {\r\n      #dnsBulkWidget .dns-main-layout {\r\n        display: grid !important;\r\n        grid-template-columns: 1fr 320px !important;\r\n        gap: 20px !important;\r\n      }\r\n      \r\n      #dnsBulkWidget .dns-actions {\r\n        flex-direction: column !important;\r\n        align-items: stretch !important;\r\n      }\r\n      \r\n      #dnsBulkWidget .dns-action-buttons {\r\n        display: flex !important;\r\n        flex-direction: column !important;\r\n        gap: 10px !important;\r\n      }\r\n      \r\n      #dnsBulkWidget .dns-textarea {\r\n        min-height: 160px !important;\r\n      }\r\n    }\r\n    \r\n    @media (max-width: 767px) {\r\n      #dnsBulkWidget .dns-actions {\r\n        flex-direction: column !important;\r\n      }\r\n      \r\n      #dnsBulkWidget .dns-action-buttons {\r\n        width: 100% !important;\r\n      }\r\n      \r\n      #dnsBulkWidget .dns-btn {\r\n        flex: 1 !important;\r\n      }\r\n      \r\n      #dnsBulkWidget .dns-types {\r\n        justify-content: center !important;\r\n      }\r\n\r\n      #dnsBulkWidget .dns-table-header.mobile-hidden,\r\n      #dnsBulkWidget .dns-table-cell.mobile-hidden {\r\n        display: none !important;\r\n      }\r\n\r\n      #dnsBulkWidget .dns-table-header,\r\n      #dnsBulkWidget .dns-table-cell {\r\n        padding: 8px 6px !important;\r\n        font-size: 11px !important;\r\n      }\r\n    }\r\n  `;\r\n\r\n  \/\/ Th\u00eam CSS v\u00e0o head\r\n  const styleEl = document.createElement('style');\r\n  styleEl.textContent = widgetStyles;\r\n  document.head.appendChild(styleEl);\r\n\r\n  root.innerHTML = `\r\n  <div class=\"dns-container\">\r\n    \r\n    <!-- DPS.MEDIA Header -->\r\n    <div class=\"dns-header\">\r\n      <div class=\"dns-header-bg1\">\r\n      <div class=\"dns-header-bg2\">\r\n      <div class=\"dns-header-content\">\r\n        <div class=\"dns-header-top\">\r\n          <div class=\"dns-header-left\">\r\n            <div class=\"dns-icon\">\ud83d\udd0d\r\n            <div>\r\n              <div class=\"dns-title\">Tra C\u1ee9u DNS H\u00e0ng Lo\u1ea1t\r\n              <div class=\"dns-subtitle\">C\u00f4ng c\u1ee5 chuy\u00ean nghi\u1ec7p t\u1eeb DPS.MEDIA\r\n            \r\n          \r\n          <div class=\"dns-brand\">\r\n            <div class=\"dns-brand-name\">DPS.MEDIA\r\n            <div>Digital Tools\r\n          \r\n        \r\n        <div class=\"dns-desc\">Nh\u1eadp m\u1ed7i t\u00ean mi\u1ec1n m\u1ed9t d\u00f2ng (c\u00f3 th\u1ec3 d\u00e1n URL). Ch\u1ecdn lo\u1ea1i b\u1ea3n ghi ho\u1eb7c \"T\u1ea4T C\u1ea2\" \u0111\u1ec3 tra 5 lo\u1ea1i ph\u1ed5 bi\u1ebfn.\r\n      \r\n    \r\n\r\n    <!-- Main Content -->\r\n    <div class=\"dns-main\">\r\n      <!-- Mobile\/Desktop Layout -->\r\n      <div class=\"dns-main-layout\">\r\n        \r\n        <!-- Input Section -->\r\n        <div class=\"dns-input-section\">\r\n          <textarea id=\"dns-lines\" class=\"dns-textarea\" rows=\"6\" placeholder=\"dps.media\nexample.com\nhttps:\/\/sub.domain.com\/\">\r\n          <div id=\"dns-count\" class=\"dns-count\">0 t\u00ean mi\u1ec1n\r\n        \r\n        \r\n        <!-- Controls Section -->\r\n        <div class=\"dns-controls\">\r\n          \r\n          <!-- Record Types -->\r\n          <div>\r\n            <div class=\"dns-label\">Lo\u1ea1i B\u1ea3n Ghi:\r\n            <div id=\"dns-types\" class=\"dns-types\">\r\n          \r\n          \r\n          <!-- Settings & Buttons Row -->\r\n          <div class=\"dns-actions\">\r\n            \r\n            <!-- Delay Setting -->\r\n            <div class=\"dns-delay-section\">\r\n              <div class=\"dns-delay-label\">\u0110\u1ed9 tr\u1ec5 gi\u1eefa c\u00e1c request:\r\n              <div class=\"dns-delay-input-group\">\r\n                <input id=\"dns-delay\" type=\"number\" min=\"50\" step=\"10\" value=\"120\" class=\"dns-delay-input\"> \r\n                <span class=\"dns-delay-unit\">ms\r\n              \r\n            \r\n            \r\n            <!-- Action Buttons -->\r\n            <div class=\"dns-action-buttons\">\r\n              <button id=\"dns-run\" class=\"dns-btn dns-btn-primary\">\r\n                <span id=\"run-text\">\ud83d\ude80 B\u1eaft \u0110\u1ea7u\r\n              \r\n              <button id=\"dns-stop\" class=\"dns-btn dns-btn-secondary\" style=\"display:none\">\r\n                \u23f9\ufe0f D\u1eebng\r\n              \r\n            \r\n          \r\n        \r\n      \r\n\r\n      <!-- Status & Actions Bar -->\r\n      <div class=\"dns-status-bar\">\r\n        <button id=\"dns-copy-table\" class=\"dns-btn-small dns-btn-copy\" disabled>\r\n          \ud83d\udccb Sao Ch\u00e9p\r\n        \r\n        <button id=\"dns-clear\" class=\"dns-btn-small dns-btn-clear\">\r\n          \ud83d\uddd1\ufe0f X\u00f3a\r\n        \r\n        \r\n        <!-- Progress Bar -->\r\n        <div class=\"dns-status-right\">\r\n          <div id=\"dns-progress\" class=\"dns-progress\">\r\n            <div id=\"dns-progress-bar\" class=\"dns-progress-bar\">\r\n          \r\n          <div id=\"dns-status\" class=\"dns-status\">\r\n        \r\n      \r\n\r\n      <!-- Error Display -->\r\n      <div id=\"dns-error\" class=\"dns-error\">\r\n        <span class=\"dns-error-icon\">\u26a0\ufe0f\r\n        <span id=\"dns-error-text\" class=\"dns-error-text\">\r\n      \r\n\r\n      <!-- Results Table -->\r\n      <div id=\"dns-results\" class=\"dns-results\">\r\n        <div class=\"dns-empty-state\">\r\n          <div class=\"dns-empty-icon\">\ud83d\udcca\r\n          <div class=\"dns-empty-text\">S\u1eb5n s\u00e0ng tra c\u1ee9u b\u1ea3n ghi DNS...\r\n          <div class=\"dns-empty-subtext\">\u0110\u01b0\u1ee3c h\u1ed7 tr\u1ee3 b\u1edfi DPS.MEDIA\r\n        \r\n      \r\n    \r\n\r\n    <!-- Footer -->\r\n    <div class=\"dns-footer\">\r\n      <div class=\"dns-footer-content\">\r\n        <span>Ph\u00e1t tri\u1ec3n b\u1edfi\r\n        <strong class=\"dns-footer-brand\">DPS.MEDIA\r\n        <span>\u2022\r\n        <span>C\u00f4ng c\u1ee5 s\u1ed1 chuy\u00ean nghi\u1ec7p\r\n        <span>\u2022\r\n        <a href=\"https:\/\/dps.media\" target=\"_blank\" class=\"dns-footer-link\">dps.media\r\n      \r\n    \r\n  `;\r\n\r\n  const ta = root.querySelector('#dns-lines');\r\n  const btnRun = root.querySelector('#dns-run');\r\n  const btnStop = root.querySelector('#dns-stop');\r\n  const btnClear = root.querySelector('#dns-clear');\r\n  const typesWrap = root.querySelector('#dns-types');\r\n  const statusEl = root.querySelector('#dns-status');\r\n  const errorEl = root.querySelector('#dns-error');\r\n  const errorTextEl = root.querySelector('#dns-error-text');\r\n  const resultsEl = root.querySelector('#dns-results');\r\n  const delayInput = root.querySelector('#dns-delay');\r\n  const btnCopy = root.querySelector('#dns-copy-table');\r\n  const countEl = root.querySelector('#dns-count');\r\n  const progressEl = root.querySelector('#dns-progress');\r\n  const progressBarEl = root.querySelector('#dns-progress-bar');\r\n  const runTextEl = root.querySelector('#run-text');\r\n\r\n  \/\/ Type pills v\u1edbi DPS branding\r\n  const TYPE_LABELS = {\r\n    'ALL': 'T\u1ea4T C\u1ea2',\r\n    'A': 'A', \r\n    'CNAME': 'CNAME',\r\n    'MX': 'MX',\r\n    'NS': 'NS',\r\n    'TXT': 'TXT'\r\n  };\r\n\r\n  let activeType = 'A';\r\n  RECORDS.forEach(t => {\r\n    const b = document.createElement('button');\r\n    b.textContent = TYPE_LABELS[t] || t;\r\n    b.className = 'dns-type-btn';\r\n    if (t === activeType) {\r\n      b.classList.add('active');\r\n    }\r\n    \r\n    b.addEventListener('click',()=>{\r\n      if (isRunning) return;\r\n      activeType = t;\r\n      [...typesWrap.children].forEach(c => c.classList.remove('active'));\r\n      b.classList.add('active');\r\n    });\r\n    typesWrap.appendChild(b);\r\n  });\r\n\r\n  \/\/ Domain count tracker v\u1edbi DPS colors\r\n  function updateDomainCount() {\r\n    const domains = ta.value.split(\/\\r?\\n\/)\r\n      .map(s=>extractHostname(s))\r\n      .filter(Boolean);\r\n    countEl.textContent = `${domains.length} t\u00ean mi\u1ec1n`;\r\n    \r\n    if (domains.length > 100) {\r\n      countEl.style.background = 'rgba(220,38,38,0.9) !important';\r\n      countEl.style.color = 'white !important';\r\n    } else if (domains.length > 50) {\r\n      countEl.style.background = 'rgba(245,158,11,0.9) !important';\r\n      countEl.style.color = 'white !important';\r\n    } else if (domains.length > 0) {\r\n      countEl.style.background = 'rgba(50,181,97,0.9) !important';\r\n      countEl.style.color = 'white !important';\r\n    } else {\r\n      countEl.style.background = 'rgba(21,21,119,0.9) !important';\r\n      countEl.style.color = 'white !important';\r\n    }\r\n  }\r\n\r\n  ta.addEventListener('input', updateDomainCount);\r\n  updateDomainCount();\r\n\r\n  function clampDelay(){\r\n    let v = Number(delayInput.value || 0);\r\n    if (!Number.isFinite(v) || v < 50){\r\n      v = 50;\r\n      delayInput.value = String(v);\r\n      setStatus('\u26a0\ufe0f \u0110\u1ed9 tr\u1ec5 \u0111\u00e3 \u0111\u01b0\u1ee3c \u0111\u1eb7t t\u1ed1i thi\u1ec3u: 50ms');\r\n    }\r\n    return v;\r\n  }\r\n  delayInput.addEventListener('input', clampDelay);\r\n  delayInput.addEventListener('blur', clampDelay);\r\n  delayInput.addEventListener('keydown', (e)=>{\r\n    if (e.key === '-') e.preventDefault();\r\n  });\r\n\r\n  function extractHostname(input){\r\n    if(!input) return '';\r\n    try{ return new URL(input).hostname.replace(\/\\.$\/,''); }\r\n    catch(e){ return String(input).trim().replace(\/^https?:\\\/\\\/\/i,'').replace(\/^\\\/*\/,'').split('\/')[0].split('?')[0].replace(\/\\.$\/,''); }\r\n  }\r\n\r\n  function sleep(ms){ return new Promise(r=>setTimeout(r, ms)); }\r\n\r\n  function clearError(){ \r\n    errorEl.style.display='none'; \r\n    errorTextEl.textContent=''; \r\n  }\r\n  function showError(msg){ \r\n    errorEl.style.display='flex'; \r\n    errorTextEl.textContent=msg; \r\n  }\r\n  function setStatus(msg){ \r\n    statusEl.textContent = msg; \r\n  }\r\n\r\n  function updateProgress(current, total) {\r\n    if (total === 0) {\r\n      progressEl.style.display = 'none';\r\n      return;\r\n    }\r\n    progressEl.style.display = 'block';\r\n    const percentage = Math.min((current \/ total) * 100, 100);\r\n    progressBarEl.style.width = `${percentage}%`;\r\n  }\r\n\r\n  \/\/ Render table v\u1edbi DPS branding - S\u1eed d\u1ee5ng div thay v\u00ec table elements\r\n  function ensureTable(){\r\n    if(resultsEl.firstChild && resultsEl.firstChild.classList && resultsEl.firstChild.classList.contains('dns-table')) return resultsEl.firstChild;\r\n    resultsEl.innerHTML = '';\r\n    const table = document.createElement('div');\r\n    table.className = 'dns-table';\r\n    \r\n    const isMobile = window.innerWidth < 768;\r\n    table.innerHTML = `<div class=\"dns-table-header-row\">\r\n      <div class=\"dns-table-header\">T\u00ean Mi\u1ec1n\r\n      <div class=\"dns-table-header center\">Lo\u1ea1i\r\n      <div class=\"dns-table-header ${isMobile ? 'mobile-hidden' : ''}\">T\u00ean\r\n      <div class=\"dns-table-header center\">TTL\r\n      <div class=\"dns-table-header\">D\u1eef Li\u1ec7u\r\n    <div class=\"dns-table-body\">`;\r\n    resultsEl.appendChild(table);\r\n    return table;\r\n  }\r\n\r\n  const allRows = [];\r\n  function appendRows(rows){\r\n    const table = ensureTable();\r\n    const tbody = table.querySelector('.dns-table-body');\r\n    const frag = document.createDocumentFragment();\r\n    const isMobile = window.innerWidth < 768;\r\n    \r\n    rows.forEach((r, i) => {\r\n      allRows.push(r);\r\n      const tr = document.createElement('div');\r\n      tr.className = 'dns-table-row';\r\n      \r\n      let dataColor = '#374151';\r\n      if (r.data === '(kh\u00f4ng c\u00f3 d\u1eef li\u1ec7u)') dataColor = '#9ca3af';\r\n      else if (r.data && r.data.startsWith('L\u1ed7i:')) dataColor = '#dc2626';\r\n      \r\n      tr.innerHTML = `<div class=\"dns-table-cell\">${r.domain}\r\n        <div class=\"dns-table-cell center type\">${r.type}\r\n        <div class=\"dns-table-cell name ${isMobile ? 'mobile-hidden' : ''}\">${r.name||''}\r\n        <div class=\"dns-table-cell center ttl\">${r.ttl??''}\r\n        <div class=\"dns-table-cell data\" style=\"color:${dataColor}\">${r.data||''}`;\r\n      frag.appendChild(tr);\r\n    });\r\n    tbody.appendChild(frag);\r\n    \r\n    btnCopy.disabled = false;\r\n    btnCopy.classList.remove('success');\r\n  }\r\n\r\n  async function queryDoH(domain, type){\r\n    const base = 'https:\/\/dns.google\/resolve';\r\n    const params = new URLSearchParams();\r\n    params.set('name', domain);\r\n    params.set('type', TYPE_CODE[type]);\r\n    const url = `${base}?${params.toString()}`;\r\n    const res = await fetch(url, { headers: { 'Accept':'application\/json' }});\r\n    if(!res.ok) throw new Error(`HTTP ${res.status}`);\r\n    return await res.json();\r\n  }\r\n\r\n  let abortFlag = false;\r\n  let isRunning = false;\r\n\r\n  btnStop.addEventListener('click', ()=>{ \r\n    abortFlag = true; \r\n    setStatus('\ud83d\uded1 \u0110ang d\u1eebng...'); \r\n  });\r\n\r\n  btnClear.addEventListener('click', () => {\r\n    if (isRunning) return;\r\n    resultsEl.innerHTML = `<div class=\"dns-empty-state\">\r\n      <div class=\"dns-empty-icon\">\ud83d\udcca\r\n      <div class=\"dns-empty-text\">S\u1eb5n s\u00e0ng tra c\u1ee9u b\u1ea3n ghi DNS...\r\n      <div class=\"dns-empty-subtext\">\u0110\u01b0\u1ee3c h\u1ed7 tr\u1ee3 b\u1edfi DPS.MEDIA\r\n    `;\r\n    allRows.length = 0;\r\n    btnCopy.disabled = true;\r\n    btnCopy.classList.remove('success');\r\n    clearError();\r\n    setStatus('');\r\n    progressEl.style.display = 'none';\r\n  });\r\n\r\n  btnRun.addEventListener('click', async ()=>{\r\n    if (isRunning) return;\r\n    \r\n    clearError(); \r\n    allRows.length = 0; \r\n    abortFlag = false;\r\n    isRunning = true;\r\n\r\n    btnRun.disabled = true;\r\n    runTextEl.textContent = '\u23f3 \u0110ang ch\u1ea1y...';\r\n    btnStop.style.display = 'block';\r\n    btnClear.style.display = 'none';\r\n    \r\n    [...typesWrap.children].forEach(b => {\r\n      b.style.cursor = 'not-allowed';\r\n      b.style.opacity = '0.6';\r\n    });\r\n\r\n    const delay = clampDelay();\r\n\r\n    const domains = ta.value.split(\/\\r?\\n\/)\r\n      .map(s=>extractHostname(s))\r\n      .filter(Boolean);\r\n\r\n    if (!domains.length){ \r\n      showError('Vui l\u00f2ng nh\u1eadp \u00edt nh\u1ea5t 1 t\u00ean mi\u1ec1n.'); \r\n      resetUIState();\r\n      return; \r\n    }\r\n    if (domains.length > 100){ \r\n      showError('Gi\u1edbi h\u1ea1n 100 t\u00ean mi\u1ec1n m\u1ed7i l\u1ea7n \u0111\u1ec3 tr\u00e1nh qu\u00e1 t\u1ea3i. H\u00e3y chia nh\u1ecf danh s\u00e1ch.'); \r\n      resetUIState();\r\n      return; \r\n    }\r\n\r\n    const types = (activeType==='ALL') ? [...POPULAR] : [activeType];\r\n    const totalQueries = domains.length * types.length;\r\n\r\n    resultsEl.innerHTML = '';\r\n    ensureTable();\r\n\r\n    let completed = 0;\r\n    for (let i=0; i<domains.length && !abortFlag; i++){\r\n      const d = domains[i];\r\n      for (const t of types){\r\n        if (abortFlag) break;\r\n        try{\r\n          setStatus(`\ud83d\udd0d ${d} [${t}] (${completed + 1}\/${totalQueries})`);\r\n          updateProgress(completed, totalQueries);\r\n          \r\n          const json = await queryDoH(d, t);\r\n          if (json && Array.isArray(json.Answer) && json.Answer.length > 0){\r\n            const rows = json.Answer.map(a=>({ domain:d, type:t, name:a.name, ttl:a.TTL, data:a.data }));\r\n            appendRows(rows);\r\n          } else if (json && Array.isArray(json.Authority) && json.Authority.length > 0){\r\n            const rows = json.Authority.map(a=>({ domain:d, type:t, name:a.name, ttl:a.TTL, data:a.data }));\r\n            appendRows(rows);\r\n          } else {\r\n            appendRows([{ domain:d, type:t, name:'', ttl:'', data:'(kh\u00f4ng c\u00f3 d\u1eef li\u1ec7u)' }]);\r\n          }\r\n        }catch(e){\r\n          appendRows([{ domain:d, type:t, name:'', ttl:'', data:`L\u1ed7i: ${e.message}` }]);\r\n        }\r\n        completed++;\r\n        updateProgress(completed, totalQueries);\r\n        if (completed < totalQueries && !abortFlag) {\r\n          await sleep(delay);\r\n        }\r\n      }\r\n    }\r\n    \r\n    if (abortFlag) {\r\n      setStatus(`\u23f9\ufe0f \u0110\u00e3 d\u1eebng (${completed}\/${totalQueries})`);\r\n    } else {\r\n      setStatus(`\u2705 Ho\u00e0n th\u00e0nh! ${allRows.length} b\u1ea3n ghi t\u1eeb ${domains.length} t\u00ean mi\u1ec1n`);\r\n    }\r\n    \r\n    resetUIState();\r\n  });\r\n\r\n  function resetUIState() {\r\n    isRunning = false;\r\n    btnRun.disabled = false;\r\n    runTextEl.textContent = '\ud83d\ude80 B\u1eaft \u0110\u1ea7u';\r\n    btnStop.style.display = 'none';\r\n    btnClear.style.display = 'block';\r\n    progressEl.style.display = 'none';\r\n    \r\n    [...typesWrap.children].forEach(b => {\r\n      b.style.cursor = 'pointer';\r\n      b.style.opacity = '1';\r\n    });\r\n  }\r\n\r\n  function escapeCell(v){\r\n    if (v == null) return '';\r\n    const s = String(v);\r\n    return s.replace(\/\\t\/g, ' ').replace(\/\\r?\\n\/g, ' ');\r\n  }\r\n  function rowsToTSV(rows){\r\n    const header = ['T\u00ean Mi\u1ec1n','Lo\u1ea1i','T\u00ean','TTL','D\u1eef Li\u1ec7u'];\r\n    const lines = [header.join('\\t')].concat(rows.map(r => [r.domain, r.type, r.name||'', r.ttl??'', r.data||''].map(escapeCell).join('\\t')));\r\n    return lines.join('\\n');\r\n  }\r\n  async function copyText(text){\r\n    if (navigator.clipboard && navigator.clipboard.writeText){\r\n      await navigator.clipboard.writeText(text);\r\n    } else {\r\n      const ta = document.createElement('textarea');\r\n      ta.value = text; document.body.appendChild(ta); ta.select(); document.execCommand('copy'); document.body.removeChild(ta);\r\n    }\r\n  }\r\n  btnCopy.addEventListener('click', async ()=>{\r\n    if (!allRows.length){ setStatus('\u274c Kh\u00f4ng c\u00f3 d\u1eef li\u1ec7u \u0111\u1ec3 sao ch\u00e9p.'); return; }\r\n    try{\r\n      await copyText(rowsToTSV(allRows));\r\n      setStatus('\u2705 \u0110\u00e3 sao ch\u00e9p b\u1ea3ng v\u00e0o clipboard!');\r\n      \r\n      const originalText = btnCopy.textContent;\r\n      btnCopy.textContent = '\u2705 \u0110\u00e3 sao ch\u00e9p!';\r\n      btnCopy.classList.add('success');\r\n      \r\n      setTimeout(() => {\r\n        btnCopy.textContent = originalText;\r\n        btnCopy.classList.remove('success');\r\n      }, 2000);\r\n    }catch(e){ \r\n      setStatus('\u274c Sao ch\u00e9p th\u1ea5t b\u1ea1i: ' + e.message); \r\n    }\r\n  });\r\n\r\n  \/\/ Window resize handler\r\n  let resizeTimeout;\r\n  window.addEventListener('resize', () => {\r\n    clearTimeout(resizeTimeout);\r\n    resizeTimeout = setTimeout(() => {\r\n      if (resultsEl.firstChild && resultsEl.firstChild.classList && resultsEl.firstChild.classList.contains('dns-table')) {\r\n        const currentRows = [...allRows];\r\n        allRows.length = 0;\r\n        resultsEl.innerHTML = '';\r\n        if (currentRows.length > 0) {\r\n          appendRows(currentRows);\r\n        }\r\n      }\r\n    }, 100);\r\n  });\r\n\r\n  \/\/ Initialize copy button state\r\n  btnCopy.disabled = true;\r\n})();\r\n<\/script><!-- End DNS Bulk Lookup Widget - DPS.MEDIA --><strong>Check DNS domain &amp; free online domain info check is an essential tool to help you protect and optimize your website effectively.<\/strong><p> This ensures the system operates stably, minimizing the risk of cyberattacks.<\/p><p>According to statistics, 75% of website incidents originate from errors in DNS configuration or inaccurate domain information. <a class=\"wpil_keyword_link\" href=\"https:\/\/dps.media\/en\/\" title=\"DPS.MEDIA JSC\" data-wpil-keyword-link=\"linked\" data-wpil-monitor-id=\"764\">DPS.MEDIA<\/a> has supported hundreds of Vietnamese SMEs to optimize this infrastructure, enhancing digital marketing efficiency.<br><img decoding=\"async\" class=\"kimage_class\" src=\"https:\/\/dps.media\/wp-content\/uploads\/2025\/08\/lained.jpg\" alt=\"The importance of checking domain DNS in a digital marketing strategy\" title=\"\"><\/p><h2 id=\"tam-quan-trong-cua-viec-kiem-tra-dns-domain-trong-chien-luoc-digital-marketing\">The importance of checking domain DNS in digital marketing strategy<\/h2><h3>Verify ownership &amp; domain integrity<\/h3><p>A domain with correctly configured DNS ensures business emails are not blocked or sent to spam. According to Google Postmaster Tools (2023), over 62% of unauthenticated emails are marked as spam. If you run email marketing campaigns without checking SPF, DKIM, TLS, or MX records, your chances of reaching customers will be very low.<\/p><ul>\n<li><strong>SPF<\/strong>: identifies servers allowed to send email from the domain<\/li>\n<li><strong>DKIM<\/strong>: digitally signs and authenticates email content<\/li>\n<li><strong>MX records<\/strong>: sets up the mail server for the domain<\/li>\n<\/ul><div class=\"wp-block-group has-background\">\n  <strong>Tip:<\/strong> Regularly check SPF, DKIM using free tools like mail-tester.com, MXToolbox, or Google Admin Toolbox.\n<\/div><h3>Optimize speed &amp; content delivery capability<\/h3><p>DNS records help distribute traffic to the correct web server, email, CDN,... This directly affects the user experience. For example: an agency unit did not update DNS after moving hosting, causing both the website and landing pages of a Google Ads campaign to lose connection for 6 hours. The lost cost can be up to millions of VND.<\/p><ul>\n<li>Update A, CNAME records when changing DNS\/hosting<\/li>\n<li>Verify TTL (Time to live) to avoid delays<\/li>\n<\/ul><h3>Prevent risks of Domain hijacking &amp; Data leakage<\/h3><p>DNS errors can cause domains to be maliciously redirected. According to Palo Alto Networks Security Company (2022), 20% of phishing attacks originate from DNS misconfiguration. Common errors include DNS exposing internal records, not configuring DNSSEC...<\/p><table class=\"WordPress\">\n<thead>\n<tr>\n<th>Record type<\/th>\n<th>Purpose<\/th>\n<th>Check<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>SPF<\/td>\n<td>Anti-email spoofing<\/td>\n<td>SPF lookup tool<\/td>\n<\/tr>\n<tr>\n<td>MX<\/td>\n<td>Mail distribution<\/td>\n<td>MXToolbox<\/td>\n<\/tr>\n<tr>\n<td>DNSSEC<\/td>\n<td>DNS query security<\/td>\n<td>Whois\/DNS check<\/td>\n<\/tr>\n<\/tbody>\n<\/table><h3>DNS checklist for digital marketing campaigns<\/h3><p>\u2705 Verify SPF, DKIM, DMARC are working correctly<br>\n\u2705 Check mail server IP is not blacklisted<br>\n\u2705 Update A\/CNAME records when changing hosting<br>\n\u2705 Correct CDN setup (if using Cloudflare, AWS...)<br>\n\u2705 Enable DNSSEC and hide WHOIS information if extra security is needed  <\/p><div class=\"wp-block-group has-background\">\n  <strong>Real-world tip:<\/strong> Before launching the landing page, check DNS propagation using dnschecker.org to ensure the new configuration has been updated globally.\n<\/div><h3>Brief conclusion<\/h3><p><strong>DNS is not just for technical purposes, <a href=\"https:\/\/dps.media\/en\/bulk-dns-lookup-optimized-solution-for-domain-name-management\/\" rel=\"nofollow\">but also directly affects digital marketing effectiveness and brand reputation.<\/a>.<\/strong> A few minutes checking DNS can help avoid losses of hundreds of millions of VND in advertising and CRM.<br><img decoding=\"async\" class=\"kimage_class\" src=\"https:\/\/dps.media\/wp-content\/uploads\/2025\/08\/-la-gi.jpg9500.jpg\" alt=\"How the DNS system works and its impact on website performance\" title=\"\"><\/p><h2 id=\"cach-thuc-hoat-dong-cua-he-thong-dns-va-anh-huong-toi-hieu-suat-website\">How the DNS system works and its impact on website performance<\/h2><h3>What is DNS and how does it work?<\/h3><p>\u2013 <strong>DNS (Domain Name System)<\/strong> is the system that resolves domain names, converting user-friendly domains like example.com into IP addresses that servers understand (e.g., 192.0.2.1).<br>\n\u2013 When a user types a website address, the browser sends a request to the DNS Resolver to find the corresponding IP.<br>\n\u2013 The system will check the local cache, then sequentially query the root servers, TLD servers, and finally the Nameserver of each website.<\/p><div class=\"wp-block-group has-background\">\n<p><strong>Tip:<\/strong> Using DNS with low latency, such as Cloudflare (1.1.1.1) or Google DNS (8.8.8.8), significantly improves page load times.<\/p>\n<\/div><h3>The real impact of DNS on website speed<\/h3><p>\u2013 Average DNS resolution time: 20-120ms (according to Cloudflare Radar, 2023). If DNS is too slow, the entire page loading process will be delayed.<br>\n\u2013 Websites using slow NS will record <strong>TTFB (Time to First Byte)<\/strong> about 30% higher compared to sites using high-speed DNS.<br>\n\u2013 Example: An e-commerce customer recorded a 12% decrease in bounce rate after switching from unstable free DNS to a paid service like AWS Route 53.<\/p><h3>DNS optimization checklist to improve performance<\/h3><ul>\n<li>\u2705 Minimize the number of subdomains that need to be resolved.<\/li>\n<li>\u2705 Enable DNS caching on both server and user side.<\/li>\n<li>\u2705 Prioritize Cloud DNS with integrated CDN such as Cloudflare.<\/li>\n<li>\u2705 Check TTL (Time to Live) and reconfigure ideally (1200s - 3600s).<\/li>\n<li>\u2705 Use tools like dnschecker.org or dig to check the DNS response time of each Nameserver.<\/li>\n<\/ul><h3>TTFB comparison table based on DNS type<\/h3><table class=\"WordPress\">\n<thead>\n<tr>\n<th style=\"text-align:left\">DNS Type<\/th>\n<th style=\"text-align:center\">Average TTFB time<\/th>\n<th style=\"text-align:center\">Reliability<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>Free DNS (local ISP)<\/td>\n<td style=\"text-align:center\">190ms<\/td>\n<td style=\"text-align:center\">Average<\/td>\n<\/tr>\n<tr>\n<td>Google DNS (8.8.8.8)<\/td>\n<td style=\"text-align:center\">90ms<\/td>\n<td style=\"text-align:center\">High<\/td>\n<\/tr>\n<tr>\n<td>Cloudflare DNS (1.1.1.1)<\/td>\n<td style=\"text-align:center\">55ms<\/td>\n<td style=\"text-align:center\">Very high<\/td>\n<\/tr>\n<\/tbody>\n<\/table><h3>Challenges and notes when optimizing DNS<\/h3><p>\u2013 Some free DNS providers may be blocked or experience query errors from Vietnam.<br>\n- DNS propagation (the process of global DNS update) can take from a few minutes to 48h.<br>\n\u2013 Changing DNS without synchronizing with server content easily causes service interruption.<\/p><div class=\"wp-block-group has-background\">\n<p><strong>Warning:<\/strong> A small change in Nameserver configuration can also make the website inaccessible for hours if not checked carefully.<\/p>\n<\/div><h3>Takeaway<\/h3><p>Optimizing DNS not only improves page load performance but also minimizes downtime risks. Regularly check your domain's DNS to ensure smooth system operation, especially if you are running ads or have high traffic.<br><img decoding=\"async\" class=\"kimage_class\" src=\"https:\/\/dps.media\/wp-content\/uploads\/2025\/08\/efault.jpg\" alt=\"Guide to using DNS checking tools and retrieving free domain information\" title=\"\"><\/p><h2 id=\"huong-dan-su-dung-cong-cu-kiem-tra-dns-va-truy-xuat-thong-tin-ten-mien-mien-phi\">Guide to using free DNS checking and domain information lookup tools<\/h2><h3>Steps to check DNS and look up domain names<\/h3><p>To quickly check the DNS configuration and information of any domain, you can follow these steps:<\/p><ul>\n<li>Go to an official domain checking tool such as <strong>whois.domaintools.com<\/strong> 5px <strong>dnschecker.org<\/strong>.<\/li>\n<li>Enter the domain name to check (e.g.: yourdomain.com).<\/li>\n<li>Select the DNS record type to query: A, MX, NS, TXT, SOA\u2026<\/li>\n<li>View the analysis results and response times from each global DNS server.<\/li>\n<\/ul><div class=\"wp-block-group has-background\" style=\"background-color:#f0f0f0;padding:15px\">\n<p><strong>Tip:<\/strong> It is recommended to periodically check DNS configuration to detect CNAME duplication errors or SPF records missing authentication marks early.<\/p>\n<\/div><h3>Checklist of items to pay attention to when checking<\/h3><p>Below is a list of important information you should check each time you access a domain:<\/p><ul>\n<li>Registration status: Still valid or expired<\/li>\n<li>DNS propagation: Has it been properly distributed to the servers?<\/li>\n<li>WHOIS contact information: Is it hidden or public?<\/li>\n<li>DNSSEC security: Is it enabled?<\/li>\n<\/ul><h3>Summary table of example check results<\/h3><p>For example, checking the domain \u201cthietkewebabc.com\u201d with an A record:<\/p><table class=\"wp-block-table WordPress\">\n<thead>\n<tr>\n<th>Record type<\/th>\n<th>Value<\/th>\n<th>TTL<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>A<\/td>\n<td>203.119.8.105<\/td>\n<td>3600<\/td>\n<\/tr>\n<tr>\n<td>NS<\/td>\n<td>dns1.vina.com.vn<\/td>\n<td>86400<\/td>\n<\/tr>\n<tr>\n<td>MX<\/td>\n<td>mail.thietkewebabc.com<\/td>\n<td>7200<\/td>\n<\/tr>\n<\/tbody>\n<\/table><h3>Real-world examples &amp; potential risks<\/h3><p>An (anonymous) business accidentally let their domain expire for 24 hours, causing all internal email to be completely shut down. According to ICANN's report (2023), up to 18% of DNS incidents stem from inconsistent configuration between records.<\/p><div class=\"wp-block-group has-background\" style=\"background-color:#fafafa;padding:15px\">\n<p><strong>Warning:<\/strong> Lack of regular checks can lead to forged TXT records (SPF, DKIM) and result in brand spoofing emails.<\/p>\n<\/div><h3>Quick conclusion<\/h3><p>Checking DNS &amp; domains not only prevents incidents but also supports security &amp; operation optimization. Maintain a habit of validating DNS at least once\/month!<br><img decoding=\"async\" class=\"kimage_class\" src=\"https:\/\/dps.media\/wp-content\/uploads\/2025\/08\/dns1.jpg\" alt=\"Analyze key parameters when checking DNS to ensure stability and security\" title=\"\"><\/p><h2 id=\"phan-tich-cac-thong-so-quan-trong-khi-kiem-tra-dns-de-dam-bao-tinh-on-dinh-va-bao-mat\">Analysis of important parameters when checking DNS to ensure stability and security<\/h2><h3>1. DNS Response Time<\/h3><p>This is one of the most important metrics to monitor when you <strong>check DNS domain<\/strong>. High response time can cause delays in website loading, affecting user experience.<\/p><p>\u2013 Loading time should be under 100ms (according to Pingdom, 2023)<br>\n\u2013 Check from multiple geographic locations to detect network bottlenecks<br>\n\u2013 Use tools: DNSPerf, DNS Spy<\/p><div class=\"wp-block-group has-background\" style=\"background-color:#f3f4f6;padding:10px\">\n  <strong>TIP:<\/strong> Prioritize DNS configuration close to the main access region (e.g., Cloudflare Singapore for Vietnamese users) to reduce latency.\n<\/div><h3>2. DNS record status (A, MX, CNAME...)<\/h3><p>A full analysis of existing records helps determine whether the DNS configuration is accurate and complete. Errors in records can easily lead to undelivered\/received emails or 404 error pages.<\/p><p>List of important records to check:<\/p><p>\u2013 A, AAAA: IP address of the domain<br>\n\u2013 MX: Send and receive email<br>\n\u2013 CNAME: Alternative domain name<br>\n\u2013 TXT: SPF, DKIM, DMARC to protect email<br>\n\u2013 NS: Official Name Server<\/p><table class=\"wp-block-table WordPress\">\n<thead>\n<tr>\n<th>Record type<\/th>\n<th>Main role<\/th>\n<th>Security note<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>MX<\/td>\n<td>Email routing<\/td>\n<td>Set up SPF and DKIM correctly<\/td>\n<\/tr>\n<tr>\n<td>TXT<\/td>\n<td>Verification &amp; security<\/td>\n<td>add DMARC to prevent spoofing<\/td>\n<\/tr>\n<tr>\n<td>CNAME<\/td>\n<td>Redirect subdomain<\/td>\n<td>Do not point to uncontrolled domains<\/td>\n<\/tr>\n<\/tbody>\n<\/table><h3>3. DNSSEC: Prevent DNS spoofing<\/h3><p>DNSSEC technology helps verify data sources and prevent DNS spoofing attacks (man-in-the-middle). However, not all providers enable it by default.<\/p><p>\u2013 According to Statista (2023), only 27% of global domains enable DNSSEC<br>\n\u2013 Self-managed VPS usually needs manual DNSSEC configuration<br>\n\u2013 If DNS does not have DNSSEC, users can be redirected to fake pages<\/p><div class=\"wp-block-group has-background\" style=\"background-color:#fff7e6;padding:10px\">\n  <strong>Warning:<\/strong> A Vietnamese company had its email domain spoofed and lost $3,000 due to not setting up DKIM and DNSSEC properly (source: VNCERT Cybersecurity Report 2022).\n<\/div><h3>Quick DNS Check Checklist<\/h3><ul>\n<li>\u2705 Ensure A &amp; MX records return the correct IP and host<\/li>\n<li>\u2705 Check SPF, DKIM, DMARC to prevent email spoofing<\/li>\n<li>\u2705 Authenticate NS as the official name server<\/li>\n<li>\u2705 Test DNS latency from multiple locations (DNS Benchmark)<\/li>\n<li>\u2705 Consider enabling DNSSEC if supported<\/li>\n<\/ul><h3>Short summary<\/h3><p>Checking DNS not only helps your website run quickly and stably but also avoids unnecessary security risks, especially with business domain emails. With a few actions like checking TXT records or enabling DNSSEC, you have significantly reduced the risk of spoofing and phishing from bad actors. Remember to check periodically every 3-6 months or when changing system infrastructure.<br><img decoding=\"async\" class=\"kimage_class\" src=\"https:\/\/dps.media\/wp-content\/uploads\/2025\/08\/efault.jpga828.jpg\" alt=\"Optimal DNS configuration advice to enhance user experience and SEO\" title=\"\"><\/p><h2 id=\"loi-khuyen-toi-uu-cau-hinh-dns-giup-nang-cao-trai-nghiem-nguoi-dung-va-seo\">DNS configuration optimization tips to enhance user experience and SEO<\/h2><h3>How does DNS configuration affect website speed?<\/h3><p>Slow DNS routing can cause a website to take up to 1-2 seconds to load the page \u2013 this causes the bounce rate to increase by nearly 32% according to Google research (2023). An optimized DNS system will help users access faster and minimize page load time.<\/p><div class=\"wp-block-group has-background\">\n  <strong>Tip:<\/strong> Prioritize using <strong>DNS servers close to your target customers' location<\/strong> to increase response speed.\n<\/div><h3>Basic DNS checking &amp; optimization steps<\/h3><p>Regularly check DNS records to ensure there are no errors or misconfigurations:<\/p><ul>\n<li>Use free tools like DNS Checker, mxtoolbox for instant checks<\/li>\n<li>Verify the consistency of A, CNAME, TXT records globally<\/li>\n<li>Enable DNSSEC to protect against DNS spoofing<\/li>\n<\/ul><div class=\"wp-block-group has-background\">\n  <strong>Note:<\/strong> If you switch to a new hosting provider, synchronize DNS immediately to avoid system downtime.\n<\/div><h3>Effective DNS configuration optimization checklist<\/h3><ul>\n<li>\u2714 Check appropriate TTL (usually from 300-1800 seconds)<\/li>\n<li>\u2714 Verify response speed &lt; 150ms in the target market<\/li>\n<li>\u2714 Remove unused records to reduce DNS latency<\/li>\n<li>\u2714 Set up SPF, DKIM, and DMARC records to support email deliverability<\/li>\n<\/ul><h3>Real-life example: E-commerce company A<\/h3><p>An e-commerce business in Ho Chi Minh City recorded a 42% reduction in average response time after switching DNS from the default server to Cloudflare (according to internal report Q2\/2023). As a result, the conversion rate increased by 8.7% after 6 weeks of implementation.<\/p><table class=\"WordPress\">\n<thead>\n<tr>\n<th>Indicators<\/th>\n<th>Before<\/th>\n<th>After<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>DNS response time<\/td>\n<td>320ms<\/td>\n<td>185ms<\/td>\n<\/tr>\n<tr>\n<td>Conversion Rate<\/td>\n<td>2.4%<\/td>\n<td>3.1%<\/td>\n<\/tr>\n<\/tbody>\n<\/table><h3>Warnings &amp; risks to note<\/h3><ul>\n<li>If the IP or domain is misconfigured, it may cause page loading errors<\/li>\n<li>Incorrect SPF\/DKIM records affect email marketing deliverability<\/li>\n<li>Changing DNS without understanding propagation time causes service interruptions<\/li>\n<\/ul><div class=\"wp-block-group has-background\">\n  <strong>Tips:<\/strong> Always backup the current DNS configuration before changing \u2013 especially important for long-standing domains.\n<\/div><h3>Brief takeaway<\/h3><p>Checking &amp; optimizing DNS not only helps the website load faster but also directly affects SEO and long-term user experience. Be proactive in monitoring DNS periodically to maintain optimal performance.<\/p><p>\u2013<\/p><p>DPS.MEDIA \u2013 Supporting SMEs to upgrade DNS systems and optimize web infrastructure.<br><img decoding=\"async\" class=\"kimage_class\" src=\"https:\/\/dps.media\/wp-content\/uploads\/2025\/08\/00x675.jpg\" alt=\"Handling common DNS-related issues and effective domain management\" title=\"\"><\/p><h2 id=\"xu-ly-cac-su-co-thuong-gap-lien-quan-den-dns-va-quan-ly-ten-mien-hieu-qua\">Handling common DNS-related issues and effective domain management<\/h2><h3>Common DNS errors &amp; how to identify them<\/h3><p>When a domain is not functioning properly, the cause often comes from incorrect DNS configuration. Here are some common errors you should check:<\/p><ul>\n<li>\u274c Not pointing to the correct IP address (A record or CNAME).<\/li>\n<li>\u26d4 Slow DNS propagation: can take 24-48h.<\/li>\n<li>\u2757 TTL too long makes it difficult to quickly update DNS configurations.<\/li>\n<li>\u26a0\ufe0f Missing or incorrect MX records leading to email loss.<\/li>\n<\/ul><div class=\"wp-block-group has-background\">\n<p><strong>Tips:<\/strong> Use tools like whatsmydns.net to check DNS resolution status by geographic region.<\/p>\n<\/div><h3>Quick DNS error troubleshooting checklist<\/h3><p>Here is a list of steps to help you check and handle the process correctly:<\/p><ul>\n<li>\u2705 Ensure DNS points to the correct current hosting\/IP.<\/li>\n<li>\ud83d\udd0d Check that the domain has not expired at whois.icann.org.<\/li>\n<li>\ud83d\udee0 Use <strong>DNS lookup tools<\/strong> to verify each record.<\/li>\n<li>\ud83d\udce9 Recheck the MX record with SMTP test services if email errors occur.<\/li>\n<li>\ud83d\udd01 Temporarily reduce TTL to 300s when a quick update is needed.<\/li>\n<\/ul><div class=\"wp-block-group has-background\">\n<p><strong>Tips:<\/strong> Always keep periodic backup DNS records in case a quick rollback is required.<\/p>\n<\/div><h3>Real-life example: Customer lost email for 3 days<\/h3><p>A small business in the e-commerce sector experienced a complete loss of internal email for 72 hours. Cause: MX record was deleted when switching DNS to a new provider. After support from DPS.MEDIA:<\/p><ul>\n<li>\u2192 Restored MX record from old log<\/li>\n<li>\u2192 Deployed SPF, DKIM to prevent loss or spam<\/li>\n<li>\u2192 Reduced risk of data loss via GWS sync system<\/li>\n<\/ul><h3>Common DNS structure table<\/h3><table class=\"wordpress\">\n<thead>\n<tr>\n<th>Record Type<\/th>\n<th>Function<\/th>\n<th>Example<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>A<\/td>\n<td>Point domain to IP<\/td>\n<td>mydomain.com \u2192 123.456.789.10<\/td>\n<\/tr>\n<tr>\n<td>CNAME<\/td>\n<td>Redirect to another domain<\/td>\n<td>www.mydomain.com \u2192 mydomain.com<\/td>\n<\/tr>\n<tr>\n<td>MX<\/td>\n<td>Set up email server<\/td>\n<td>mail.mydomain.com<\/td>\n<\/tr>\n<tr>\n<td>TXT<\/td>\n<td>Authenticate SPF, DKIM, etc.<\/td>\n<td>v=spf1 include:_spf.google.com ~all<\/td>\n<\/tr>\n<\/tbody>\n<\/table><h3>Risks &amp; warnings when changing DNS<\/h3><p>Changing DNS directly affects the operation of the website and email system \u2013 it can even make the website \u201ctake a break\u201d temporarily if configured incorrectly. According to a report from Verisign (2023), more than 5% of business domains suffered downtime &gt;3 hours due to DNS errors not being tested beforehand.<\/p><div class=\"wp-block-group has-background\">\n<p><strong>Tips:<\/strong> Always thoroughly check in the staging\/testing environment before applying to the production system.<\/p>\n<\/div><h3>Brief takeaway<\/h3><p>Managing DNS effectively requires accuracy and strict control. Do not just rely on \u201cauto\u201d or defaults from the provider \u2013 actively check regularly and use free DNS check tools to prevent incidents in time.<br><img decoding=\"async\" class=\"kimage_class\" src=\"https:\/\/dps.media\/wp-content\/uploads\/2025\/08\/_works.jpg\" alt=\"The importance of checking domain ownership information in building an online brand\" title=\"\"><\/p><h2 id=\"tam-quan-trong-cua-viec-kiem-tra-thong-tin-chu-so-huu-ten-mien-trong-viec-xay-dung-thuong-hieu-truc-tuyen\">The importance of checking domain ownership information in building an online brand<\/h2><h3>Building trust and increasing reliability<\/h3><p>domain ownership verification helps ensure that the brand is operating legally and transparently. According to ICANN (2023), over 45% of users have refused to purchase due to doubts about the authenticity of a website.<\/p><ul>\n<li>Official domain increases brand credibility<\/li>\n<li>Transparent WHOIS information\u200d makes legal verification easy<\/li>\n<li>Helps \u200dincrease customer conversion\u200d rates<\/li>\n<\/ul><h3>Reducing the risk of online brand hijacking<\/h3><p>Bad actors can impersonate brands by registering similar domains for fraud. The \u201cdomain squatting\u201d situation makes businesses miss the opportunity to protect their online reputation.<\/p><div class=\"wp-block-group has-background\">\n  <strong>TIP:<\/strong> You should check WHOIS every 3-6 months to promptly detect impersonating domains or unauthorized changes to information.\n<\/div><h3>Domain ownership verification checklist<\/h3><ul>\n<li>\u2705 Access the free WHOIS tool \u2192 check address, contact email<\/li>\n<li>\u2705 Compare domain information\u200d with the company\u2019s legal information<\/li>\n<li>\u2705 Check expiration date \u2013 avoid losing ownership<\/li>\n<li>\u2705 Enable WHOIS protection if the domain is important<\/li>\n<\/ul><h3>Comparison table: Verified domain vs. anonymous domain<\/h3><table class=\"wp-block-table WordPress\">\n<thead>\n<tr>\n<th>Headline<\/th>\n<th>Verified domain<\/th>\n<th>Unknown owner domain<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>Reliability<\/td>\n<td>High<\/td>\n<td>Low<\/td>\n<\/tr>\n<tr>\n<td>Risk of impersonation<\/td>\n<td>Low<\/td>\n<td>High<\/td>\n<\/tr>\n<tr>\n<td>Easy brand management<\/td>\n<td>Yes<\/td>\n<td>No<\/td>\n<\/tr>\n<\/tbody>\n<\/table><h3>Real-life example: Case of a business being impersonated<\/h3><p>In September 2022, a cosmetics brand in Hanoi was scammed through a fake domain with an extension similar to the brand name. Customers\u200d transferred money in advance following instructions from the impersonating domain, causing losses of over 200 million VND. Early WHOIS checks and domain locking could have prevented this incident.<\/p><h3>Takeaway<\/h3><p><strong>Checking domain ownership information plays a key role in building a safe and transparent brand in the digital environment.<\/strong> This is not just a technical step, but also a strategy to protect reputation and user trust. <\/p><h2 id=\"outro\">Looking back on the journey so far<\/h2><p>Checking DNS and looking up domain names helps protect the brand, optimize website performance, and increase control over data in the digital environment.<br>\nUnderstanding the domain name system is the first step to success in digital.<\/p><p>Access the free DNS checking tool now to review your domain information.<br>\nJust a few minutes of checking can help you detect potential issues early.<\/p><p>You should also learn more about SSL, hosting, and CDN for web security.<br>\nThey are indispensable components for the stability of enterprise digital infrastructure.<\/p><p>DPS.MEDIA always accompanies SMEs in the process of effective and sustainable digital transformation.<br>\nLeave a comment below if you have any questions or want to share more information! <\/p>\n<style>\r\n.lwrp.link-whisper-related-posts{\r\n            \r\n            margin-top: 40px;\nmargin-bottom: 30px;\r\n        }\r\n        .lwrp .lwrp-title{\r\n            \r\n            \r\n        }.lwrp .lwrp-description{\r\n            \r\n            \r\n\r\n        }\r\n        .lwrp .lwrp-list-container{\r\n        }\r\n        .lwrp .lwrp-list-multi-container{\r\n            display: flex;\r\n        }\r\n        .lwrp .lwrp-list-double{\r\n            width: 48%;\r\n        }\r\n        .lwrp .lwrp-list-triple{\r\n            width: 32%;\r\n        }\r\n        .lwrp .lwrp-list-row-container{\r\n            display: flex;\r\n            justify-content: space-between;\r\n        }\r\n        .lwrp .lwrp-list-row-container .lwrp-list-item{\r\n            width: calc(33% - 20px);\r\n        }\r\n        .lwrp .lwrp-list-item:not(.lwrp-no-posts-message-item){\r\n            \r\n            max-width: 150px;\r\n        }\r\n        .lwrp .lwrp-list-item img{\r\n            max-width: 100%;\r\n            height: auto;\r\n            object-fit: cover;\r\n            aspect-ratio: 1 \/ 1;\r\n        }\r\n        .lwrp .lwrp-list-item.lwrp-empty-list-item{\r\n            background: initial !important;\r\n        }\r\n        .lwrp .lwrp-list-item .lwrp-list-link .lwrp-list-link-title-text,\r\n        .lwrp .lwrp-list-item .lwrp-list-no-posts-message{\r\n            \r\n            \r\n            \r\n            \r\n        }@media screen and (max-width: 480px) {\r\n            .lwrp.link-whisper-related-posts{\r\n                \r\n                \r\n            }\r\n            .lwrp .lwrp-title{\r\n                \r\n                \r\n            }.lwrp .lwrp-description{\r\n                \r\n                \r\n            }\r\n            .lwrp .lwrp-list-multi-container{\r\n                flex-direction: column;\r\n            }\r\n            .lwrp .lwrp-list-multi-container ul.lwrp-list{\r\n                margin-top: 0px;\r\n                margin-bottom: 0px;\r\n                padding-top: 0px;\r\n                padding-bottom: 0px;\r\n            }\r\n            .lwrp .lwrp-list-double,\r\n            .lwrp .lwrp-list-triple{\r\n                width: 100%;\r\n            }\r\n            .lwrp .lwrp-list-row-container{\r\n                justify-content: initial;\r\n                flex-direction: column;\r\n            }\r\n            .lwrp .lwrp-list-row-container .lwrp-list-item{\r\n                width: 100%;\r\n            }\r\n            .lwrp .lwrp-list-item:not(.lwrp-no-posts-message-item){\r\n                \r\n                max-width: initial;\r\n            }\r\n            .lwrp .lwrp-list-item .lwrp-list-link .lwrp-list-link-title-text,\r\n            .lwrp .lwrp-list-item .lwrp-list-no-posts-message{\r\n                \r\n                \r\n                \r\n                \r\n            };\r\n        }<\/style>\r\n<div id=\"link-whisper-related-posts-widget\" class=\"link-whisper-related-posts lwrp\">\r\n            <div class=\"lwrp-title\">Related Posts<\/div>    \r\n        <div class=\"lwrp-list-container\">\r\n                                <div class=\"lwrp-list lwrp-list-row-container lwrp-list-double-row\">\r\n                <div class=\"lwrp-list-item\"><a href=\"https:\/\/dps.media\/en\/register-tiktok-tiktok-shop-detailed-guide-from-a-to-z\/\" class=\"lwrp-list-link\"><span class=\"lwrp-list-link-title-text\">Register TikTok, TikTok Shop: Detailed Guide from A to Z<\/span><\/a><\/div><div class=\"lwrp-list-item\"><a href=\"https:\/\/dps.media\/en\/bad-liar-im-beautiful-say-hi-sing-live-very-passionate-full-of-emotion\/\" class=\"lwrp-list-link\"><span class=\"lwrp-list-link-title-text\">Bad Liar \u2013 Em Xinh Say Hi sings live with intense emotion<\/span><\/a><\/div><div class=\"lwrp-list-item\"><a href=\"https:\/\/dps.media\/en\/tiktok-web-business-suite-solution-for-large-enterprises\/\" class=\"lwrp-list-link\"><span class=\"lwrp-list-link-title-text\">TikTok Web Business Suite: Solutions for large enterprises<\/span><\/a><\/div>                <\/div>\r\n                            <div class=\"lwrp-list lwrp-list-row-container lwrp-list-double-row\">\r\n                <div class=\"lwrp-list-item\"><a href=\"https:\/\/dps.media\/en\/effective-email-marketing-strategy-for-spa-growth\/\" class=\"lwrp-list-link\"><span class=\"lwrp-list-link-title-text\">Email Marketing for Spa: Effective Strategies to Increase Growth<\/span><\/a><\/div><div class=\"lwrp-list-item\"><a href=\"https:\/\/dps.media\/en\/checklist-of-10-things-to-do-after-renting-a-homestay-space\/\" class=\"lwrp-list-link\"><span class=\"lwrp-list-link-title-text\">Checklist of 10 things to do after renting a homestay<\/span><\/a><\/div><div class=\"lwrp-list-item\"><a href=\"https:\/\/dps.media\/en\/what-is-canva-a-to-z-guide-on-how-to-use-canva\/\" class=\"lwrp-list-link\"><span class=\"lwrp-list-link-title-text\">What is Canva? A Complete Guide to Using Canva from A to Z\u00a0<\/span><\/a><\/div>                <\/div>\r\n                <\/div>\r\n<\/div>","protected":false},"excerpt":{"rendered":"<p>Discover how to check DNS domain and look up domain information completely free right on an online platform. Convenient, fast tools help you grasp important data in just a few clicks.<\/p>","protected":false},"author":14,"featured_media":29108,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[84,70,1187],"tags":[890,171,1069,680,1037],"class_list":["post-29107","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-affiliate-marketing","category-tin-tuc","category-xay-dung-thuong-hieu","tag-an-ninh-mang","tag-cong-cu-truc-tuyen","tag-dns","tag-huong-dan-ky-thuat","tag-quan-tri-website"],"acf":[],"rankmath_keywords":{"primary":"","secondary":[""]},"yoast_keywords":{"primary":"","secondary":[]},"yoast_focuskw":"","rankmath_focuskw":"","seo_keywords":{"primary":"","secondary":[""]},"_links":{"self":[{"href":"https:\/\/dps.media\/en\/wp-json\/wp\/v2\/posts\/29107","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/dps.media\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/dps.media\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/dps.media\/en\/wp-json\/wp\/v2\/users\/14"}],"replies":[{"embeddable":true,"href":"https:\/\/dps.media\/en\/wp-json\/wp\/v2\/comments?post=29107"}],"version-history":[{"count":2,"href":"https:\/\/dps.media\/en\/wp-json\/wp\/v2\/posts\/29107\/revisions"}],"predecessor-version":[{"id":36047,"href":"https:\/\/dps.media\/en\/wp-json\/wp\/v2\/posts\/29107\/revisions\/36047"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/dps.media\/en\/wp-json\/wp\/v2\/media\/29108"}],"wp:attachment":[{"href":"https:\/\/dps.media\/en\/wp-json\/wp\/v2\/media?parent=29107"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/dps.media\/en\/wp-json\/wp\/v2\/categories?post=29107"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/dps.media\/en\/wp-json\/wp\/v2\/tags?post=29107"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}