{"id":13775594,"url":"https://github.com/dowsnature/dowsdns","last_synced_at":"2025-05-11T08:32:34.309Z","repository":{"id":55193312,"uuid":"77692434","full_name":"dowsnature/dowsDNS","owner":"dowsnature","description":"快速翻跃中国防火墙","archived":false,"fork":false,"pushed_at":"2018-10-05T17:27:08.000Z","size":1737,"stargazers_count":1149,"open_issues_count":17,"forks_count":268,"subscribers_count":99,"default_branch":"beta","last_synced_at":"2024-10-26T11:33:41.269Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dowsnature.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2016-12-30T14:56:22.000Z","updated_at":"2024-10-25T15:48:50.000Z","dependencies_parsed_at":"2022-08-14T15:40:55.685Z","dependency_job_id":null,"html_url":"https://github.com/dowsnature/dowsDNS","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dowsnature%2FdowsDNS","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dowsnature%2FdowsDNS/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dowsnature%2FdowsDNS/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dowsnature%2FdowsDNS/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dowsnature","download_url":"https://codeload.github.com/dowsnature/dowsDNS/tar.gz/refs/heads/beta","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":225027461,"owners_count":17409440,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-03T17:01:42.184Z","updated_at":"2024-11-17T10:31:39.198Z","avatar_url":"https://github.com/dowsnature.png","language":"Python","funding_links":[],"categories":["\u003ca id=\"af9d2b4988d35a2a634c042a1c66bb8c\"\u003e\u003c/a\u003e工具"],"sub_categories":["\u003ca id=\"6e28befd418dc5b22fb3fd234db322d3\"\u003e\u003c/a\u003e翻墙"],"readme":"\n# dowsDNS\n特性：\n* 支持hosts文件（过滤广告，还有其他美好的事情）\n* 支持泛解析（指向sni服务器，有美好的事情发生）\n* 支持edns-client-subnet（解析到服务器与你最近）\n* 可作为小型DNS公共服务器，也可以作为本机DNS服务\n\n如果提供服务对象不同，需要修改`conf/config.json` 中的  `Public_Server`的值\n\n`False` 代表监听的是本机局域网IP来使用\n\n`True` 代表监听公网IP来使用\n\n如果填写不当，会造成`edns-client-subnet`失效。\n\n\n![](https://img.shields.io/badge/Platform-Windows%20Mac%20linux-blue.svg)\n![dnslib 0.9.7](https://img.shields.io/badge/Dependency-dnslib%200.9.7-blue.svg)\n![](https://img.shields.io/badge/Environment-Python2.7%20%7C%20Python3.4-blue.svg)\n\n# 测试\n\n![](https://img.shields.io/badge/Python2.7-测试通过-brightgreen.svg)\n![](https://img.shields.io/badge/Python3.4-测试通过-brightgreen.svg)\n![](https://img.shields.io/badge/Python3.5-测试通过-brightgreen.svg)\n![](https://img.shields.io/badge/Python3.6-测试通过-brightgreen.svg)\n\n# Linux \n\n## 本机使用\n### 更改 DNS 域名服务器\n1. 将 `conf/config.json 中的 Local_dns_server` 的值改为电脑的 `127.0.0.1`\n\n2. 在 `/etc/resolvconf/resolv.conf.d/base` 里添加 `nameserver 127.0.0.1`\n\n3. `sudo resolvconf -u`\n\n4. `sudo systemctl restart network-manager.service`\n\n### 启动\n\n* `sudo python start.py`\n\n### 更新\n\n* `python update.py`\n\n## 局域网共享使用\n\n1. 将 `conf/config.json` 中的 `Local_dns_server` 的值改为电脑的 ip\n\n2. `firewall-cmd –add-port=53/udp      –permanent`\n\n3. `sudo python start.py`\n\n4. 同一局域网下，把其他设备 DNS 改为 运行程序的电脑本地 IP 即可\n\n## 通用方法\n\n1. 将 `conf/config.json` 中的 `Local_dns_server` 的值改为电脑的 `0.0.0.0`\n\n2. `firewall-cmd –add-port=53/udp      –permanent`\n\n3. 在 `/etc/NetworkManager/NetworkManager.conf` 中的 `dns=dnsmasq` 前面加 #\n\n4. 在 `/etc/resolvconf/resolv.conf.d/base` 里添加 `nameserver 127.0.0.1`\n\n5. `sudo resolvconf -u`\n\n6. `sudo systemctl restart network-manager.service`\n\n7. 重启电脑\n\n8. 同一局域网下，把其他设备或本机的 DNS 改为 运行程序的电脑本地 IP 即可\n\n# Mac \n\n1. `sudo python start.py`\n\n2. 将DNS服务器改为 127.0.0.1\n\n3. 重启网络服务和浏览器即可\n\n* 更新hosts：`python update.py`\n\n# Windows\n\n## 启动\n\n1. 将命令行切换到当前目录\n\n2. `python start.py`\n\n## 更新\n\n* `python update.py`\n\n# 数据引用\n\n* https://pypi.python.org/pypi/dnslib\n\n* https://github.com/racaljk/hosts\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdowsnature%2Fdowsdns","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdowsnature%2Fdowsdns","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdowsnature%2Fdowsdns/lists"}