A 记录与 CNAME 记录能同时共存吗? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
zijian
V2EX   DNS

A 记录与 CNAME 记录能同时共存吗?

  •  
  •   zijian 2021-04-30 08:09:32 +08:00 via iPhone 9134 次点击
    这是一个创建于 1626 天前的主题,其中的信息可能已经有所发展或是发生改变。
    各位大佬,域名解析中,

    A 记录,比如绑定 www.xxx.com 到网站 IP
    CNAME 记录,绑定 www.xxx.com 到 cdn 节点网址

    CNAME 的线路类型选择境外,A 的线路默认,服务商是 DNSPOD,这样可以吗?
    39 条回复    2021-05-02 09:23:29 +08:00
    stabc
        1
    stabc  
       2021-04-30 08:11:08 +08:00   1
    你想实现一个什么效果?
    zijian
        2
    zijian  
    OP
       2021-04-30 08:17:51 +08:00 via iPhone
    @stabc DNS 分区解析,让国外 IP 走国外设置的 cdn,国内走源站
    tsungkang
        3
    tsungkang  
       2021-04-30 08:17:52 +08:00   1
    国内的厂商基本都可以,而且你不仅可以境内外区分,还能给不同运营商指定不同的内容,比如电信 A 到 IP1,移动 CNAME 到 cf,联通又 A 到 IP2 。
    同个区域的 A 跟 CNAME 共存我倒是没试过,不过如果厂商如果比较周到的话,可能会平铺 CNAME 然后跟 IP 混在一起?
    whileFalse
        4
    whileFalse  
       2021-04-30 08:19:30 +08:00
    你这个需求叫分区解析,不叫共存。
    zijian
        5
    zijian  
    OP
       2021-04-30 08:20:11 +08:00 via iPhone
    @tsungkang 我试过不加代理访问我的站,dig 出来的 IP 是国内服务器本身的,加了全局代理,再 dig 出来的是国外 cdn 节点的 IP,不知道这样测试的结果是否正确。
    zijian
        6
    zijian  
    OP
       
    @whileFalse 嗯,这样对用户访问有没有影响呢?尤其是对国内 IP 的用户。
    whileFalse
        7
    whileFalse  
       2021-04-30 08:24:49 +08:00   1
    @zijian 如果分区解析做得好就没影响。
    做得不好的意思是本来国内的用户 DNS 厂商以为是国外用户,然后丢给他一个 CDN 网址酱紫。
    gesse
        8
    gesse  
       2021-04-30 08:37:10 +08:00
    DNSPOD 不行,分区解析,有 A 记录和 CNAME 记录共存也不行。
    MrUser
        9
    MrUser  
       2021-04-30 08:44:13 +08:00
    很多年以前发现同时有 A 和 CNAME 时会影响 MX 记录的邮件接收还是发送,记不清了。
    alect
        10
    alect  
       2021-04-30 08:51:22 +08:00
    我就是这么干的,不过我用的是阿里云
    Ljcbaby
        11
    Ljcbaby  
       2021-04-30 09:04:32 +08:00
    @MrUser #9 CNAME 与 MX 不共存
    reed2020
        12
    reed2020  
       2021-04-30 09:15:31 +08:00
    GeoDNS?
    no1xsyzy
        13
    no1xsyzy  
       2021-04-30 09:30:40 +08:00
    一旦发现 CNAME 就会跟着 CNAME 走了,A 记录看都不看。
    不过如果 DNS 服务提供商可以做到你配起来是 CNAME 实质上平铺为 A,然后根据请求者 IP 返回最近的。
    cz524
        14
    cz5424  
       2021-04-30 09:37:48 +08:00
    跑个题:国内厂商华南华北分区能做到吗
    zijian
        15
    zijian  
    OP
       2021-04-30 09:47:52 +08:00 via iPhone
    @whileFalse 是的,我也是考虑到会不会本来是国内 IP 访客带到国外的 cdn 上,然后造成访问超时,用户关闭页面,因为自从我这样设计后,网站流量大幅下降,所以我才来问大伙儿的。
    zijian
        16
    zijian  
    OP
       2021-04-30 09:48:55 +08:00 via iPhone
    @gesse 哦?官方有说明吗?
    zijian
        17
    zijian  
    OP
       2021-04-30 09:49:49 +08:00 via iPhone
    @reed2020 DNSPOD
    zijian
        18
    zijian  
    OP
       2021-04-30 09:50:33 +08:00 via iPhone
    @naizhao 大佬我这个问题能解决吗?
    barrysn
        19
    barrysn  
       2021-04-30 10:00:41 +08:00
    这不是以前提的 智能 dns 的概念么
    是可以实现的 ,而且好多年了
    zijian
        20
    zijian  
    OP
       2021-04-30 10:01:26 +08:00 via iPhone
    @barrysn DNSPOD 默认套餐就支持?还是需要买付费套餐
    zijian
        21
    zijian  
    OP
       2021-04-30 10:02:26 +08:00 via iPhone
    如果流量下降能排除 DNS 的问题我就去看服务器配置
    oott123
        22
    oott123  
       2021-04-30 10:39:45 +08:00 via Android
    你的情况下,简而言之:如果没有 MX 、TXT 等记录在同一个子域名下,则没有影响;如果有,那么海外的 MX / TXT 这类记录会失效。
    zijian
        23
    zijian  
    OP
       2021-04-30 10:49:04 +08:00 via iPhone
    @oott123 好的感谢
    gesse
        24
    gesse  
       2021-04-30 11:31:52 +08:00
    @zijian
    我测试了。
    zijian
        25
    zijian  
    OP
       2021-04-30 11:47:53 +08:00 via iPhone
    @gesse 怎么测试的?
    gesse
        26
    gesse  
       2021-04-30 12:36:03 +08:00
    @zijian
    企业套餐域名
    国内线路设置 A 记录
    国外线路设置 CNAME 记录提示不支持。
    zijian
        27
    zijian  
    OP
       2021-04-30 13:44:10 +08:00 via iPhone
    @gesse 不支持的情况我这没遇到,我这是免费套餐的。
    pengyu
        28
    pengyu  
       2021-04-30 14:47:36 +08:00
    CNAME 和 A 记录不能共存,你的需求也不是共存,就是分区解析,国内的 DNS 运营商基本都提供这个功能,一般不会出错,Nodecache 的 DNS 也支持这个功能,节点端是我写的,如果用这个遇到问题可以找我。
    qiangzhiming
        29
    qiangzhiming  
       2021-04-30 14:57:37 +08:00
    @alect 我测试阿里云 dns 好像同线路 A 记录和 cname 也是不能共存的,报 “CNAME”记录与“A”记录冲突
    alect
        30
    alect  
       2021-04-30 15:01:12 +08:00
    @qiangzhiming #29 先设置国外线路用 CNAME,然后设置默认使用 A 。
    alect
        31
    alect  
       2021-04-30 15:02:09 +08:00
    @qiangzhiming #29 同线路当然不行
    reed2020
        32
    reed2020  
       2021-04-30 16:26:31 +08:00
    @zijian 啊不是的,我是说这个功能叫这个名字,根据地理位置解析。
    lxz6597863
        33
    lxz6597863  
       2021-04-30 16:52:44 +08:00
    A 和 CNAME 不能共存
    变通点,把那个 A 记录也做成 CNAME,然后按线路去添加国内外的解析就行了
    zijian
        34
    zijian  
    OP
       2021-04-30 17:52:16 +08:00 via iPhone
    @lxz6597863 您指的不能共存事说同一种线路类型下吗?我是默认(或者说境内)A 记录走源站,境外 CNAME 到 CDN
    JensenQian
        35
    JensenQian  
       2021-04-30 21:21:54 +08:00 via Android
    @cz5424 华为云免费的
    moxnet
        36
    moxnet  
       2021-05-01 00:27:37 +08:00
    对同一个子域名,不应该同时添加 A 记录和 CNAME 记录,也不能添加。更具体的说,在 bind 的同一个 view 中,或“智能解析”的同一个线路下,单个子域名不能同时添加 CNAME 和任何其它类型的记录。

    为什么?因为 CNAME 会缓存;并且当请求任何类型的记录时,cache dns 可以以 CNAME 的值响应。

    比如你同时添加了 dog.foo.bar 这个子域名的 A 记录 1.1.1.1,和 CNAME 类型记录值 www.v2ex.com 。若 cache dns 缓存了 CNAME 值 www.v2ex.com ,当另外有用户向 cache dns 请求解析 dog.foo.bar 的 A 记录时,cache dns 会直接把 www.v2ex.com 响应。即有些用户请求 A 记录时,获得的并不是你想让他得到的 1.1.1.1

    对 CNAME 和其它类型需要共存的一个现实的需求,可能是一个子域名即做网站又做其它应用如邮箱,而网站需要做 cdn 服务,cdn 服务厂商需要你将域名做 cname 指过去~~~
    moxnet
        37
    moxnet  
       2021-05-01 00:30:44 +08:00
    针对楼主的问题,在不同的线路中,A 和 CNAME 可以共存,只要不在同一线路中同时共存即可。

    即 bind view 1(或智能解析的线路)中给子域名 dog.foo.bar 添加一条 A 记录,而在另一个 view 中给子域名 dog.foo.bar 添加一条 CNAME 记录,是应该允许添加的。
    flynaj
        38
    flynaj  
       2021-05-02 01:29:46 +08:00 via Android
    @cz5424 收费功能,都可以。
    patx
        39
    patx  
       2021-05-02 09:23:29 +08:00
    cloudflare partner
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     855 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 29ms UTC 19:31 PVG 03:31 LAX 12:31 JFK 15:31
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86