为什么我的linux服务器解析所有域(甚至是不存在的域)
目前,每个域名都解析为我的主服务器primary.example.com.所以例如,如果我ping randomdomain123.blah我得到:
PING primary.example.com` (1.2.3.4) 56(84) bytes of data. 但我期待’找不到主机’的错误. 最初我以为是因为我在/etc/resolv.conf中搜索了example.com.但是,删除ping之后,randomdomain123.blah仍然解析为我的主域.重新启动服务器也没有任何效果. 我在/ etc / hosts中没有指定任何内容. 从群集中的另一台服务器运行主机名会提供secondary.example.com. 我使用Route 53作为DNS提供商,相关的DNS似乎是: example.com. A 1.2.3.4 primary.example.com. A 1.2.3.4 *.primary.example.com. CNAME primary.example.com *.example.com. CNAME www.example.com www.example.com. CNAME primary.example.com 那么这是本地网络配置错误还是一些DNS问题? (或两者?) 更新:我想/需要通配符的原因是我运行了这个域的webapp,所以customer1.example.com等需要解析到这台机器,它需要是自动的 – 所以我想避免更改DNS每个新客户报名后. 更新2:我的/etc/resolv.conf目前如下(因为我注释掉了搜索行): ### Hetzner Online AG installimage # nameserver config nameserver 213.133.99.99 nameserver 213.133.100.100 nameserver 213.133.98.98 nameserver 2a01:4f8:0:a102::add:9999 nameserver 2a01:4f8:0:a0a1::add:1010 nameserver 2a01:4f8:0:a111::add:9898 # search example.com 更新3:运行dig randomdomain123.blah trace给出: ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.30.rc1.el6 <<>> randomdomain123.blah +trace ;; global options: +cmd ;; Received 12 bytes from 213.133.99.99#53(213.133.99.99) in 0 ms 更新4:我可以确认ping randomdomain123.blah.最后一个点给出: ping: unknown host randomdomain123.blah. 那么这是否意味着从这台机器上的Java应用程序,我需要附加点并使用像http://randomdomain123.blah./somepage.html这样的URL来生成HostNotFoundException? 解决方法
您的问题是/etc/resolv.conf中的搜索字段与您的*记录相结合.您提到您已尝试删除该设置.但事实证明,从/etc/resolv.conf中省略它并不意味着将关闭搜索功能.
如果/etc/resolv.conf不存在,搜索设置将默认为主机名中的域. 我不知道是否有官方方法可以完全禁用搜索功能,但这似乎有效: search . 或者,您可以将搜索指向没有*记录的域,其中可能包含一些其他记录以方便您使用.例如: search search.example.com 然后,您可以创建记录,例如server1.search.example.com,但不能创建* .search.example.com. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |