Git Product home page Git Product logo

chinadns-python's Introduction

ChinaDNS-Python

PyPI version Build Status

Fix weird things with DNS in China.

ChinaDNS-C is more advanced and well maintained. Please use it instead.

Actually, I'm not working on the Python version anymore. New maintainers are welcome. Just send several pull requests and let me know. You can begin with some features that have already been implemented in ChinaDNS-C.

Install

Usage

Run sudo chinadns on your local machine. ChinaDNS creates a DNS server at 127.0.0.1:53.

Set your DNS to 127.0.0.1 and you're done.

$ nslookup www.youtube.com
Server:		127.0.0.1
Address:	127.0.0.1#53

Non-authoritative answer:
www.youtube.com	canonical name = youtube-ui.l.google.com.
youtube-ui.l.google.com	canonical name = youtube-ui-china.l.google.com.
Name:	youtube-ui-china.l.google.com
Address: 173.194.72.102
Name:	youtube-ui-china.l.google.com
Address: 173.194.72.101
Name:	youtube-ui-china.l.google.com
Address: 173.194.72.113
Name:	youtube-ui-china.l.google.com
Address: 173.194.72.100
Name:	youtube-ui-china.l.google.com
Address: 173.194.72.139
Name:	youtube-ui-china.l.google.com
Address: 173.194.72.138

Advanced

usage: chinadns [-h] [-b BIND_ADDR] [-p BIND_PORT] [-s DNS]

Forward DNS requests.

optional arguments:
  -h, --help            show this help message and exit
  -b BIND_ADDR, --local_address BIND_ADDR
                        address that listens, default: 127.0.0.1
  -p BIND_PORT, --local_port BIND_PORT
                        port that listens, default: 53
  -s DNS, --dns DNS     DNS server to use, default:
                        114.114.114.114,208.67.222.222,8.8.8.8

License

MIT

Bugs and Issues

Please visit Issue Tracker

Mailing list: http://groups.google.com/group/shadowsocks

chinadns-python's People

Contributors

cj1324 avatar clowwindy avatar reorx avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

chinadns-python's Issues

增加固定解析

能否增加一个配置文件 类似hosts的.可以用来解析一些内网ip....

TCP Only Support

单位的网络只能通过http代理上网,我用proxifier,只能转发tcp请求,udp无法转发。或者大神有没有什么建议?

windows版本无法使用

运行以后一个命令行窗口一闪而过,直接自己关闭了,进程里也没有

windows 7 x64

Windows 安装py版本出现错误

Microsoft Windows [版本 6.1.7601]
版权所有 (c) 2009 Microsoft Corporation。保留所有权利。

e:\Python27>python.exe E:\Python27\get-pip.py
Downloading/unpacking pip
Downloading/unpacking setuptools
Installing collected packages: pip, setuptools
Successfully installed pip setuptools
Cleaning up...

e:\Python27>pip install chinadns
Downloading/unpacking chinadns
Downloading chinadns-0.2.2.tar.gz
Running setup.py (path:c:\users\administrator\appdata\local\temp\pip_build_Administrator\chinadns\setup.py) egg_info for package chinadns

Downloading/unpacking shadowsocks>=2.2 (from chinadns)
Downloading shadowsocks-2.3.tar.gz
Running setup.py (path:c:\users\administrator\appdata\local\temp\pip_build_Administrator\shadowsocks\setup.py) egg_info for package shadowsocks

warning: manifest_maker: MANIFEST.in, line 1: 'recursive-include' expects <dir> <pattern1> <pattern2> ...

Installing collected packages: chinadns, shadowsocks
Running setup.py install for chinadns

Installing chinadns-script.py script to e:\Python27\Scripts
Installing chinadns.exe script to e:\Python27\Scripts

Could not find .egg-info directory in install record for chinadns
Cleaning up...
Exception:
Traceback (most recent call last):
File "e:\Python27\lib\site-packages\pip\basecommand.py", line 122, in main status = self.run(options, args)
File "e:\Python27\lib\site-packages\pip\commands\install.py", line 283, in run requirement_set.install(install_options, global_options, root=options.root_path)
File "e:\Python27\lib\site-packages\pip\req.py", line 1435, in install requirement.install(install_options, global_options, _args, *_kwargs)
File "e:\Python27\lib\site-packages\pip\req.py", line 749, in install os.remove(record_filename)
WindowsError: [Error 32] : 'c:\users\administrator\appdata\local\temp\pip-ttnp8i-record\install-record.txt'

Storing debug log for failure in C:\Users\Administrator\pip\pip.log

e:\Python27>

chinadns.c:537 sendto: Destination address required

我的启动选项是这样的
chinadns -l /etc/chinadns_iplist.txt -c /etc/chinadns_chnroute.txt -p 5353 -s 127.0.0.1,114.114.115.115,208.67.220.220:443, 8.8.4.4

然后 tail -f /var/log/chinadns.err.log 不断提示 chinadns.c:537 sendto: Destination address required

使用的版本:
OpenWRT: ChinaDNS-C_1.1.8_ar71xx.ipk

new bad ips

dig r1.googlevideo.com
'16.63.155.0',
'173.201.216.6',
'28.13.216.0',
'74.117.57.138',
'125.230.148.48',
'20.139.56.0',
'216.139.213.144',
'24.51.184.0',
'123.126.249.238',
'8.105.84.0',
'123.50.49.171',
'211.5.133.18',
'221.8.69.27',
'14.102.249.18',
'66.206.11.194',
'208.109.138.55',
'46.38.24.209',
'2.1.1.2',
'113.11.194.190',
'12.87.133.0',
'211.5.133.18',
'211.8.69.27',

windows下经常报错然后进程就挂了

win7 客户端版本号0.1.11

error:
2014-09-06 19:15:05 ERROR [Errno 10054]
2014-09-06 19:15:05 ERROR [Errno 10054]
2014-09-06 19:15:05 ERROR [Errno 10048] 通常每个套接字地址(协议/网络地址/端口
)
Traceback (most recent call last):
File "shadowsocks\eventloop.pyc", line 212, in run
File "dnsrelay.py", line 238, in handle_events
File "dnsrelay.py", line 173, in _handle_local
File "dnsrelay.py", line 156, in _rebuild_sockets
File "dnsrelay.py", line 148, in _create_sockets
File "socket.pyc", line 224, in meth
error: [Errno 10048] 通常每个套接字地址(协议/网络地址/端口)

iplist Update

作者你好.. = =
发现 gfw 针对 r*.googlevideo.com 增加了巨多的fake ip ,并且有些ip直接访问80是正常页面

通过 dig r2---sn-3v2upjvh-6pme.googlevideo.com @8.8.4.4 获得的部分ip如下
31.170.8.8,
54.68.166.130
173.192.219.59
46.137.219.7
108.168.250.3
201.77.211.143
67.137.227.11

Query via Shadowsocks

能够内建让dns在查询8.8.8.8的时候走shodowsocks从远端Server转发查询?

ChinaDNS的原理是?

ChinaDNS的原理是?我看到代码中有一个ip列表,如何保证这个列表的完整性呢?

程序运行可否最小化窗口

CHINADNS正在使用测试中。感谢你把它WINDOWS化了。我是WIN7 64位系统,目前运行正常。请教:除修改注册表外,可否将其最小化运行?桌面快捷方式添加 -d 的话,窗口一闪即没。进程中没有运行。

再次感谢你!

config.json 路径

请问 ChinaDNS 安装后 config.json 路径在哪儿,或者该创建在哪儿?
ChinaDNS 启动时指定 config.json 的命令怎么写?

还有,局域网搭建 ChinaDNS 服务器的建议以及相关参考资料。

谢谢!

可以添加一个类似于 hosts 的列表,来手动指定一些网站解析返回的 IP 吗?

我们学校很多网站都是内外网双线的,用学校的 DNS 解析返回的是内网地址,而在公共 DNS 上解析则是外网地址。

我在学校的一台服务器上部署了 ChinaDNS,但是由于 ChinaDNS 默认是向 8.8.8.8 请求解析,所以访问很多校外网站时会返回外网地址(比如镜像站...),给校园网的使用带来了一些不便。

可以添加一个类似于 hosts 的列表,来手动指定一些网站解析返回的 IP 吗?

Cannot start chinadns

I am running Python 2.7.6 on a Centos 6.3 server and have downloaded chinadns using pip and am receiving the following error when I try to run it:

Traceback (most recent call last):
  File "/usr/bin/chinadns", line 5, in <module>
     from pkg_resources import load_entry_point
ImportError: No module named pkg_resources

Any ideas?

Not stable in OpenWrt

我根据方案5配的 ChinaDNS + shadowsocks-libev-spec
发现运行不稳定, 经常无法获取到正确ip
我在路由器上 nslookup www.facebook.com 无法解析, 在我的ss服务器端可以
用ps看相关进程都在跑:
15655 nobody 964 S /usr/sbin/dnsmasq -C /var/etc/dnsmasq.conf
16241 root 1244 R /usr/sbin/dropbear -P /var/run/dropbear.1.pid -p 22
16242 root 1504 S -ash
16371 root 828 S /usr/bin/chinadns -p 5354 -s 114.114.114.114,127.0.0.1:5353 -l /etc/chinadns_iplist.txt -c /etc/chinadns_chnroute.txt
16495 root 3152 S /usr/bin/ss-redir -c /etc/shadowsocks/config.json
16497 root 2792 S /usr/bin/ss-tunnel -c /etc/shadowsocks/config.json -l 5353 -L 8.8.4.4:53 -u

有没有什么log或者debug步骤呢? 会不会是shadowsocks客户端有问题?

谢谢

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.