`
marlonyao
  • 浏览: 252964 次
  • 性别: 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文件中,我们可以手动添加一对一的域名与IP地址映射,但这种方式存在局限性,不支持通配符或正则表达式。DNS代理软件则弥补了这一不足,提供更高级的功能,允许用户设置更为复杂的匹配规则,例如使用...

    SANGFOR_AD_v3.0_DNS代理前置调度策略配置专题.pdf

    5. **添加规则**:在这里,用户可以根据需求添加新的调度策略,如设定特定的子网或IP段为内网用户,指定特定域名(支持通配符?或*号),并指定解析请求应转发的DNS服务器地址。 **注意事项** 在配置过程中,有几...

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

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

    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 ...

    SSRF bible. Cheatsheet

    因为攻击者可以使用服务器作为代理来与内部或互联网上的其他服务交互,所以SSRF漏洞可以被用来进行进一步的内部网络渗透。文档的目的是为安全研究人员、渗透测试人员或安全顾问提供一个实用的资源,让他们更好地理解...

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

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

    Linux笔试复习题.docx

    5. 网络管理三部分:网络管理通常由管理、通信和代理三个部分组成,其中管理部分是核心,负责制定策略和执行操作。 6. 系统管理员职责:系统管理员的职责广泛,包括系统资源管理、系统性能管理、设备管理、安全管理...

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

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

    Linux面试题与答案

    - DNS(Domain Name System)是一种将易于记忆的域名转换为计算机可识别的IP地址的系统。 - 它允许用户通过域名来访问网站或服务。 #### 31. Apache的作用是提供Web服务 - Apache是最常用的Web服务器软件之一。 - ...

    na小技巧

    5. **网络优化**:对于网络相关的技巧,如了解DNS解析、使用代理服务器和端口转发,可以帮助解决网络访问问题。同时,学会使用curl或wget工具进行数据抓取,也是网络调试和自动化的好帮手。 6. **数据处理与分析**...

    nginx 服务绑定域名的方法

    除了完全匹配外,Nginx还支持通配符来简化域名配置。使用以*为通配符开始或结束的字符串,可以匹配特定的前缀或后缀。比如: ```nginx server_name *.***; ``` 这将匹配所有以***结尾的域名。 同样,也可以使用以*...

    tr369协议 TR-369a2 – User Services Platform (USP)

    - **WebSocket绑定**、**STOMP绑定**和**MQTT绑定**:用于实际的数据传输,提供了不同类型的网络连接支持。 5. **消息编码**: - **参数和参数值编码**:规定了如何将数据转换为适合传输的格式。 6. **端到端...

    asp.net core二级域名实现.zip

    如果你的应用需要支持HTTPS,需要为每个二级域名获取单独的SSL证书,或者使用通配符证书来覆盖所有二级域名。在ASP.NET Core中,可以使用Kestrel服务器的`UseHttps`方法配置证书。 6. **跨域问题** 如果你的二级...

    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 ...

    互联网大厂超全前端面经汇总

    - **代理服务器**:例如使用Nginx或Node.js作为反向代理,通过配置转发请求到目标服务器,绕过浏览器的同源策略。 - **WebSocket**:建立长连接,绕过同源策略,实现跨域通信。 - **PostMessage API**:实现多窗口、...

Global site tag (gtag.js) - Google Analytics