使用自定义代理访问 blogspot
来源:互联网 发布:防红域名生成 编辑:程序博客网 时间:2024/04/20 08:13
blogspot 因为ip被禁止访问所以没法连接,可以使用另一IP, 对于特定的域名可以修改 host, 文件, 但对于任意的blogspot 站点,最方便的办法是自己控制dns,
下面是一个使用 twisted 写的 dns, 可以根据需要修改 dns的指向
from twisted.internet.protocol import Factory, Protocol
from twisted.internet import reactor
from twisted.names import client, server, dns
import socket
matchdb={"blogspot.com":"72.14.207.190",
#"farm1.static.flickr.com":"68.142.232.116",
#"farm1.static.flickr.com":"127.0.0.1",
#"farm2.static.flickr.com":"69.147.90.156",
#"zh.wikipedia.org":"145.97.39.132",
}
class SpelDnsReolver(client.Resolver):
def filterAnswers(self, message):
name = str(message.queries[0].name).lower()
print name
if message.trunc:
return self.queryTCP(message.queries).addCallback(self.filterAnswers)
else:
if(len(message.answers) == 0):
if matchdb.has_key(name):
pass
else:
return self.queryUDP(message.queries).addCallback(self.filterAnswers)
for e in matchdb:
if name.find(e)>-1:
for ans in message.answers:
if ans.type == 1:
print e, ans.payload.dottedQuad(),"-->", matchdb[e]
ans.payload.address = socket.inet_aton(matchdb[e])
break
return (message.answers, message.authority, message.additional)
verbosity = 0
resolver = SpelDnsReolver(servers=[('219.141.140.10', 53)])
f = server.DNSServerFactory(clients=[resolver], verbose=verbosity)
p = dns.DNSDatagramProtocol(f)
f.noisy = p.noisy = verbosity
reactor.listenUDP(53, p)
reactor.listenTCP(53, f)
reactor.run()
from twisted.internet import reactor
from twisted.names import client, server, dns
import socket
matchdb={"blogspot.com":"72.14.207.190",
#"farm1.static.flickr.com":"68.142.232.116",
#"farm1.static.flickr.com":"127.0.0.1",
#"farm2.static.flickr.com":"69.147.90.156",
#"zh.wikipedia.org":"145.97.39.132",
}
class SpelDnsReolver(client.Resolver):
def filterAnswers(self, message):
name = str(message.queries[0].name).lower()
print name
if message.trunc:
return self.queryTCP(message.queries).addCallback(self.filterAnswers)
else:
if(len(message.answers) == 0):
if matchdb.has_key(name):
pass
else:
return self.queryUDP(message.queries).addCallback(self.filterAnswers)
for e in matchdb:
if name.find(e)>-1:
for ans in message.answers:
if ans.type == 1:
print e, ans.payload.dottedQuad(),"-->", matchdb[e]
ans.payload.address = socket.inet_aton(matchdb[e])
break
return (message.answers, message.authority, message.additional)
verbosity = 0
resolver = SpelDnsReolver(servers=[('219.141.140.10', 53)])
f = server.DNSServerFactory(clients=[resolver], verbose=verbosity)
p = dns.DNSDatagramProtocol(f)
f.noisy = p.noisy = verbosity
reactor.listenUDP(53, p)
reactor.listenTCP(53, f)
reactor.run()
使用时,先修改 dns 为本机, 可以使用以下语法
netsh interface IP set dns "本地连接" static 192.168.1.123
用完后, 可以再修改回来 可以写成下面的批处理 netsh interface IP set dns "本地连接" static 192.168.1.102
pydns.py
netsh interface IP set dns "本地连接" static 219.141.140.10
需要时直接运行就可以, 终止时按 Ctrl+C, 选N
- 使用自定义代理访问 blogspot
- 简单设置浏览器代理的可以设置访问blogspot了
- blogspot.com不能访问
- 修改host文件访问BlogSpot
- 访问 blogspot 的一种办法
- 客户端使用自定义代理类访问WCF服务
- 客户端使用自定义代理类访问WCF服务
- cxGrid使用经验记录(本来放在blogspot,无奈现在不能访问)
- 关于Google的BlogSpot Blog不能访问
- 在国内访问Blogspot的方法
- 解决BlogSpot不能访问的方法
- 使用代理访问web
- python3 使用代理访问
- 使用CInternetSession代理访问HTTP
- java使用代理访问网络
- java使用代理访问网络
- java使用代理访问网络
- java使用代理访问网络
- 让XP系统性能更优越的四招
- 关机时提示应用程序初始化失败
- 当前安全设置不允许下载该文件 完美解决方案
- XP共享其实很简单!
- 如何让win XP实现自动登陆
- 使用自定义代理访问 blogspot
- 顺网网维大师(ICafe)平台安装说明
- Win2000的优化
- 诸葛亮的"职业规划"
- 请教:关于Stringgird和combobox的关联
- mysql 海量查询
- 博客开张
- 照片
- 自我管理--转变职业生涯