根域名服务器这种 DNS,返回的解析结果是有固定特征的:
1. Authority 字段的长度大于 0 ;
2. Answer 字段的长度等于 0 ;
3. 返回的解析结果类型是 NS 记录。
这三点如果有一点不符合,基本确定域名被污染。
所以先把请求发送到根服务器然后判断返回结果再进行分流即可。
这个是我用这个方法写的一个简单的程序:
1. Authority 字段的长度大于 0 ;
2. Answer 字段的长度等于 0 ;
3. 返回的解析结果类型是 NS 记录。
这三点如果有一点不符合,基本确定域名被污染。
所以先把请求发送到根服务器然后判断返回结果再进行分流即可。
这个是我用这个方法写的一个简单的程序: