一个用 Go 写的 HttpDns 服务, 为了抵抗运营商邪恶的 DNS 劫持污染,并带有缓存功能 。
cd $GOPATH;
git clone http://github.com/zheng-ji/goHttpDns;
cd src;
make
# redis connect config
redis:
host: 127.0.0.1:6379
db: 0
# seelog config
log_config: ../etc/logger.xml
# ip & port & answer cache TTL
listen: 0.0.0.0
port: 9999
ttl: 100
# DnsServer lists
dnsservers:
- 202.96.128.86
- 202.96.128.166
- 8.8.8.8
- 8.8.4.4
执行 make
操作后,在bin
目录下就会生成 可执行文件 httpDns
zj@zheng-ji:$ ./httpDns --help
Usage of ./httpDns:
-c="../etc/conf.yml": conf file , default is ../etc/conf.yml
./httpDns -c="your_conf_yaml_path"
You can also use supervisor to start your sever
$ curl http://127.0.0.1:9999/d?url=http://zheng-ji.info
Resp:
{
"c":0,
"targetip":"http://106.185.48.24",
"host":"zheng-ji.info",
"msg":""
}
Thanks to:
* [launchpad/goyaml]( https://launchpad.net/goyaml )
* [cihub/seelog](github.com/cihub/seelog )
* [miekg/dns](github.com/miekg/dns )
* [redisgo/redis](github.com/garyburd/redigo/redis")
* [hoisie/web](github.com/hoisie/web )
我们需要go get
以上包
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.