`
marlonyao
  • 浏览: 248607 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

支持通配符的DNS代理

阅读更多
hosts文件可以手动配置一些域名的IP地址,它的优先级最高,有些网站的IP地址不能被正确的解析,这么情形在我国比较常见,可以直接在hosts文件直接指定网站的IP地址来解决。hosts文件的一个缺点是不支持通配符,要为所有的blogspot网站指定IP地址几乎不可能。解决办法就是在本地建个DNS代理服务器,它负责解析hosts文件中的通配符域名,有一些开源的dns服务器,比如bind和dnsmasq,bind主要是充当DNS服务器,我不清楚它是否支持代理功能,另外它太重了。dnsmasq支持代理,也很简单,但是却不支持IPv6。我就python写了一个,支持IPv6,带缓存,源代码在这里,并不长,不到200行。

用法:修改/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包的解析器,源代码在这里,有兴趣的同学可以看一下。
分享到:
评论
2 楼 warriorpaw 2011-10-08  
win环境下没有socket.inet_pton()方法,蛋疼啊
1 楼 szcjlssx 2011-06-09  
这个不错……有没有支持正则表达式的?哈哈

相关推荐

    DNS代理 DnS服务器 高级host文件

    我们在用host的进行Dns重定位的时候有时候不够用,不能使用通配符而合正则表达式等。使用这个软件可以解决。

    Acrylic:Windows的本地DNS代理-开源

    Acrylic是Windows的本地DNS代理,可通过缓存来自DNS服务器的响应来提高计算机的性能,并通过使用自定义的HOSTS文件(针对处理成千上万个域名进行了优化)来帮助您抵抗有害的广告。支持通配符和正则表达式。

    不错的代理服务器软件

    5、通过代理服务器解析 DNS 名称。 6、灵活的代理规则,对于主机名和应用程序名称可使用通配符。 7、通过隐藏您的 IP 地址的获得安全隐私。 8、通过代理服务器链来工作,可使用不同的协议。 9、查看当前网络活动的...

    akari:TLS终止代理

    Cloudflare,DNSPod,Aliyun或任何其他支持DNS API发行通配符证书的提供商。 2.2通配符证书 请参考 2.3虚拟专用服务器 ... 建议使用带有AES和AVX2指令集的VPS。 3.配置 3.1服务器 服务器侦听一个公共地址,并根据...

    marlon-tools:马龙工具

    一个简单的DNS代理服务器,支持通配符主机,IPv6,缓存。 指示: 1. Edit /etc/hosts, add: 127.0.0.1 *.local -2404:6800:8005::62 *.blogspot.com 2. startup dnsproxy (here using Google DNS server as ...

    Proxifier 3.42 汉化版

    5、通过代理服务器解析 DNS 名称。 6、灵活的代理规则,对于主机名和应用程序名称可使用通配符。 7、通过隐藏您的 IP 地址的获得安全隐私。 8、通过代理服务器链来工作,可使用不同的协议。 9、查看当前网络活动的...

    nl.scanno.mqtt

    设置页面包含: 使用HiveMQ公共经纪人的选项要连接的代理的IP地址或DNS名称要连接的端口号。 使用安全会话(TLS)的选项。 不支持自签名证书。 如果是自签名证书,则可以绕过证书检查代理连接的用户标识用于代理...

    邮件服务器:UNMAINTAINED-使用Docker的简单而功能齐全的邮件服务器

    从外部IMAP / POP3服务器将电子邮件提取到本地邮箱Rainloop :基于Web的电子邮件客户端Postfixadmin :基于Web的管理界面Unbound :具有DNSSEC支持的递归缓存DNS解析器NSD :具有DNSSEC支持的权威DNS服务器Træfik ...

    奖励:Reward是瑞士军刀CLI实用程序,用于编排基于Docker的开发环境

    奖励使用Go编写,并且支持Linux,macOS和Windows。 奖励的灵感来自守望者。 有关更多信息,请参见“确认”部分。 奖励是在的主持下创建的。产品特点Traefik用于SSL终止并将请求路由/代理到正确的容器中。 Portainer...

    warden:Warden是一个CLI实用程序,用于编排基于Docker的开发人员环境

    Dnsmasq为.test域提供DNS响应,从而无需手动编辑/etc/hosts SSH隧道,用于从Sequel Pro或TablePlus连接到多个正在运行的数据库容器中的任何一个。 Warden颁发了通配符SSL证书,以便在所有本地开发域上运行https。...

    LINUX操作系统(电子教案,参考答案)

    15.2.2 Linux下的邮件用户代理 242 15.3 mail命令 242 15.4 建立Linux下的邮件服务器 247 15.4.1 sendmail的复杂性 247 15.4.2 sendmail的组成结构和原理 247 15.4.3 编译和配置sendmail 251 15.4.4 技巧和提示 253 ...

Global site tag (gtag.js) - Google Analytics