我在我的游戏客户端使用libcurl来检查url的dns是否正常
在正常情况下,我可以得到" CURLE_COULDNT_RESOLVE_HOST (6)
" libcrul中的错误
但如果" DNS劫持",我将从IAP收到另一个错误网址。
因此,libcrul将获取错误网址内容并重新启动" curl_res==OK
"
它很糟糕,而不是我的结果。
所以,我试图获得响应DNS来劫持DNS劫持,
curl = curl_easy_init();
curl_easy_setopt(curl, CURLOPT_URL, urlStr);
curl_easy_setopt(curl, CURLOPT_TIMEOUT, 5);
curl_easy_setopt(curl, CURLOPT_FOLLOWLOCATION,1);
res = curl_easy_perform(curl);
curl_easy_getinfo(curl,CURLINFO_EFFECTIVE_URL,&response_url);
不幸的是,CURLINFO_EFFECTIVE_URL
与我的requeset网址相同,我不知道为什么?
所以,你能给我一些关于这个的想法吗?
答案 0 :(得分:0)
从libcurl的角度来看,这不是一个失败(如果后续转移本身也成功了)。它解析了一个名称并进行了转移,并且运行正常。
然后,您需要具有创造性,并找出一种方法来检测您是否被劫持者“欺骗”,例如从知道的主机名获取页面不应该存在。