1
freestyler 2012-03-13 10:14:47 +08:00
标准库不是有嘛..
getaddrinfo gethostbyname |
2
phuslu OP @freestyler 这个函数可以指定dnsserver, 用来防止dns劫持。
|
3
bhuztez 2012-03-13 10:40:00 +08:00
推荐 dnspython http://www.dnspython.org/
|
4
phuslu OP @bhuztez 这段代码是从最新版的goagent摘出来的,好处就不用引入额外的依赖。比较适合goagent对多平台支持的需求。
其实我觉得gevent的dns解析函数更好用,推荐一下。 可以看下这个链接的评论 http://blog.gevent.org/2011/04/28/libev-and-libevent/ |
5
liruqi 2012-03-13 11:10:02 +08:00
1. 拜托把几个import 写一下..
2. 有些query 仅返回 cname, 可能需要递归查询, 不知道是否有处理. 3. 我自己测试发现这个函数执行时间很长啊 4. 给一个西厢代理初始版本的代码 https://gist.github.com/2026329 也是自己实现的dns query, 大体上来讲, 还是不如第三方库稳定. |
6
phuslu OP @liruqi
1. 恩,加上了。 2. 这个就依赖具体的host和dnsserver了,在goagent还可以用hosts机制事前指定 3. 是走的tcp,goagent不过在上层做了cache,和本身的Host机制结合很好。 4. 恩,谢谢。 |
7
phuslu OP 目前的话,dns查询走tcp还是一个比较不错的办法。因为不会有dns投毒了。
虽然比udp慢些,但是一旦上层做了缓存,那么函数本身的效率就可以忽略了。 |
8
monkeylyf 2012-10-02 00:50:33 +08:00
mark学习之. 之前用adns module写过一个.
|
9
Livid MOD |
10
liruqi 2012-10-02 01:26:05 +08:00
样式略有错乱。
宽屏下可以考虑把页面宽度放大。 |
11
clowwindy 2012-10-02 09:16:54 +08:00
谢谢分享。gethostbyname 万恶的地方就在于它是阻塞的。
|
13
ayanamist 2012-10-03 15:30:26 +08:00
楼主,try finally里是可以没有except的……你不想处理,就去掉那无用的except Exception吧……
发现你很喜欢写except: xxx这样的代码,哪怕实际上不需要。 |
14
ccp0101 2012-10-03 22:15:08 +08:00
@liruqi 最近实现的Kernet替代,可以看看否? https://github.com/ccp0101/west-chamber-mac
|
18
asanailiulang 2013-06-20 09:37:51 +08:00
试了一下,其他的DNS服务器好像不支持~~
|