Chinese-specific configuration to improve your favorite DNS server

Overview

dnsmasq-china-list

Chinese-specific configuration to improve your favorite DNS server. Best partner for chnroutes.

  • Improve resolve speed for Chinese domains.

  • Get the best CDN node near you whenever possible, but don't compromise foreign CDN results so you also get best CDN node for your VPN at the same time.

  • Block ISP ads on NXDOMAIN result (like 114so).

Details

  • accelerated-domains.china.conf: General domains to be accelerated.

    These domains have a better resolving speed and/or result when using a Chinese DNS server.

    To determine if a domain is eligible, one of the criteria below must be met:

  • The domain's NS server is located in China mainland.

  • The domain will resolve to an IP located in China mainland when using a Chinese DNS server, but not always do when using a foreign DNS server (For example, CDN accelerated sites that have node in China). This however does not include those having node near China mainland, like in Japan, Hong Kong, Taiwan, etc.

Please don't add subdomains if the top domain is already in the list. This includes all .cn domains which are already matched by the /cn/ rule.

  • google.china.conf: Google domains to be accelerated.

    These domains are resolved to Google China servers when using a Chinese DNS. In most conditions this will yield better page load time for sites using Google's web services, e.g. Google Web Fonts and AdSense.

    Bear in mind that they are not considered stable. Use at your own risk.

  • apple.china.conf: Apple domains to be accelerated.

    Some ISPs (often smaller ones) have problem accessing Apple's assets using their China mainland CDN servers. Please consider remove this file if that happens to you. See #156 for some more info.

  • bogus-nxdomain.china.conf: Known addresses that are hijacking NXDOMAIN results returned by DNS servers.

Usage

Automatic Installation (recommended)

  1. Fetch the installer from github (or a mirror): wget https://raw.githubusercontent.com/felixonmars/dnsmasq-china-list/master/install.sh
  2. (Optional) Edit it to use your favorite DNS server and/or another mirror to download the list.
  3. Run it as root: sudo ./install.sh

You can save the installer and run it again to update the list regularly.

Manual Installation

  1. Place accelerated-domains.china.conf, bogus-nxdomain.china.conf (and optionally google.china.conf, apple.china.conf) under /etc/dnsmasq.d/ (Create the folder if it does not exist).
  2. Uncomment "conf-dir=/etc/dnsmasq.d" in /etc/dnsmasq.conf
  3. (Optional) Place dnsmasq-update-china-list into /usr/bin/
  4. (Optional) Make custom DNS server configuration and/or other services' configuration.
# change the default DNS server to 202.96.128.86
make SERVER=202.96.128.86 dnsmasq
# generate unbound's configuration
make unbound
# generate bind's configuration
make bind
# full example of generating dnscrypt-proxy forwarding rules for Windows
make SERVER=101.6.6.6 NEWLINE=DOS dnscrypt-proxy

License

Copyright © 2015 Felix Yan 
   
    
This work is free. You can redistribute it and/or modify it under the
terms of the Do What The Fuck You Want To Public License, Version 2,
as published by Sam Hocevar. See the LICENSE file for more details.

   
Owner
Felix Yan
Old-school Arch Linux Developer, Lame Python Programmer, a stupid cat. PGP Key: 0x786C63F330D7CB92
Felix Yan
Kubernates Config Manager

Kubernates Config Manager Sometimes we need manage more than one kubernates cluster at the same time. Switch cluster configs is a dangerous and troubl

周文阳 3 Jan 10, 2022
Config files for my GitHub profile.

Config files for my GitHub profile.

Lukas Sales 7 May 17, 2022
Sync any your configuration file to remote. Currently only support gist.

Sync your configuration to remote, such as vimrc. You can use EscSync to manage your configure of editor, shell, etc.

Me1onRind 0 Nov 21, 2022
Hydra is a framework for elegantly configuring complex applications

Python Decouple: Strict separation of settings from code Decouple helps you to organize your settings so that you can change parameters without having

Facebook Research 6.6k Jan 04, 2023
Yamale (ya·ma·lē) - A schema and validator for YAML.

Yamale (ya·ma·lē) ⚠️ Ensure that your schema definitions come from internal or trusted sources. Yamale does not protect against intentionally maliciou

23andMe 534 Dec 21, 2022
Configuration Management for Python ⚙

dynaconf - Configuration Management for Python. Features Inspired by the 12-factor application guide Settings management (default values, validation,

Bruno Rocha 2.8k Jan 06, 2023
A modern simfile parsing & editing library for Python 3

A modern simfile parsing & editing library for Python 3

ash garcia 38 Nov 01, 2022
A helper for organizing Django project settings by relying on well established programming patterns.

django-configurations django-configurations eases Django project configuration by relying on the composability of Python classes. It extends the notio

Jazzband 955 Jan 05, 2023
Django-environ allows you to utilize 12factor inspired environment variables to configure your Django application.

Django-environ django-environ allows you to use Twelve-factor methodology to configure your Django application with environment variables. import envi

Daniele Faraglia 2.7k Jan 03, 2023
A compact library for Python 3.10x that allows users to configure their SimPads real-time

SimpadLib v1.0.6 What is this? This is a python library programmed by Ashe Muller that allows users to interface directly with their SimPad devices, a

Ashe Muller 2 Jan 08, 2022
A Python library to parse PARI/GP configuration and header files

pari-utils A Python library to parse PARI/GP configuration and header files. This is mainly used in the code generation of https://github.com/sagemath

Sage Mathematical Software System 3 Sep 18, 2022
Flexible Python configuration system. The last one you will ever need.

OmegaConf Description Project Code quality Docs and support OmegaConf is a hierarchical configuration system, with support for merging configurations

Omry Yadan 1.4k Jan 02, 2023
Simple dataclasses configuration management for Python with hocon/json/yaml/properties/env-vars/dict support.

Simple dataclasses configuration management for Python with hocon/json/yaml/properties/env-vars/dict support, based on awesome and lightweight pyhocon parsing library.

Teo Stocco 62 Dec 23, 2022
A small example project for efficiently configuring a Python application with YAMLs and the CLI

Hydra Example Project for Python A small example project for efficiently configuring a Python application with YAMLs and the CLI. Why should I care? A

Florian Wilhelm 4 Dec 31, 2022
Pyleri is an easy-to-use parser created for SiriDB

Python Left-Right Parser Pyleri is an easy-to-use parser created for SiriDB. We first used lrparsing and wrote jsleri for auto-completion and suggesti

Cesbit 106 Dec 06, 2022
Tools to assist with the configuration and maintenance of fapolicyd.

Tools to assist with the configuration and maintenance of fapolicyd.

Concurrent Technologies Corporation (CTC) 7 Dec 27, 2022
Read configuration settings from python configuration files.

Maison Read configuration settings from python configuration files. Motivation When developing a python application, e.g a command-line tool, it can b

9 Jan 04, 2023
A set of Python scripts and notebooks to help administer and configure Workforce projects.

Workforce Scripts A set of Python scripts and notebooks to help administer and configure Workforce projects. Notebooks Several example Jupyter noteboo

Esri 75 Sep 09, 2022
Event Coding for the HV Protocol MEG datasets

Scripts for QA and trigger preprocessing of NIMH HV Protocol Install pip install git+https://github.com/nih-megcore/hv_proc Usage hv_process.py will

2 Nov 14, 2022
filetailor is a peer-based configuration management utility for plain-text files such as dotfiles.

filetailor filetailor is a peer-based configuration management utility for plain-text files (and directories) such as dotfiles. Files are backed up to

5 Dec 23, 2022