目前每个域名parsing到我的主服务器, primary.example.com 。 所以例如,如果我ping randomdomain123.blah我得到:
PING primary.example.com` (1.2.3.4) 56(84) bytes of data.
但我期待一个“主机未find”的错误。
最初我以为是因为我在/etc/resolv.conf search example.com 。 但是,删除后ping的randomdomain123.blah仍然解决了我的主要领域。 重新启动服务器也没有效果。
我没有在/etc/hosts指定任何东西。
从集群中的另一台服务器运行hostname可以获得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
那么这是一个本地networkingconfiguration错误或一些DNS问题? (或两者?)
更新:我想/需要一个通配符的原因是,我运行这个域的webapp,所以customer1.example.com等需要解决这台机器,它需要是自动的 – 所以我想避免必须更改DNS每个新客户注册后。
更新2:我的/etc/resolv.conf目前如下(因为我注释了search行):
### 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的search字段与你的*logging结合在一起。 您提到您已经尝试删除该设置。 但事实certificate,从/etc/resolv.conf中省略它并不意味着searchfunction将被closures。
如果缺less/etc/resolv.conf则search设置将默认为您主机名的域。
我不知道是否有官方的方式来完全禁用searchfunction,但这似乎工作:
search .
或者,您可以将您的search指向没有*logging的域,为了您的方便,它可能包含一些其他logging。 例如:
search search.example.com
然后,您可以创buildlogging,例如server1.search.example.com而不是*.search.example.com 。
看起来你已经configuration了一个通配符DNSlogging,这就是所谓的捕获所有的configuration:* .example.com是CNAME到www.example.com,而CNAME是primary.example.com,然后重新调整到1.2。 3.4
这不是一个非常理智的设置,请参阅: http : //en.wikipedia.org/wiki/Wildcard_DNS_record 。