nslookup
为这些查询返回不同的答案:
nslookup my.example.com
nslookup http://my.example.com
我有点困惑,因为对于http
,我希望它返回NXDOMAIN
错误。如果没有http
,它返回一个普通的IP。
但是,这是我困惑的根源,形式nslookup http://my.example.com
似乎正在返回我实际上期望看到的cname和ip。
nslookup http://my.example.com
的输出$ nslookup http://my.example.com
Server: 172.17.0.2
Address: 172.17.0.2#53
Non-authoritative answer:
http://my.example.com canonical name = www.example.prod.us.onehippo.com.
www.example.prod.us.onehippo.com canonical name = example.hosting.us.onehippo.com.
Name: example.hosting.us.onehippo.com
Address: my ip
我困惑。http
不应该nslookup
返回一个错误?如果没有,那么为什么http
和没有http
的答案是不同的?
http://my
和my
是不同的字符串,所以它们可以有不同的解析行为。http://my
不特殊,不做任何修改,直接通过DNS。在您的情况下,它可能是由通配符匹配的,而my
不是通配符。
Nslookup需要一个域名,而不是url。url包含协议(http
)、域名(my.example.com
)、路径(/something
)和查询字符串(?a=1&b=2
)。在你的例子中,你只需要传递my.example.com
给nslookup。传递url在nslookup中有未定义的行为。
在任何情况下,如果你不想被这种区别所困扰,你可以使用https://www.nslookup.io,它可以对域名,url和电子邮件地址进行DNS查找。