浏览 4119 次
锁定老帖子 主题:支持通配符的DNS代理
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2011-05-05
最后修改:2011-05-05
IPv6。我就python写了一个,支持IPv6,带缓存,源代码在这里,并不长,不到200行。
hosts文件可以手动配置一些域名的IP地址,它的优先级最高,有些网站的IP地址不能被正确的解析,这么情形在我国比较常见,可以直接在hosts文件直接指定网站的IP地址来解决。hosts文件的一个缺点是不支持通配符,要为所有的blogspot网站指定IP地址几乎不可能。解决办法就是在本地建个DNS代理服务器,它负责解析hosts文件中的通配符域名,有一些开源的dns服务器,比如bind和dnsmasq,bind主要是充当DNS服务器,我不清楚它是否支持代理功能,另外它太重了。dnsmasq支持代理,也很简单,但是却不支持用法:修改/etc/hosts,添加: 127.0.0.1 *.local 2404:6800:8005::62 *.blogspot.com 然后使用: sudo python dnsproxy.py -s 8.8.8.8 上面使用8.8.8.8(即google的DNS服务器)作为实际代理服务器。然后将本机的DNS服务器设置成127.0.0.1就可以了。 可以用dig来测试,例如: $ dig test.local $ dig test.blogspot.com p.s. 作为副产品,我还写了一个DNS包的解析器,源代码在这里,有兴趣的同学可以看一下。 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2011-06-09
这个不错……有没有支持正则表达式的?哈哈
|
|
返回顶楼 | |