我的知识记录

域名解析不生效_DNS缓存与TTL设置详解

域名解析错误是网站上线和运维中最常见的问题之一,表现为域名打不开、解析到错误IP、解析不生效、部分地区不生效、邮箱收不到邮件等。原因可能在解析记录配置错误(A记录/CNAME/MX/TXT/NS)、DNS缓存(本地/运营商/全球缓存)、DNS服务商故障、DNS劫持/污染、服务器防火墙/网络、Web服务配置等多个环节。本文系统讲解域名解析错误的完整排查流程和解决方法,从A记录/CNAME/MX/TXT/NS记录配置、DNS缓存与TTL、解析冲突、解析被篡改/污染、NS记录错误、泛解析、URL转发、邮箱解析、全球传播、地区不生效、ping不通、解析正确但网站打不开、解析监控、DNSSEC安全、解析备份等角度,帮助站长正确配置和排查域名解析。

DNS缓存与TTL、解析不生效、劫持污染、解析安全、监控、常见问题汇总。1.DNS缓存与TTL——a.DNS缓存机制:DNS解析结果会被各级缓存(浏览器缓存→操作系统缓存→本地DNS(运营商DNS)缓存→递归DNS缓存),避免每次都查权威DNS,加快解析速度,但也导致改了解析记录后不是立即全球生效,要等缓存过期。b.TTL(Time To Live):解析记录的生存时间,单位秒,告诉DNS服务器/浏览器缓存这个解析结果多久。常见TTL:60秒(1分钟,换服务器时用,加快生效)、600秒(10分钟,默认,平衡)、1800秒(30分钟)、3600秒(1小时,稳定不常变的记录用,减少DNS查询)、86400秒(24小时,NS记录/SOA常用,非常稳定)。c.TTL设置建议:平时稳定的记录用3600-86400(减少DNS查询/提高稳定性),换服务器/改IP前把TTL改小到60-300(等旧TTL过期后再改记录,生效快),改完确认稳定后再把TTL改回正常值(不要一直用60秒,DNS查询多/被攻击风险/部分DNS商最小TTL限制)。d.缓存层级与过期时间:浏览器缓存(通常几分钟,Chrome//net-internals/#dns看和清,或关浏览器重开)、操作系统缓存(Windows ipconfig /displaydns看,ipconfig /flushdns清,默认缓存时间取决于记录TTL和系统设置,通常几分钟到几小时)、本地DNS/运营商DNS缓存(最关键,缓存时间通常是TTL,但运营商可能强制缓存更久(如不管TTL都缓存1小时/4小时),这就是为什么改了记录部分地区还不生效,只能等或换公共DNS测试)、递归DNS(8.8.8.8等公共DNS,按TTL缓存,TTL到了重新查权威)。e.加快解析生效的方法:改记录前先把TTL改小(60秒),等旧TTL过期(至少等原来的TTL时间,如原来3600就等1小时)再改记录值;改完后清本地缓存(ipconfig /flushdns+清浏览器缓存);用公共DNS测试(8.8.8.8,公共DNS按TTL更新快);全球节点测试看各地生效情况;不要频繁改记录(每次改都要等缓存,频繁改会混乱,改一次等生效再改下一次)。f.常见误区:以为改了记录立即全球生效(不是,要等缓存,TTL越小越快但不是瞬时)、TTL设60就一定1分钟生效(运营商可能强制缓存更久,或本地缓存没清,全球完全生效可能几小时到24小时)、改了记录就删旧解析(旧IP的服务器不要立即关,等全球缓存过期(至少24-48小时)再关,否则部分用户还访问旧服务器(已关)就打不开)、用刷新浏览器清DNS缓存(浏览器刷新只清页面缓存,不清DNS缓存,要ipconfig /flushdns或关浏览器重开)。2.解析不生效常见原因——a.解析记录没配/配错:新域名没加A记录/CNAME,或主机记录错(要@填了www),或IP/目标域名错,去DNS商后台检查记录。b.NS记录没改(换DNS商):只在新DNS商加了域名和解析,但注册商NS还是旧的,解析用旧DNS(旧DNS没配新记录或已删),whois看NS,去注册商改NS。c.DNS缓存:本地/运营商/全球缓存了旧解析,等TTL过期/清本地缓存/换公共DNS测试/全球节点看生效。d.DNS服务商故障/延迟:DNS商后台改了记录但权威DNS还没同步(部分DNS商同步需要几分钟到几小时),或DNS商被攻击/故障,看DNS商状态页/公告,等恢复,dig @权威DNS测试看权威是否已更新。e.域名状态异常:域名过期(clientHold,解析被暂停)、未实名(serverHold)、被注册商暂停、被墙(DNS污染),whois查域名状态,对应处理(续费/实名/申诉/换域名)。f.服务器问题:解析正确但服务器没响应(服务器宕机/Web服务停/防火墙没开端口/SSL错/程序错),不是解析问题,排查服务器(ping IP/telnet端口/IP直连/SSH登录)。g.hosts文件绑定:本地hosts文件手动绑定了域名到旧IP/错误IP,导致本地解析不生效(其他地方正常),检查hosts文件注释掉错误绑定。h.浏览器/系统DNS缓存:本地缓存了旧解析,清缓存(ipconfig /flushdns+清浏览器DNS缓存+关浏览器重开),或换浏览器/设备测试。i.CDN缓存:用了CDN,CDN节点缓存了旧回源IP/旧内容,改了解析后CDN回源地址没改(CDN回源还是旧服务器),或CDN缓存没刷新,去CDN后台改回源地址+刷新缓存。j.解析记录冲突:同一主机记录有A和CNAME(CNAME优先级高A不生效),或多条冲突记录,删掉冲突的,只留需要的。k.泛解析覆盖:配了泛解析*.域名,具体子域名没单独配,用了泛解析的IP(可能不是想要的),给具体子域名单独配解析(优先级高于泛解析)。3.DNS劫持与污染——a.DNS劫持:域名解析到错误的/恶意的IP,通常是黑客篡改DNS记录(DNS商账号被盗改解析)、路由器DNS被篡改(路由器被黑/恶意软件改DNS,解析到钓鱼/广告站)、运营商DNS劫持(运营商把域名解析到广告/导航站/拦截页,国内常见)、本地hosts被篡改(恶意软件改hosts)、中间人攻击(局域网/公共WiFi劫持DNS)。b.DNS污染(DNS缓存投毒/GFW污染):国内对特定域名(被墙/违规)的DNS查询返回错误IP/无响应,是GFW的手段,表现为国内DNS解析错/无法解析,国外DNS(8.8.8.8在国内也可能被污染)解析正常,域名被墙。c.检测:用不同DNS解析对比(nslookup 域名 8.8.8.8 vs 114.114.114.114 vs 223.5.5.5,解析到不同IP=被劫持/污染)、用国外节点/国外DNS测试(国内解析错国外正常=DNS污染/被墙)、查路由器DNS(路由器DNS被改成陌生DNS(如恶意DNS),改回运营商/公共DNS)、查hosts文件(是否有未知域名绑定,删除)、用dig +trace看解析路径(看哪一级返回错误IP)、用DNS泄漏测试(dnsleaktest.com看实际用的DNS)。d.处理:DNS记录被篡改→改DNS商账号密码+2FA+改回正确解析+开启DNSSEC+检查所有记录(可能还有其他被改);路由器DNS被篡改→改路由器管理密码+升级固件+改回DNS(运营商DNS或公共DNS114/阿里/腾讯);运营商DNS劫持→换公共DNS(8.8.8.8/114.114.114.114/223.5.5.5/119.29.29.29,网卡DNS手动设为公共DNS,或路由器DNS设公共DNS)+投诉运营商(工信部投诉);本地hosts被篡改→删除恶意绑定+杀毒/查恶意软件;DNS污染/被墙→换域名(被墙域名很难解封)+网站内容合规+用CDN/海外服务器面向海外用户+国内业务用国内服务器+备案;中间人攻击→用HTTPS(DNS劫持后如果网站有HTTPS且证书正确,浏览器会报证书错误(因为恶意IP没有合法证书),用户能发现,所以HTTPS+HSTS很重要)+用DNS over HTTPS(DoH)/DNS over TLS(DoT)加密DNS查询(防止中间人篡改,Chrome/Firefox支持DoH,用1.1.1.1/8.8.8.8的DoH)。e.预防:DNS商账号强密码+2FA、定期检查解析记录(有没有被篡改)、开启DNSSEC(重要域名)、路由器强密码+升级固件+DNS设公共DNS、用HTTPS+HSTS(即使DNS被劫持也能通过证书错误发现)、用DoH/DoT加密DNS(防中间人)、监控解析异常(解析监控,发现解析到错误IP立即告警)、不要用陌生/免费的不明DNS(可能劫持/投毒/记录查询)。4.解析安全(DNSSEC/账号/监控)——a.DNSSEC(DNS安全扩展):给DNS解析记录数字签名,递归DNS验证签名,防止DNS缓存投毒/劫持(解析记录被篡改后签名验证失败)。配置:在DNS商后台开启DNSSEC(生成DS记录/密钥),把DS记录提交给域名注册商(注册商加到注册局,建立信任链),验证解析(dig +dnssec 域名看RRSIG/AD标记,或用dnssec-analyzer.verisignlabs.com检查)。注意:DNSSEC配置错误会导致解析失败(签名无效/DS记录错/密钥过期),开启前确认DNS商支持+配置正确,开启后定期检查密钥/签名,出问题可以暂时关闭DNSSEC排查。b.账号安全:DNS商账号(阿里云/腾讯云/Cloudflare/注册商)强密码+2FA(短信/TOTP/硬件密钥),不要共享账号,定期检查登录记录/异常登录,账号被盗=解析被篡改=网站被劫持到钓鱼/恶意站,损失大。c.解析记录备份:定期导出解析记录(DNS商后台导出/截图),改记录前备份,被篡改/误删后能快速恢复,重要域名建议每月备份一次。d.解析监控:用监控工具(UptimeRobot/云监控/自建脚本)监控域名解析是否正常(解析到预期IP/响应时间/是否被篡改),异常告警(解析到错误IP/解析失败/响应超时),多节点监控(国内+国外,发现地区性劫持/污染),解析监控和网站可用性监控结合(解析正常但网站挂了也告警)。e.NS记录安全:NS记录不要用被攻击/不可靠的DNS商,重要域名用两家DNS商(主备,NS记录配两家,一家故障另一家还能解析),定期检查NS记录是否被篡改(whois看NS)。f.避免解析暴露服务器IP:用CDN隐藏源站IP(域名解析到CDN,不直接解析到服务器IP,防止服务器被DDoS/被扫描/被绕CDN攻击),源站防火墙只允许CDN回源IP,不要用子域名直接解析到源站IP(如ftp.example.com/mail.example.com直接A记录到源站IP,会暴露源站IP,攻击者绕CDN打源站),重要服务用VPN/堡垒机访问不要公开解析。5.解析常见问题快速定位——a.域名完全打不开:ping域名看能否解析IP(不能解析=域名/DNS问题,能解析=服务器/网络问题),nslookup查权威DNS(权威错=记录配错,权威对=缓存/服务器),IP直连(IP能打开=域名/DNS,IP也打不开=服务器)。b.解析到错误IP:nslookup用不同DNS对比(都错=记录配错/被篡改,部分错=缓存/劫持/污染),查DNS商后台记录(是否被改/IP错),查域名状态(被墙/污染),查hosts/路由器DNS(本地劫持)。c.改了记录不生效:查权威DNS(dig @权威DNS,权威已更新=缓存问题,等+清缓存;权威没更新=DNS商同步延迟/故障,等或联系DNS商),查TTL(原来TTL大就等久,换服务器前改小TTL),清本地缓存(ipconfig /flushdns+浏览器),全球节点测试(看各地生效,运营商缓存可能更久),CDN回源改了没(用了CDN的话)。d.部分地区不生效:全球节点测试(确认哪些地区/运营商),当地运营商DNS缓存(等或投诉,或建议用户换公共DNS),当地运营商劫持/拦截(内容违规,整改/申诉),CDN节点故障(该地区CDN节点挂了,联系CDN商/切换),国际出口问题(国内访问海外服务器,该地区国际出口拥塞/被墙,用CDN/国内服务器)。e.邮箱收不到邮件:查MX记录(nslookup -type=mx,MX值/优先级对不对,主机记录@),查MX指向的邮件服务器A记录(mail.example.com有没有A记录),查SPF/DKIM/DMARC(TXT记录,没配可能被判定垃圾邮件/拒收),查邮件服务器是否正常(服务运行/端口25/防火墙/队列),查是否被对方拒收/进垃圾箱(发测试邮件看退信原因,用mail-tester测评分,查IP/域名是否在黑名单mxtoolbox),查反向解析PTR(邮件服务器IP反向解析到邮件服务器域名,没PTR可能被拒收)。f.子域名打不开:查子域名解析记录(有没有配A/CNAME,主机记录对不对),查服务器虚拟主机配置(Nginx/Apache有没有该子域名的server_name,或泛域名配置),查SSL证书(HTTPS子域名证书是否包含该子域名,通配符或多域名证书),查CDN(子域名是否接入CDN/CDN配置)。g.带www和不带www不同时正常:查两个解析记录(@和www都要有A/CNAME,指向同一IP或CDN),查服务器配置(两个域名都要在server_name,或301跳转统一(@→www或www→@)),查SSL证书(证书要包含两个域名(SAN),或通配符)。h.解析正确但网站打不开:不是解析问题,排查服务器(ping IP通不通/telnet 80/443/IP直连/SSH登录看Web服务/防火墙/SSL/程序/资源/被黑),用curl --resolve指定IP测试(确认服务器本身是否正常)。i.换DNS商后解析不生效:NS记录改了没(注册商后台,最常见),新DNS商解析记录配全没(A/CNAME/MX/TXT都要配,不要漏),旧DNS商解析删太早(等NS完全生效24-48小时再删),NS地址写错没(核对新DNS商提供的NS),whois看NS是否已更新。j.域名续费后解析不恢复:域名状态从clientHold恢复需要时间(注册局/注册商处理,几小时到1-2天),DNS缓存了失败结果(等缓存过期/清缓存),确认域名状态已为ok(whois查),耐心等+清缓存,超过2天联系注册商。排查核心:先查权威解析(dig @权威DNS/nslookup指定权威DNS,确认配置对不对),再查缓存(公共DNS/本地DNS/全球节点,确认是不是缓存/传播),最后查服务器(解析正确但打不开=服务器问题),从DNS到服务器逐层排除,用工具测试不要猜。

各类解析记录配置详解、常见错误、排查工具。1.A记录配置——a.作用:把域名指向IPv4地址,最常用的解析记录。b.配置:主机记录(@表示根域名example.com,www表示www.example.com,*表示泛解析所有子域名,其他如blog表示blog.example.com)、记录类型选A、记录值填服务器IPv4地址(如1.2.3.4)、TTL(默认600秒=10分钟,范围60-86400,换服务器时调小60秒加快生效,平时用600或3600)。c.常见错误:IP写错(多打少打数字/旧服务器IP/复制时多了空格)、主机记录错(要根域名填了www,要www填了@,子域名主机记录只填前缀不要填完整域名)、没有A记录(新域名没加解析,或只加了www没加@导致不带www打不开)、A记录和CNAME冲突(同一主机记录不能同时有A和CNAME,CNAME优先级高会导致A不生效,根域名@尽量不用CNAME,用A记录或URL转发)、多条A记录(轮询负载均衡,多条A记录IP要都正常,否则部分用户访问到故障服务器)。d.验证:nslookup 域名 或 ping 域名,看返回IP是否正确。2.CNAME记录配置——a.作用:把域名指向另一个域名(别名),常用于CDN(www.example.com→cdn.example.com或CDN服务商提供的地址)、子域名指向主域名(blog.example.com→example.com)、云服务(对象存储/负载均衡/SaaS)。b.配置:主机记录(如www/blog/*)、记录类型选CNAME、记录值填目标域名(如example.com或CDN地址,末尾不要加.,部分DNS商要求加.)、TTL。c.常见错误:目标域名错(CDN地址复制错/少了字符/用了http://前缀(CNAME值只要域名不要http://))、根域名用CNAME(@用CNAME会导致MX/TXT等其他记录失效(CNAME和其他记录冲突),大部分DNS商不允许根域名CNAME,根域名用A记录或URL转发/ANAME/ALIAS(部分DNS商支持,如Cloudflare的CNAME flattening))、CNAME和A/MX/TXT冲突(同一主机记录有CNAME就不能有其他记录,会冲突导致解析异常,删掉其他记录只留CNAME)、CNAME链太长(A→B→C→D,多级CNAME增加解析时间/失败率,建议最多1-2级)、目标域名没解析(CNAME指向的目标域名本身没A记录/没解析,导致最终解析失败,确认目标域名能正常解析)。d.验证:nslookup -type=cname 域名 或 dig 域名 CNAME,看CNAME值和最终IP。3.MX记录配置(邮箱)——a.作用:指定接收该域名邮件的服务器,企业邮箱/自建邮箱必须配置MX记录,否则收不到邮件。b.配置:主机记录通常@(根域名,邮件是user@example.com)、记录类型MX、记录值填邮件服务器域名(如mx1.qq.com或mail.example.com)、优先级(数字越小优先级越高,如10/20/30,主服务器10,备用20)、TTL。c.常见错误:主机记录错(MX记录主机记录应该是@,不要填www或mail,邮件是@example.com不是@www.example.com)、MX值错(邮件服务器地址错/用了IP(MX值应该是域名不是IP,虽然部分支持但不规范)/少了字符)、优先级设置错(主备优先级搞反,数字小的优先)、没有A记录给邮件服务器(MX指向的mail.example.com需要有A记录指向邮件服务器IP,否则找不到邮件服务器)、SPF/TXT没配(SPF是TXT记录,没配可能被判定垃圾邮件/发件失败,DKIM/DMARC也建议配)、多条MX记录优先级相同(会轮询,主备应该不同优先级)、MX记录和CNAME冲突(根域名有CNAME就不能有MX,所以根域名不要用CNAME)。d.验证:nslookup -type=mx 域名 或 dig 域名 MX,看MX记录;发测试邮件看能否收到;用mail-tester.com测邮件评分(SPF/DKIM/DMARC/黑名单)。4.TXT记录配置——a.作用:文本记录,用于域名所有权验证(Google Search Console/Bing/百度/微信/支付宝/第三方服务验证,添加指定TXT值证明你拥有域名)、SPF(发件人策略框架,v=spf1 include:spf.mail.qq.com ~all,指定哪些服务器可以发该域名邮件,防垃圾邮件/伪造)、DKIM(域名密钥识别邮件,v=DKIM1; k=rsa; p=公钥,邮件签名验证,防篡改/伪造)、DMARC(v=DMARC1; p=none; rua=mailto:admin@example.com,指定未通过SPF/DKIM的邮件如何处理(none监控/quarantine隔离/reject拒绝)+报告地址)。b.配置:主机记录(验证通常@,SPF通常@,DKIM是选择器._domainkey如default._domainkey,DMARC是_dmarc)、记录类型TXT、记录值填文本(注意长TXT值可能被DNS商自动分段,正常)、TTL。c.常见错误:主机记录错(DKIM的选择器前缀没填,DMARC没填_dmarc,验证记录主机记录应该按服务商要求填@或特定值)、TXT值错(复制时少了字符/多了空格/引号(TXT值不要加引号,DNS商自动处理)/v=spf1开头错)、多条SPF记录(一个域名只能有一条SPF的TXT记录,多条会导致SPF失效,把多个include合并到一条)、TXT值太长(超过255字符需要分段,DNS商自动处理,手动配置注意)、SPF机制错(~all软失败(建议,监控)/-all硬失败(严格,未通过直接拒绝,配置不好会丢邮件,建议先用~all监控一段时间再改-all)/?all中性)、DKIM公钥错(复制公钥时少了p=后面的内容/多了换行空格)。d.验证:nslookup -type=txt 域名 或 dig 域名 TXT,看TXT值;SPF用mxtoolbox.com/spf.aspx检查;DKIM用mxtoolbox.com/dkim.aspx(需要选择器);DMARC用mxtoolbox.com/dmarc.aspx;发测试邮件看邮件头(Authentication-Results字段看SPF/DKIM/DMARC是否通过)。5.NS记录配置——a.作用:指定该域名由哪些DNS服务器解析,域名注册时默认用注册商的DNS,换DNS服务商(如从注册商自带DNS换到Cloudflare/DNSPod/阿里云DNS)时需要改NS记录。b.配置:在域名注册商后台(不是DNS商后台)改域名的NS记录,填新DNS商提供的NS地址(如Cloudflare的ns1.cloudflare.com/ns2.cloudflare.com,DNSPod的ns3.dnsv4.com/ns4.dnsv4.com,阿里云DNS的ns1.alidns.com/ns2.alidns.com),通常至少2个NS(主备)。c.常见错误:NS记录没改(只在新DNS商添加了域名和解析记录,但注册商NS还是旧的,解析不生效,这是换DNS最常见错误)、NS地址写错(复制时少了字符/用了旧地址/NS地址末尾加了.(部分注册商要求加.,看说明))、只改了一个NS(应该至少2个NS,一个故障另一个还能用,只改一个可用性差)、新DNS商没加解析记录(改了NS但新DNS商后台没添加该域名/没配解析记录,导致解析完全失败,改NS前先在新DNS商配好所有解析记录)、旧DNS商解析删太早(NS记录全球生效需要24-48小时,期间旧DNS商的解析不要删,等完全生效后再删,否则部分用户解析中断)、NS记录生效慢(NS记录是域名级别的,全球DNS缓存更新慢,可能24-48小时,耐心等,不要频繁改)。d.验证:whois 域名 看NS记录是否已更新;dig 域名 NS 看权威NS;nslookup 域名 @新NS服务器 测试新DNS解析是否正常;全球节点测试看各地是否生效。6.泛解析配置——a.作用:*.example.com匹配所有未单独配置的子域名(如abc.example.com/xyz.example.com都指向同一IP),常用于多租户平台/无限子域名/防止子域名解析错误。b.配置:主机记录填*、记录类型A(或CNAME)、记录值填服务器IP(或目标域名)、TTL,同时服务器要配置泛域名虚拟主机(Nginx server_name *.example.com,或默认站点),否则子域名能解析但服务器不认(显示默认站/404)。c.常见错误:服务器没配泛域名(解析了但Nginx/Apache没有*.example.com的server_name,访问子域名显示默认站或404,要配置泛域名虚拟主机或默认站点)、泛解析和具体子域名冲突(具体子域名(如www)的解析优先级高于泛解析,具体子域名配了就用具体的,没配的才用泛解析,正常)、泛解析被滥用(泛解析所有子域名都指向服务器,可能被利用(子域名被指向恶意内容/被搜索引擎收录垃圾页),建议只泛解析需要的,或服务器端对未知子域名返回404/跳转主域名)、SSL证书不支持泛域名(泛解析子域名HTTPS需要通配符证书*.example.com,普通单域名证书只覆盖一个域名,访问其他子域名HTTPS报证书错误,要用通配符证书或多域名证书)。d.验证:随便一个未配置的子域名(如test123.example.com)ping/nslookup,看是否解析到泛解析IP;浏览器访问看服务器是否正常响应。7.URL转发配置——a.作用:把一个域名跳转到另一个URL,常用于根域名跳转到www(example.com→www.example.com)、旧域名跳转到新域名、短域名跳转长URL、不带www跳带www(或反之)。b.类型:显性转发(301/302重定向,浏览器地址栏显示目标URL,SEO权重传递用301永久跳转,临时用302)、隐性转发(iframe框架,地址栏显示原域名但内容是目标URL,不推荐(SEO不友好/可能被判定隐藏/部分浏览器拦截/证书问题),大部分DNS商已取消隐性转发或需要备案)。c.配置:主机记录(如@或www)、记录类型URL转发/显性URL/隐性URL、记录值填目标URL(完整URL含http://或https://,如https://www.example.com)、跳转类型301/302。d.常见错误:目标URL不完整(没加http://,只填了域名,转发失败)、根域名用URL转发但没A记录(部分DNS商URL转发需要先有A记录指向转发服务器,或URL转发本身就是一条记录,按DNS商说明)、隐性转发被拦截(现代浏览器/安全软件可能拦截iframe隐性转发,或HTTPS混合内容问题,建议用显性301转发)、301和302搞反(永久跳转用301(SEO权重传递),临时用302,用错影响SEO)、转发目标也在转发(循环跳转A→B→A,导致浏览器报错,检查转发链)、国内域名URL转发需要备案(大部分国内DNS商的URL转发功能要求域名备案,未备案不能用,用海外DNS/服务器端301跳转代替)。e.替代方案:服务器端301跳转(Nginx/Apache配置rewrite,更灵活可控,不依赖DNS商转发功能,推荐),如Nginx:server { listen 80; server_name example.com; return 301 https://www.example.com$request_uri; }。8.排查工具详解——a.nslookup(Windows/Linux/Mac自带):nslookup 域名(查A记录,用默认DNS)、nslookup 域名 8.8.8.8(用指定DNS查)、nslookup -type=mx 域名(查MX记录)、nslookup -type=cname 域名(查CNAME)、nslookup -type=txt 域名(查TXT)、nslookup -type=ns 域名(查NS)、nslookup -type=aaaa 域名(查IPv6)。b.dig(Linux/Mac,Windows需安装BIND工具,更强大):dig 域名(查A,详细应答)、dig 域名 @8.8.8.8(指定DNS)、dig 域名 MX(查MX)、dig 域名 CNAME、dig 域名 TXT、dig 域名 NS、dig +short 域名(简短输出只看结果)、dig +trace 域名(跟踪解析全过程,从根到权威,排查NS/缓存问题)、dig -x IP(反向解析PTR)。c.ping:ping 域名(测试解析+连通性,看解析到的IP和是否通,Windows ping 4次,Linux ping持续按Ctrl+C停)、ping -c 4 域名(Linux指定4次)。d.tracert/traceroute:tracert 域名(Windows路由跟踪,看数据包到哪一跳断了)、traceroute 域名(Linux/Mac)。e.curl:curl -I 域名(看HTTP响应头/状态码)、curl -v 域名(详细连接过程,看解析IP/连接/SSL/响应)、curl --resolve 域名:443:IP https://域名(指定解析IP测试,绕过DNS直接连指定IP,排查是解析问题还是服务器问题)。f.telnet/nc:telnet 域名 80(测试80端口通不通,连接成功=端口通,超时=不通)、nc -zv 域名 443(类似telnet)。g.在线工具:whatsmydns.net(全球DNS解析传播检查,A/AAAA/CNAME/MX/TXT/NS,看各地是否生效)、dnschecker.org(类似whatsmydns,更多节点)、17ce.com(全国/全球节点网站测速,看各地可访问性/响应时间/解析IP)、webkaka.com(类似17ce)、mxtoolbox.com(MX/SPF/DKIM/DMARC/黑名单检查,邮箱诊断)、mail-tester.com(发测试邮件看评分,SPF/DKIM/DMARC/内容/黑名单)、sslshopper.com(SSL证书检查,有效期/域名/证书链/评级)、dns.google.com(Google公共DNS查询,在线dig)、tool.chinaz.com(站长工具,综合DNS/IP/备案/SEO查询)、intodns.com(DNS健康检查,NS/MX/SOA/递归等综合诊断)。h.系统命令:ipconfig /all(Windows看本地DNS/网络配置)、ipconfig /flushdns(清Windows DNS缓存)、ifconfig/ip addr(Linux看网络配置)、systemd-resolve --flush-caches(Linux清DNS缓存,systemd系统)、sudo dscacheutil -flushcache(Mac清DNS缓存)、cat /etc/resolv.conf(Linux看DNS配置)、hosts文件(Windows C:WindowsSystem32driversetchosts,Linux/Mac /etc/hosts,本地域名绑定,排查是否被手动绑定了错误IP)。

站长反馈:「换服务器后域名解析一直不生效,查了是原来TTL设了86400(24小时),改了记录要等1天,以后换服务器前先把TTL改60秒等旧TTL过期再换,快很多」「邮箱收不到客户邮件,查了是MX记录主机记录填了www(应该@),改了@就正常了,MX记录主机记录一定是@,不要填www」。

操作提示:域名解析错误完整排查流程——1.确认现象:完全打不开/解析到错误IP/改了不生效/部分地区不生效/邮箱收不到/子域名打不开/www和不带www不同时正常;2.查权威解析:dig 域名 @权威DNS服务器 或 nslookup 域名 权威DNS(绕过缓存直接查DNS商服务器),权威解析错=解析记录配置错,去DNS商后台改(A记录IP/CNAME目标/MX主机记录@/TXT值/NS);权威解析对=缓存/传播/服务器问题,继续;3.查公共DNS:nslookup 域名 8.8.8.8(Google)、114.114.114.114(114)、223.5.5.5(阿里)、119.29.29.29(腾讯),公共DNS错=DNS缓存/劫持/污染,等缓存/清缓存/换DNS/处理劫持;公共DNS对=本地DNS/网络/服务器问题;4.查本地DNS:ipconfig /all看本地DNS,nslookup 域名(默认本地DNS),本地错=本地缓存/运营商DNS,清缓存(ipconfig /flushdns+浏览器DNS缓存)或换公共DNS(网卡DNS手动设8.8.8.8/114);检查hosts文件(Windows C:WindowsSystem32driversetchosts,Linux /etc/hosts,是否手动绑定了错误IP,注释掉);检查路由器DNS(是否被篡改,改回运营商/公共DNS);5.全球节点测试:whatsmydns.net/dnschecker.org看全球DNS解析传播,17ce.com看全国节点可访问性/解析IP,确认是全球问题还是部分地区/运营商;6.服务器测试:解析正确但网站打不开,ping IP(通不通)、telnet IP 80/443(端口通不通)、curl --resolve 域名:443:IP https://域名(指定IP测试,绕过DNS)、IP直连(http://IP)、SSH登录看Web服务(service nginx status)/防火墙(80/443)/SSL证书/程序错误/资源(CPU/内存/磁盘);7.针对性解决:记录配错→改记录;缓存→等TTL+清缓存+全球节点;NS没改→注册商改NS;被篡改→改密码+2FA+改回+DNSSEC;污染/被墙→换域名/整改/CDN;服务器问题→修服务器;CDN→改回源+刷新缓存;邮箱→MX+SPF/DKIM/DMARC+邮件服务器。解析记录速查:A记录=域名→IPv4(主机记录@根域名/www子域名/*泛解析,记录值服务器IP,TTL默认600);CNAME=域名→另一个域名(CDN/子域名指主域名,根域名@慎用,会和MX/TXT冲突,用A或URL转发/ANAME);MX=邮件服务器(主机记录@,记录值邮件服务器域名,优先级数字小的优先,主10备20,MX指向的域名要有A记录);TXT=文本(验证@,SPF@(v=spf1 include:... ~all,只能一条),DKIM选择器._domainkey,DMARC _dmarc,值不要加引号,长值自动分段);NS=域名服务器(在注册商后台改,换DNS商用,至少2个,生效慢24-48小时,改前新DNS商先配好解析);AAAA=IPv6;SRV=服务定位;PTR=反向解析(IP→域名,邮件服务器);CAA=证书授权。TTL:平时600-3600(10分钟-1小时),换服务器前改60(等旧TTL过期再换记录),改完稳定后改回,NS/SOA用86400。工具速查:nslookup 域名(A)、nslookup -type=mx/cname/txt/ns 域名、nslookup 域名 8.8.8.8(指定DNS);dig 域名(详细)、dig 域名 @8.8.8.8、dig +short 域名、dig +trace 域名(跟踪全过程)、dig -x IP(反向);ping 域名(解析+连通);tracert/traceroute 域名(路由);curl -I 域名(响应头)、curl -v 域名(详细)、curl --resolve 域名:443:IP https://域名(指定IP);telnet 域名 80(端口);ipconfig /flushdns(清Windows缓存);在线:whatsmydns.net(全球DNS传播)、dnschecker.org、17ce.com(全国节点)、mxtoolbox.com(邮箱诊断)、mail-tester.com(邮件评分)、sslshopper.com(SSL检查)、tool.chinaz.com(站长工具)、intodns.com(DNS健康)。

域名解析不生效_DNS缓存与TTL设置详解

标签:

更新时间:2026-08-26 18:19:03

上一篇:域名错误_域名拼写错误与URL格式问题

下一篇:PbootCMS隐藏菜单?_scode条件判断标签_最佳实践