使用libevent建立连接,奇怪的是发送的DNS请求是针对主机" WWw.yahoo.COM"。以下是导致它的代码段。
struct evhttp_connection * evcon = evhttp_connection_base_bufferevent_new(
base, dns_base, bev, "www.yahoo.com", port);
它似乎不会对我的应用程序造成任何问题,只是想知道为什么libevent需要混淆案例。
感谢。
答案 0 :(得分:2)
这是一项安全功能。
随机化的情况下:INT 如果非零,我们会在传出的DNS请求中随机化该案例,并确保回复与我们的请求具有相同的大小写。这个所谓的" 0x20 hack"可以帮助防止一些针对DNS的简单活动事件。默认为1。
http://www.wangafu.net/~nickm/libevent-book/Ref9_dns.html
如果您愿意,可以使用以下方法禁用它:
evdns_base_set_option(base, "randomize-case", "0");