• Kubernetes-dns 域名解析问题


    问题描述:nginx不能解析域名,但是使用nslookup却可以解析域名

    ./sbin/nginx -t                                  
    nginx: [emerg] host not found in upstream "nodejs.default.svc.cluster.local" in /data/app/nginx/conf/nginx.conf:45
    nginx: configuration file /data/app/nginx/conf/nginx.conf test failed
    
    sh-4.2# nslookup nodejs.default.svc.cluster.local
    Server:         10.254.0.10
    Address:        10.254.0.10#53
    
    Name:   nodejs.default.svc.cluster.local
    Address: 10.254.195.180
    

    问题分析

    使用tcpdump进行抓包查看网络请求过程
    nginx抓包分析

    tcpdump host 10.254.0.10 -nnn 
    01:49:23.099223 IP 10.10.12.2.52250 > 10.254.0.10.53: 20393+ A? nodejs.default.svc.cluster.local.cluster.local. (72)
    01:49:23.099921 IP 10.254.0.10.53 > 10.10.12.2.52250: 20393 NXDomain 0/1/0 (165)
    

    nslookup抓包分析

    tcpdump host 10.254.0.10 -nnn 
    01:49:31.740858 IP 10.10.12.2.35727 > 10.254.0.10.53: 15055+ A? nodejs.default.svc.cluster.local.default.svc.cluster.local. (84)
    01:49:31.741433 IP 10.254.0.10.53 > 10.10.12.2.35727: 15055 NXDomain 0/1/0 (177)
    01:49:31.741670 IP 10.10.12.2.53645 > 10.254.0.10.53: 40936+ A? nodejs.default.svc.cluster.local.svc.cluster.local. (76)
    01:49:31.741986 IP 10.254.0.10.53 > 10.10.12.2.53645: 40936 NXDomain 0/1/0 (169)
    01:49:31.742326 IP 10.10.12.2.47267 > 10.254.0.10.53: 55514+ A? nodejs.default.svc.cluster.local.cluster.local. (72)
    01:49:31.742624 IP 10.254.0.10.53 > 10.10.12.2.47267: 55514 NXDomain 0/1/0 (165)
    01:49:31.742835 IP 10.10.12.2.49354 > 10.254.0.10.53: 22220+ A? nodejs.default.svc.cluster.local. (58)
    01:49:31.743119 IP 10.254.0.10.53 > 10.10.12.2.49354: 22220* 1/0/0 A 10.254.195.180 (74)
    

    分析发现nginx默认只会搜索一个cluster.local如果没有返回,则会报错,nslookup却会帮你尽可能的去尝试搜索所有域名,知道找到结果为止。

  • 相关阅读:
    后端返回文件前端实现下载功能
    Oracle 树操作(select…start with…connect by…prior)
    javascript异步加载的三种解决方案
    百度地图 异步加载
    jQuery中的siblings
    Jquery点击表格单位时选中其中的Radio的三个方法
    Oracle自增长ID
    Oracle修改时间报:ORA-01830: 日期格式图片在转换整个输入字符串之前结束的解决办法
    Oracle sqlldr导入导出txt数据文件详解
    SQL Server 2012大数据导入Oracle的解决方案
  • 原文地址:https://www.cnblogs.com/biglittleant/p/7463553.html
Copyright © 2020-2023  润新知