Just another script to auto-generate dnsmasq ipset rules using gfwlist
Python
Latest commit 178d569 Jan 17, 2017 @cokebar committed on GitHub Update README.md
Permalink
Failed to load latest commit information.
.gitignore ignore *.conf May 2, 2016
LICENSE Initial commit Feb 14, 2015
README.md Update README.md Jan 17, 2017
gfwlist2dnsmasq.py add korea domain for google Apr 17, 2016
gfwlist2dnsmasq_noipset.py fix skip ip address May 2, 2016

README.md

gfwlist2dnsmasq

Intro

Just another script to auto-generate dnsmasq ipset rules using gfwlist

Notification: This repo will not be maintained anymore. You can fork this repo and modify it by yourself

Notification: Need python2, do not use python3

GFWList is composed by regular expressions, but dnsmasq rules is formed by domain names. So the conversion from GFWList to dnsmasq rule list is not a equivalent conversion. You might need to add extra rules or modify some converted rules.

Using:

Modify gfwlist2dnsmasq.py:

Change this to your DNS server IP&port:

mydnsip = '127.0.0.1'
mydnsport = '5353'

Change this to your ipset name:

ipsetname = 'gfwlist'

Path to save you rule file:

rulefile = './dnsmasq_list.conf'

Add your own extra domain here. One domain in a line. eg:

EX_DOMAIN=[ \
'.google.com', \
'.google.com.hk', \
'.google.com.tw', \
'.google.com.sg', \
'.google.co.jp', \
'.google.co.kr', \
'.blogspot.com', \
'.blogspot.sg', \
'.blogspot.hk', \
'.blogspot.jp', \
'.blogspot.kr', \
'.gvt1.com', \
'.gvt2.com', \
'.gvt3.com', \
'.1e100.net', \
'.blogspot.tw' \
]

Then run gfwlist2dnsmasq.py:

python gfwlist2dnsmasq.py

If you don't want to generate the rules by yourself, you can download the rule file from:

https://github.com/cokebar/gfwlist2dnsmasq/releases